[
https://issues.apache.org/jira/browse/CASSANDRA-13533?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Eduard Tudenhoefner updated CASSANDRA-13533:
--------------------------------------------
Description:
It turns out that the object size of {{ColumnIdentifier}} is wrong when
*cassandra.test.flush_local_schema_changes: false*. This looks like stuff is
being wrongly reused when no flush is happening.
We only noticed this because we were using the prepared stmt cache and noticed
that prepared statements would account for *1-6mb* when
*cassandra.test.flush_local_schema_changes: false*. With
*cassandra.test.flush_local_schema_changes: true* (which is the default) those
would be around *5000 bytes*.
Attached is a test that reproduces the problem and also a fix.
Also after talking to [~jkni] / [~blerer] we shouldn't probably take
{{ColumnDefinition}} into account when measuring object sizes with
{{MemoryMeter}}
was:
It turns out that the object size of {{ColumnIdentifier}} is wrong when
*cassandra.test.flush_local_schema_changes: false*. This looks like stuff is
being wrongly reused when no flush is happening.
We only noticed this because we were using the prepared stmt cache and noticed
that prepared statements would account for *1-6mb* when
*cassandra.test.flush_local_schema_changes: false*. With
*cassandra.test.flush_local_schema_changes: true* (which is the default) those
would be around *5000 bytes*.
Attached is a test that reproduces the problem and also a fix.
> ColumnIdentifier object size wrong when tables are not flushed
> --------------------------------------------------------------
>
> Key: CASSANDRA-13533
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13533
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Reporter: Eduard Tudenhoefner
> Assignee: Eduard Tudenhoefner
>
> It turns out that the object size of {{ColumnIdentifier}} is wrong when
> *cassandra.test.flush_local_schema_changes: false*. This looks like stuff is
> being wrongly reused when no flush is happening.
> We only noticed this because we were using the prepared stmt cache and
> noticed that prepared statements would account for *1-6mb* when
> *cassandra.test.flush_local_schema_changes: false*. With
> *cassandra.test.flush_local_schema_changes: true* (which is the default)
> those would be around *5000 bytes*.
> Attached is a test that reproduces the problem and also a fix.
> Also after talking to [~jkni] / [~blerer] we shouldn't probably take
> {{ColumnDefinition}} into account when measuring object sizes with
> {{MemoryMeter}}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]