-
Notifications
You must be signed in to change notification settings - Fork 3.7k
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
Interning in SQLMetadataSegmentManager may obliterate new segment metadata #6358
Comments
@leventov checking my understanding for this fix, so the equals in
|
I'm not sure what would be the best way to handle this in terms of both usability and error-proneness. If you just make So what I would do is:
|
I thought a segment ID was supposed to be immutable. Why would a new load spec not cause a new segment ID? |
If you are migrating your segments from one deep storage to another, you might want to adjust things so the same segment objects have new loadSpecs but retain their IDs. It's valuable because changing the IDs implies changing the version and/or partition numbers, which would cause a lot of churn in the cluster. Segment metadata also evolves naturally over time as segments are pushed from realtime tasks to deep storage. While they're on realtime tasks, they don't yet have loadSpecs or sizes (maybe other stuff too, I don't remember). |
Did you mean to add this structural search inspection as a warning, if I add it, it's manifested as an error, and I'm not sure how to make it a warning while keeping the existing inspections as error. See the last item in this screenshot, how can we set it's severity to warning ? |
@surekhasaharan I meant to add it as an error. So every time a developer wants to have |
This issue has been marked as stale due to 280 days of inactivity. |
DataSegment
interning inSQLMetadataSegmentManager.poll()
is based on segment ids (if a segment with a matching segment id already exists on the heap, it is used instead of the newly polled segment), that may obliterate some new information about segments, such as different loadSpecs.The text was updated successfully, but these errors were encountered: