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

OnDemand Follow-on: Resolve how Tablet.java will stay in sync with metadata changes #3310

Closed
dlmarion opened this issue Apr 17, 2023 · 5 comments
Milestone

Comments

@dlmarion
Copy link
Contributor

Specifically, resolve todo at line 236 in Tablet.java. The hostingGoal could be updated by a user (ALWAYS <-> ONDEMAND) while the Tablet is hosted and in-memory. I don't think we need to worry about the NEVER case, as that would cause the Tablet to become unhosted.

Generally, tablet management functions that are moved to the Manager (e.g. Bulk Import, Compaction, etc) will likely modify the TabletMetadata. For any hosted Tablet, how will the Tablet object stay in sync?

@dlmarion dlmarion converted this from a draft issue Apr 17, 2023
@keith-turner
Copy link
Contributor

May be easier to work on this after functionality is removed from the tablet server. Then we will only need to update the code that is left behind in the tablet server.

@dlmarion
Copy link
Contributor Author

#3350 added TabletServerClientService.refreshTablets. I assume we just need to add a call to this in the correct places to resolve this issue?

@keith-turner
Copy link
Contributor

#3350 added TabletServerClientService.refreshTablets. I assume we just need to add a call to this in the correct places to resolve this issue?

When refresh was first added it had race conditions on the tserver side. Those were cleaned up and fixed in #3625 and #3634. There is still work that could be done to clean up the overall locking in the tserver, which is outlined in #3670. Cleaning up locking the in the tablet would be good since compactions and bulk import were removed and the tablet code is simpler.

@keith-turner
Copy link
Contributor

Also compaction commit has a customized refresh processes that could be simplified by using FATE as outlined in #3559

@keith-turner
Copy link
Contributor

Closing this issue, the work is done and follow on issue are open for potential improvements.

@ctubbsii ctubbsii added this to the 4.0.0 milestone Jul 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

No branches or pull requests

3 participants