Uh oh!
There was an error while loading. Please reload this page.
[Opt](TabletSchema) reuse TabletColumn info to reduce mem - #42448
Conversation
doris-robot
commented
Oct 24, 2024
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
eldenmoon
commented
Oct 24, 2024
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
eldenmoon
commented
Oct 24, 2024
run buildall |
| } | ||
| void TabletSchema::init_from_pb(const TabletSchemaPB& schema, bool ignore_extracted_columns) { | ||
| void TabletSchema::init_from_pb(const TabletSchemaPB& schema, bool ignore_extracted_columns, |
There was a problem hiding this comment.
warning: function 'init_from_pb' exceeds recommended size/complexity thresholds [readability-function-size]
voidTabletSchema::init_from_pb(const TabletSchemaPB& schema, bool ignore_extracted_columns,
^Additional context
be/src/olap/tablet_schema.cpp:945: 85 lines including whitespace and comments (threshold 80)
voidTabletSchema::init_from_pb(const TabletSchemaPB& schema, bool ignore_extracted_columns,
^101870d to
a98b6c0Compareeldenmoon
commented
Oct 25, 2024
run buildall |
a6ae48d to
8e31fa5Compareeldenmoon
commented
Oct 29, 2024
run buildall |
eldenmoon
commented
Oct 29, 2024
run buildall |
1 similar comment
eldenmoon
commented
Oct 29, 2024
run buildall |
doris-robot
commented
Oct 29, 2024
TeamCity be ut coverage result: |
eldenmoon
commented
Oct 30, 2024
run buildall |
doris-robot
commented
Oct 30, 2024
TeamCity be ut coverage result: |
d0f8a69 to
0761331Compareeldenmoon
commented
Oct 31, 2024
run buildall |
doris-robot
commented
Oct 31, 2024
TeamCity be ut coverage result: |
eldenmoon
commented
Oct 31, 2024
run buildall |
PR approved by at least one committer and no changes requested. |
PR approved by anyone and no changes requested. |
1. When there are a large number of identical TabletColumns in the cluster, which usually occurs when VARIANT type columns are modified and added, each Rowset has an individual TabletSchema. Excessive TabletSchemas can lead to significant memory overhead. Reusing memory for identical TabletColumns would greatly reduce this memory consumption. 2. Serialized TabletSchema as LRU cache key could also increase memusage when large sets of schemas are in LRU cache, so inorder to reduce the memory footprint we just record the key signature caculated by generating an UUID by hash algorithm, and lookup the key signature in LRU cache, and check the key in case of hash collision
1. When there are a large number of identical TabletColumns in the cluster, which usually occurs when VARIANT type columns are modified and added, each Rowset has an individual TabletSchema. Excessive TabletSchemas can lead to significant memory overhead. Reusing memory for identical TabletColumns would greatly reduce this memory consumption. 2. Serialized TabletSchema as LRU cache key could also increase memusage when large sets of schemas are in LRU cache, so inorder to reduce the memory footprint we just record the key signature caculated by generating an UUID by hash algorithm, and lookup the key signature in LRU cache, and check the key in case of hash collision
1. When there are a large number of identical TabletColumns in the cluster, which usually occurs when VARIANT type columns are modified and added, each Rowset has an individual TabletSchema. Excessive TabletSchemas can lead to significant memory overhead. Reusing memory for identical TabletColumns would greatly reduce this memory consumption. 2. Serialized TabletSchema as LRU cache key could also increase memusage when large sets of schemas are in LRU cache, so inorder to reduce the memory footprint we just record the key signature caculated by generating an UUID by hash algorithm, and lookup the key signature in LRU cache, and check the key in case of hash collision
1. When there are a large number of identical TabletColumns in the cluster, which usually occurs when VARIANT type columns are modified and added, each Rowset has an individual TabletSchema. Excessive TabletSchemas can lead to significant memory overhead. Reusing memory for identical TabletColumns would greatly reduce this memory consumption. 2. Serialized TabletSchema as LRU cache key could also increase memusage when large sets of schemas are in LRU cache, so inorder to reduce the memory footprint we just record the key signature caculated by generating an UUID by hash algorithm, and lookup the key signature in LRU cache, and check the key in case of hash collision
1. When there are a large number of identical TabletColumns in the cluster, which usually occurs when VARIANT type columns are modified and added, each Rowset has an individual TabletSchema. Excessive TabletSchemas can lead to significant memory overhead. Reusing memory for identical TabletColumns would greatly reduce this memory consumption. 2. Serialized TabletSchema as LRU cache key could also increase memusage when large sets of schemas are in LRU cache, so inorder to reduce the memory footprint we just record the key signature caculated by generating an UUID by hash algorithm, and lookup the key signature in LRU cache, and check the key in case of hash collision
Reuse TabletIndex like TabletColumn related PR #42448
Reuse TabletIndex like TabletColumn related PR apache#42448
Reuse TabletIndex like TabletColumn related PR apache#42448
1. When there are a large number of identical TabletColumns in the cluster, which usually occurs when VARIANT type columns are modified and added, each Rowset has an individual TabletSchema. Excessive TabletSchemas can lead to significant memory overhead. Reusing memory for identical TabletColumns would greatly reduce this memory consumption. 2. Serialized TabletSchema as LRU cache key could also increase memusage when large sets of schemas are in LRU cache, so inorder to reduce the memory footprint we just record the key signature caculated by generating an UUID by hash algorithm, and lookup the key signature in LRU cache, and check the key in case of hash collision
Uh oh!
There was an error while loading. Please reload this page.