Uh oh!
There was an error while loading. Please reload this page.
[Fix](partial update) Persist partial_update_info in RocksDB in case of BE restart after a partial update has commited - #38331
Conversation
doris-robot
commented
Jul 24, 2024
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
236a525 to
e79f107Compare| #include "olap/partial_update_info.h" | ||
| #include <gen_cpp/olap_file.pb.h> |
There was a problem hiding this comment.
warning: 'gen_cpp/olap_file.pb.h' file not found [clang-diagnostic-error]
#include<gen_cpp/olap_file.pb.h>
^| struct PartialUpdateInfo { | ||
| void init(const TabletSchema& tablet_schema, bool partial_update, | ||
| const std::set<string>& partial_update_cols, bool is_strict_mode, | ||
| const std::set<std::string>& partial_update_cols, bool is_strict_mode, |
There was a problem hiding this comment.
warning: no template named 'set' in namespace 'std' [clang-diagnostic-error]
const std::set<std::string>& partial_update_cols, bool is_strict_mode,
^| #ifndef DORIS_BE_SRC_OLAP_ROWSET_ROWSET_META_MANAGER_H | ||
| #define DORIS_BE_SRC_OLAP_ROWSET_ROWSET_META_MANAGER_H | ||
| #include <gen_cpp/olap_file.pb.h> |
There was a problem hiding this comment.
warning: 'gen_cpp/olap_file.pb.h' file not found [clang-diagnostic-error]
#include<gen_cpp/olap_file.pb.h>
^bobhan1
commented
Jul 25, 2024
run buildall |
1 similar comment
bobhan1
commented
Jul 25, 2024
run buildall |
ad2d9a9 to
efe2ea6Comparebobhan1
commented
Jul 25, 2024
run buildall |
efe2ea6 to
762e3efComparebobhan1
commented
Jul 29, 2024
run buildall |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
68d404b to
4095139Comparedataroaring
commented
Aug 1, 2024
run buildall |
4095139 to
f9af921Comparef9af921 to
d4b8f3bComparePR approved by at least one committer and no changes requested. |
PR approved by anyone and no changes requested. |
be9266f to
628fb44Comparebobhan1
commented
Aug 1, 2024
run buildall |
PR approved by at least one committer and no changes requested. |
…of BE restart after a partial update has commited (#38331) ## Proposed changes If a partial update has conflict with another load during publish phase, it should combine the two load's data into one to get the corrrect result. This procedure needs partial update info. But If BE crashed after the partial update load has committed, the partial update info will be missing becasuse it's not persisted and will not be restored in `DataDir::load()`. This PR persists partial update info in RocksDB before the txn is commited and remove it after the publish phase. Before #25147, partial update info is persisted with tablet_schema in RocksDB. #25147 split partial update info from tablet schema but forget to handle the persistence logic.
…of BE restart after a partial update has commited (apache#38331) ## Proposed changes If a partial update has conflict with another load during publish phase, it should combine the two load's data into one to get the corrrect result. This procedure needs partial update info. But If BE crashed after the partial update load has committed, the partial update info will be missing becasuse it's not persisted and will not be restored in `DataDir::load()`. This PR persists partial update info in RocksDB before the txn is commited and remove it after the publish phase. Before apache#25147, partial update info is persisted with tablet_schema in RocksDB. apache#25147 split partial update info from tablet schema but forget to handle the persistence logic.
…inter (apache#39066) fix member call on null pointer in apache#38331
…of BE restart after a partial update has commited (#38331) ## Proposed changes If a partial update has conflict with another load during publish phase, it should combine the two load's data into one to get the corrrect result. This procedure needs partial update info. But If BE crashed after the partial update load has committed, the partial update info will be missing becasuse it's not persisted and will not be restored in `DataDir::load()`. This PR persists partial update info in RocksDB before the txn is commited and remove it after the publish phase. Before #25147, partial update info is persisted with tablet_schema in RocksDB. #25147 split partial update info from tablet schema but forget to handle the persistence logic.
… in RocksDB in case of BE restart after a partial update has commited apache#38331" (apache#39078) picks apache#38331 and apache#39066
… in RocksDB in case of BE restart after a partial update has commited apache#38331" (apache#39078) picks apache#38331 and apache#39066
…of BE restart after a partial update has commited (apache#38331) ## Proposed changes If a partial update has conflict with another load during publish phase, it should combine the two load's data into one to get the corrrect result. This procedure needs partial update info. But If BE crashed after the partial update load has committed, the partial update info will be missing becasuse it's not persisted and will not be restored in `DataDir::load()`. This PR persists partial update info in RocksDB before the txn is commited and remove it after the publish phase. Before apache#25147, partial update info is persisted with tablet_schema in RocksDB. apache#25147 split partial update info from tablet schema but forget to handle the persistence logic.
…inter (apache#39066) fix member call on null pointer in apache#38331
Proposed changes
If a partial update has conflict with another load during publish phase, it should combine the two load's data into one to get the corrrect result. This procedure needs partial update info. But If BE crashed after the partial update load has committed, the partial update info will be missing becasuse it's not persisted and will not be restored in
DataDir::load(). This PR persists partial update info in RocksDB before the txn is commited and remove it after the publish phase.Before #25147, partial update info is persisted with tablet_schema in RocksDB. #25147 split partial update info from tablet schema but forget to handle the persistence logic.
branch-2.1-pick: #39035
branch-2.0-pick: #39078