Cassandra: Frissítés után nem indul el

Apache Cassandra logo
Probléma: Nagyobb verziófrissítés után nem indul el a (DSE) Cassandra. A system.log-ban a következő hibaüzenet olvasható:

INFO  05:46:29,698  DseConfig.java:455 - Server ID:11-AA-22-BB-CC-33
Exception (java.lang.NoSuchMethodError) encountered during startup: com.google.common.util.concurrent.MoreExecutors.newDirectExecutorService()Lcom/google/common/util/concurrent/ListeningExecutorService;
java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors.newDirectExecutorService()Lcom/google/common/util/concurrent/ListeningExecutorService;
        at org.apache.cassandra.index.SecondaryIndexManager.<clinit>(SecondaryIndexManager.java:125)
        at org.apache.cassandra.db.ColumnFamilyStore.<init>(ColumnFamilyStore.java:388)
        at org.apache.cassandra.db.ColumnFamilyStore.<init>(ColumnFamilyStore.java:366)
        at org.apache.cassandra.db.ColumnFamilyStore.createColumnFamilyStore(ColumnFamilyStore.java:582)
        at org.apache.cassandra.db.ColumnFamilyStore.createColumnFamilyStore(ColumnFamilyStore.java:559)
        at org.apache.cassandra.db.Keyspace.initCf(Keyspace.java:431)
        at org.apache.cassandra.db.Keyspace.<init>(Keyspace.java:368)
        at org.apache.cassandra.db.Keyspace.open(Keyspace.java:159)
        at org.apache.cassandra.db.Keyspace.open(Keyspace.java:136)
        at org.apache.cassandra.db.Keyspace.openAndGetStore(Keyspace.java:189)
        at org.apache.cassandra.cql3.statements.UpdatesCollector.validateIndexedColumns(UpdatesCollector.java:90)
        at org.apache.cassandra.cql3.statements.ModificationStatement.getMutations(ModificationStatement.java:633)
        at org.apache.cassandra.cql3.statements.ModificationStatement.executeInternalWithoutCondition(ModificationStatement.java:577)
        at org.apache.cassandra.cql3.statements.ModificationStatement.executeInternal(ModificationStatement.java:572)
        at org.apache.cassandra.cql3.QueryProcessor.executeOnceInternal(QueryProcessor.java:346)
        at com.datastax.bdp.server.DseDaemon.initSystemLocalCF(DseDaemon.java:595)
        at com.datastax.bdp.server.DseDaemon.preSetup(DseDaemon.java:677)
        at com.datastax.bdp.server.DseDaemon.setup(DseDaemon.java:468)
        at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:582)
        at com.datastax.bdp.DseModule.main(DseModule.java:91)
ERROR 05:46:30,033  CassandraDaemon.java:678 - Exception encountered during startup
java.lang.NoSuchMethodError: com.google.common.util.concurrent.MoreExecutors.newDirectExecutorService()Lcom/google/common/util/concurrent/ListeningExecutorService;
        at org.apache.cassandra.index.SecondaryIndexManager.<clinit>(SecondaryIndexManager.java:125)
        at org.apache.cassandra.db.ColumnFamilyStore.<init>(ColumnFamilyStore.java:388)
        at org.apache.cassandra.db.ColumnFamilyStore.<init>(ColumnFamilyStore.java:366)
        at org.apache.cassandra.db.ColumnFamilyStore.createColumnFamilyStore(ColumnFamilyStore.java:582)
        at org.apache.cassandra.db.ColumnFamilyStore.createColumnFamilyStore(ColumnFamilyStore.java:559)
        at org.apache.cassandra.db.Keyspace.initCf(Keyspace.java:431)
        at org.apache.cassandra.db.Keyspace.<init>(Keyspace.java:368)
        at org.apache.cassandra.db.Keyspace.open(Keyspace.java:159)
        at org.apache.cassandra.db.Keyspace.open(Keyspace.java:136)
        at org.apache.cassandra.db.Keyspace.openAndGetStore(Keyspace.java:189)
        at org.apache.cassandra.cql3.statements.UpdatesCollector.validateIndexedColumns(UpdatesCollector.java:90)
        at org.apache.cassandra.cql3.statements.ModificationStatement.getMutations(ModificationStatement.java:633)
        at org.apache.cassandra.cql3.statements.ModificationStatement.executeInternalWithoutCondition(ModificationStatement.java:577)
        at org.apache.cassandra.cql3.statements.ModificationStatement.executeInternal(ModificationStatement.java:572)
        at org.apache.cassandra.cql3.QueryProcessor.executeOnceInternal(QueryProcessor.java:346)
        at com.datastax.bdp.server.DseDaemon.initSystemLocalCF(DseDaemon.java:595)
        at com.datastax.bdp.server.DseDaemon.preSetup(DseDaemon.java:677)
        at com.datastax.bdp.server.DseDaemon.setup(DseDaemon.java:468)
        at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:582)
        at com.datastax.bdp.DseModule.main(DseModule.java:91

Hasznos infó: Nem minden frissítés alkalmával és főleg nem állandóan jelentkezik a hiba. Nálunk 100+ frissítésből 2 alkalommal jelentkezett a hiba (nyilván egyszerre és a frissítések automatizálva vannak).
Megoldás: A /usr/share/dse könyvtárban a frissítés során valamiért ott maradtak a régi Cassandra verzió állományai is. Ezt onnan látod, hogy ugyanabból a komponensből két verziót is látsz, pl.

-rwxr-xr-x 1 cassandra cassandra 445288 Jun  15  2018 antlr-2.7.7.jar
-rwxr-xr-x 1 cassandra cassandra 1153819 May  9  2018 antlr-3.5.2.jar

Töröld a régebbi verziókat, indítsd el a Cassandrát. Nálunk megoldotta.