[
https://issues.apache.org/jira/browse/CASSANDRA-16071?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17236687#comment-17236687
]
Michael Semb Wever commented on CASSANDRA-16071:
------------------------------------------------
Here is a manual migration you can use to avoid having to recreate the SASI,
also while keeping it available during the upgrade.
- disable compactions on all nodes
- rolling upgrade all nodes (disabling again compactions upon restart)
- verify that the system.log files reported
{noformat} ERROR [main] … IndexMode.java:196 -
max_compaction_flush_memory_in_mb configured as … is above 100GB, reverting to
default 1GB{noformat}
- verify the index still has the old setting
{code}cqlsh -e "select * from system_schema.indexes where keyspace_name =
'<keyspace>' and table_name = '<table>';"{code}
- edit the indexes table to the correct max_compaction_flush_memory_in_mb
value. It is important to get all the values here correct, including all those
in {{OPTIONS}}. Failure to do this correctly can leave the node unable to start.
{code}cqlsh
> update system_schema.indexes set options = {'class_name':
> 'org.apache.cassandra.index.sasi.SASIIndex',
> 'max_compaction_flush_memory_in_mb': '<correct_value>', 'target':
> '<column_name>'} where keyspace_name = '<keyspace>' and table_name =
> '<table>' and index_name = '<index_name>' ;{code}
- restart the node
- validate the ERROR message no longer appears during startup
- enable compactions on all nodes
> max_compaction_flush_memory_in_mb is interpreted as bytes
> ---------------------------------------------------------
>
> Key: CASSANDRA-16071
> URL: https://issues.apache.org/jira/browse/CASSANDRA-16071
> Project: Cassandra
> Issue Type: Bug
> Components: Feature/SASI
> Reporter: Michael Semb Wever
> Assignee: Michael Semb Wever
> Priority: Normal
> Fix For: 4.0, 3.11.8, 4.0-beta2, 4.0-beta4, 3.11.10
>
>
> In CASSANDRA-12662, [~scottcarey]
> [reported|https://issues.apache.org/jira/browse/CASSANDRA-12662?focusedCommentId=17070055&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-17070055]
> that the {{max_compaction_flush_memory_in_mb}} setting gets incorrectly
> interpreted in bytes rather than megabytes as its name implies.
> {quote}
> 1. the setting 'max_compaction_flush_memory_in_mb' is a misnomer, it is
> actually memory in BYTES. If you take it at face value, and set it to say,
> '512' thinking that means 512MB, you will produce a million temp files
> rather quickly in a large compaction, which will exhaust even large values of
> max_map_count rapidly, and get the OOM: Map Error issue above and possibly
> have a very difficult situation to get a cluster back into a place where
> nodes aren't crashing while initilaizing or soon after. This issue is minor
> if you know about it in advance and set the value IN BYTES.
> {quote}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]