[ 
https://issues.apache.org/jira/browse/CASSANDRA-20167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17921862#comment-17921862
 ] 

Dmitry Konstantinov commented on CASSANDRA-20167:
-------------------------------------------------

Changes rebased as a new MR for trunk - 
[https://github.com/apache/cassandra/pull/3845]

Delta compared to 5.0 MR:
 * Keyspace.java - some changes are not applicable after TCM changes
 * PendingRangeMaps.java - changes are not applicable, the class does not exist 
anymore after TCM changes
 * (7) Optimize a typical case: a single clustering key in an update - changes 
are not applicable as is, the logic has been changed and an optimisation with a 
similar idea has been already implemented in CASSANDRA-20129
 * (9) Add RestrictionSet.toArray() method - this change is skipped due to too 
small benefit

> Reduce memory allocations in miscellaneous places along write path
> ------------------------------------------------------------------
>
>                 Key: CASSANDRA-20167
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-20167
>             Project: Apache Cassandra
>          Issue Type: Improvement
>          Components: Consistency/Coordination, Local/Other
>            Reporter: Dmitry Konstantinov
>            Assignee: Dmitry Konstantinov
>            Priority: Normal
>             Fix For: 5.0.x
>
>         Attachments: 20167_BTreeRow_Builder_reuse-5.0.patch, 
> 20167_SingleTableSinglePartitionUpdatesCollector-5.0.patch, 
> 20167_bind_vars_immutable_list-5.0.patch, 20167_mutation-5.0.patch, 
> 20167_network-5.0.patch, 20167_partition_update_iterator-5.0.patch, 
> 20167_restriction_set_as_array-5.0.patch, 
> 20167_single_clustering_key-5.0.patch, 
> ci_summary_netudima_20167-5.0_147.html, image-2024-12-26-22-01-32-592.png, 
> image-2024-12-26-22-01-55-614.png, image-2024-12-26-22-02-44-040.png, 
> image-2024-12-26-22-03-49-018.png, 
> results_details_netudima_20167-5.0_147.tar.xz
>
>          Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> Avoid unnecessary allocations in different places along write path:
> * avoid iterator allocations if possible
> * handle typical cases (such as a single row, single table writes) more 
> efficiently
> * add fast paths for typical scenarios (like pending ranges is empty)
> * memorize things which can be computed once



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to