-
Notifications
You must be signed in to change notification settings - Fork 3.7k
[Memory Engine] MemTablet creation and compatibility handling in BE #3762
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
Conversation
|
Hi @decster , in your comment, you said But i didn't see the code change related to it? |
the related change is in tablet_manager TabletManager::_get_tablet_unlocked |
OK, I see~ |
be/src/olap/tablet_manager.cpp
Outdated
| } | ||
|
|
||
| if (base_tablet->is_memory() || existed_tablet->is_memory()) { | ||
| LOG(WARNING) << "add the same tablet twice! tablet_id=" << tablet_id |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Change the comment
…address review comments
…address review comments
After adding meta, BE now can create MemTablet, and put it into TabletManager, but MemTablet is not compatible with Tablet, a lot of code may break. This CL contains the following changes:
When TabletManager::get_tablet is called, only return Tablet, if the underlying tablet is MemTablet, return an error, this keeps the initial code changes small.
For methods/functionalities Tablet&MemTablet both have, refactor/extract them to BaseTablet, and change the usage to TabletManager::get_base_tablet, and it will gradually remove errors introduced by step1, this is a long going process.
Resolves #3669