-
Notifications
You must be signed in to change notification settings - Fork 454
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
Comments
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. |
#3350 added |
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. |
Also compaction commit has a customized refresh processes that could be simplified by using FATE as outlined in #3559 |
Closing this issue, the work is done and follow on issue are open for potential improvements. |
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?
The text was updated successfully, but these errors were encountered: