Paul Ayers created CASSANDRA-17604:
--------------------------------------
Summary: java.lang.IllegalArgumentException during Cassandra 4.x
upgrade
Key: CASSANDRA-17604
URL: https://issues.apache.org/jira/browse/CASSANDRA-17604
Project: Cassandra
Issue Type: Bug
Reporter: Paul Ayers
This has happened only twice so far and only on the first node being upgraded
in a large cluster, so not sure it would be easy to repro, but the steps took
to hit this were the following on an existing Cassandra 3.11.6 cluster:
* nodetool drain
* stop Cassandra
* install Cassandra 4.0.1 binaries
* start Cassandra
Upon starting the first node, it failed with the following log entry and
nothing more:
{code:java}
INFO [main] 2022-04-28 13:06:27,978 SystemKeyspace.java:1470 - Detected
version upgrade from 3.11.6 to 4.0.1, snapshotting system keyspacesDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,981 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in compaction_historyDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,988 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in IndexInfoDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,989 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in repairsDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,990 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in size_estimatesDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,992 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in table_estimatesDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,992 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in paxosDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,994 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in built_viewsDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,994 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in peer_eventsDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,995 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in peers_v2DEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,995 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in peersDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,998 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in peer_events_v2DEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,998 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in batchesDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,999 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in transferred_rangesDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:27,999 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in transferred_ranges_v2DEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:28,000 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in view_builds_in_progressDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:28,000 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in localDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:28,002 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in sstable_activityDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:28,005 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in available_ranges_v2DEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:28,005 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in available_rangesDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:28,007 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in prepared_statementsDEBUG
[MemtablePostFlush:1] 2022-04-28 13:06:28,011 ColumnFamilyStore.java:933 -
forceFlush requested but everything is clean in columnsERROR [main] 2022-04-28
13:06:28,016 CassandraDaemon.java:909 - Exception encountered during
startupjava.lang.IllegalArgumentException: Requested permits (0) must be
positive at
com.google.common.base.Preconditions.checkArgument(Preconditions.java:189)
at
com.google.common.util.concurrent.RateLimiter.checkPermits(RateLimiter.java:430)
at
com.google.common.util.concurrent.RateLimiter.reserve(RateLimiter.java:285)
at
com.google.common.util.concurrent.RateLimiter.acquire(RateLimiter.java:273)
at
org.apache.cassandra.db.ColumnFamilyStore.snapshotWithoutFlush(ColumnFamilyStore.java:1849)
at
org.apache.cassandra.db.ColumnFamilyStore.snapshot(ColumnFamilyStore.java:2029)
at
org.apache.cassandra.db.ColumnFamilyStore.snapshot(ColumnFamilyStore.java:2005)
at org.apache.cassandra.db.Keyspace.snapshot(Keyspace.java:258)
at
org.apache.cassandra.db.SystemKeyspace.snapshotOnVersionChange(SystemKeyspace.java:1475)
at
org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:266)
at
org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:763)
at
org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:887)
{code}
The default snapshot_links_per_second is used.
The system_schema directory was removed, then the node started, but failed to
import it from the nodes running 3.11.6, so Cassandra was stopped, the data was
copied back, and the node started.
The majority of nodes upgraded without incident, this has only happened a
couple of times so far.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]