You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Alex Petrov (Jira)" <ji...@apache.org> on 2022/02/08 06:07:00 UTC

[jira] [Updated] (CASSANDRA-17358) Harry: refactor usage of primitive long to use specialized types

     [ https://issues.apache.org/jira/browse/CASSANDRA-17358?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alex Petrov updated CASSANDRA-17358:
------------------------------------
    Component/s: Test/fuzz

> Harry: refactor usage of primitive long to use specialized types
> ----------------------------------------------------------------
>
>                 Key: CASSANDRA-17358
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17358
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Test/fuzz
>            Reporter: Abe Ratnofsky
>            Priority: Normal
>
> From this PR discussion: [https://github.com/apache/cassandra/pull/1382#discussion_r801209270]
>  
> Currently, Harry uses primitive long types extensively (logical timestamps, operation IDs, partition descriptors, clustering descriptors, etc). These are allocated on the stack so they are performant, but they are not type-safe. There's nothing preventing an accident like trying to inflate a clustering descriptor where a partition descriptor is expected.
>  
> To get around this, we could migrate these types to be non-primitive, with a negative impact on performance. When Value Objects arrive (with JEP 169), there may be new possibilities with different trade-offs.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org