Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[META] Breaking changes in 3.0 #3351

Open
13 of 23 tasks
reta opened this issue May 17, 2022 · 15 comments
Open
13 of 23 tasks

[META] Breaking changes in 3.0 #3351

reta opened this issue May 17, 2022 · 15 comments
Labels
>breaking Identifies a breaking change. Meta Meta issue, not directly linked to a PR v3.0.0 Issues and PRs related to version 3.0.0

Comments

@reta
Copy link
Collaborator

reta commented May 17, 2022

This is a meta issue which lists down all breaking changes in OpenSearch 3.0

Major updates:

Breaking behavior in 3.0+:

Removed code in 3.0+

Newly deprecated code in 3.0+

Misc

@reta reta added Meta Meta issue, not directly linked to a PR >breaking Identifies a breaking change. v3.0.0 Issues and PRs related to version 3.0.0 labels May 17, 2022
@reta
Copy link
Collaborator Author

reta commented May 17, 2022

@saratvemulapalli fyi, meta for 3.0 breaking changes, thanks!

@saratvemulapalli
Copy link
Member

@CEHENKLE could you help add this to 3.0 roadmap?

@CEHENKLE
Copy link
Member

Done.

@saratvemulapalli
Copy link
Member

saratvemulapalli commented Feb 2, 2023

Looks like this is getting stale.
@andrross /@reta do you think we can use Changelog for this ?

@reta
Copy link
Collaborator Author

reta commented Feb 2, 2023

@andrross /@reta do you think we can use Changelog for this ?

We probably would have to, but what are other breaking changes to mention? I think @nknize is doing some large refactorings but so far I think it was non breaking.

@andrross
Copy link
Member

andrross commented Jun 6, 2023

I did some searching and couldn't find any open issues, but we have deprecation warning about blocking direct access to system indices. @reta is implementing the block for direct access to system indices something we should track for 3.0?

This came up in discussion in #7778.

@reta
Copy link
Collaborator Author

reta commented Jun 6, 2023

@andrross I think we should track it, thanks!

@andrross
Copy link
Member

andrross commented Jun 6, 2023

Created issue #7936 and added to the list here. Thanks!

@msfroh
Copy link
Collaborator

msfroh commented Jun 5, 2024

@reta -- is this a good place to build a wishlist for breaking changes in 3.0? Do you know if we have an existing good place to do that?

(For example, #1029 is a longstanding issue that would be nice to address in a 3.0 release, since otherwise I think it would need to wait for 4.0. I don't want to clutter up this issue with more wishlist items, but that one would be near the top of my list.)

@reta
Copy link
Collaborator Author

reta commented Jun 5, 2024

@reta -- is this a good place to build a wishlist for breaking changes in 3.0? Do you know if we have an existing good place to do that?

@msfroh I think this is the designated place for breaking changes which are going to be in 3.0, regarding wishlist - I don't think we have any lists for that besides targeting issues / pull requests as v3.0.0

@jed326
Copy link
Collaborator

jed326 commented Oct 15, 2024

Another major update: apache/lucene#13337
It should be non-breaking though as it's just introducing a new interface method.

@reta
Copy link
Collaborator Author

reta commented Oct 15, 2024

Another major update: apache/lucene#13337

Thanks @jed326 ! #11415 would be a better place to mention it I think, thanks!

@Bukhtawar
Copy link
Collaborator

I think there are few decision points that needs a broader discussion like

  1. Search semantics: While async search continues as a plugin, we wanted to unify this as a mode in the mainstream search API, which might cause search response to return just an id, to be subsequently polled for final results
  2. Replication semantics : We support two replication modes docrep and segrep, going forward should we consider making segrep the default replication type?
  3. Feature defaults : A lot of resiliency features that have been released, including back-pressure, cluster manager throttling are disabled by default, should we consider enabling them by defaults
  4. Guardrails enforcements: We have quite a few knobs to control queries, shard count but don't have hard limits enforced which might cause cluster instability

@mgodwan
Copy link
Member

mgodwan commented Jan 16, 2025

In line with the themes highlighted above, I think there are a few issues which we can discuss:

  1. [Feature Request] Evaluate removal of DATETIME_FORMATTER_CACHING_SETTING feature flag #13744 [The new way provides faster parsing and efficient way to pick parser during the document parsing step of indexing flow. Some users were relying on internal details due to which this was kept as an opt-in and experimental. We should benefit from removing this in 3.0]
  2. [Feature Request] Disable field data on "_id" field #12185 [Field Data feature for _id field results in more problems than it is able to solve and it may be a good idea to remove this.
  3. [Cleanup] TransportUpdateAction should extend TransportSingleItemBulkWriteAction #16980 (comment) [There are inconsistencies between using single update and update within a bulk operation which leads to difficulty for users as well as operators in debugging. With 3.0, we can choose one code flow which works same across both the APIs]

@vikasvb90
Copy link
Contributor

With In-place Shard Split, parent shard ids will not longer exist and therefore, looping from 0 to number of shards in places such as this will no longer be valid.

This will be a breaking change because it is an assumption today that number of shards in an index cannot change dynamically. This assumption will no longer hold true after this.

Solution
An iterator from IndexMetadata holding and hiding context of which shards exist can be exposed to loop over shard ids. This will be adapted in OpenSearch, plugins within OpenSearch repo and external plugins. Plugins which work directly with shards may need to adapt to this change. CCR is one such plugin.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
>breaking Identifies a breaking change. Meta Meta issue, not directly linked to a PR v3.0.0 Issues and PRs related to version 3.0.0
Projects
None yet
Development

No branches or pull requests

9 participants