Bringing together the Apache Cassandra experts from the community and DataStax.

Want to learn? Have a question? Want to share your expertise? You are in the right place!

Not sure where to begin? Getting Started

 

question

shubham.gupta_182020 avatar image
shubham.gupta_182020 asked ·

Error indexing partition after upgrading to dse 6.7.5 from 5.0.7

Upgrading to version 6.7.5 in dse from 5.0.7.I have snapshot of keyspace which is restored properly on dse version 6.7.5 but it gives error during indexing dfter creating core


dsetool -l cassandra -p $CASSANDRA_PASSWORD reload_core us.lead reindex=true deleteAll=false

dsetool -l cassandra -p $CASSANDRA_PASSWORD reload_core us.product reindex=true deleteAll=false


ERROR [CoreThread-0] 2019-09-26 14:16:57,891 AbstractSolrSecondaryIndex.java:1482 - Error indexing partition 'CON-PSOP-CP-7975G' on 'us.product':


Error indexing partition '5270' on 'us.lead':

com.datastax.bdp.search.SearchReadBeforeWriteException: Unable to complete Search read-before-write.

at com.datastax.bdp.search.solr.AbstractSolrSecondaryIndex.readBeforeWriteError(AbstractSolrSecondaryIndex.java:2071)

at io.reactivex.internal.operators.single.SingleResumeNext$ResumeMainSingleObserver.onError(SingleResumeNext.java:73)

at org.apache.cassandra.utils.flow.Flow$1SingleFromFlow$1ReduceToSingle.signalError(Flow.java:1539)


Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: Corrupted: /var/lib/cassandra/data/us/product-336e8d60df7d11e98ee3e99aa5a3a4fa/mc-439-big-Data.db


due to this error solr user interface is also not working but dse service is running on the node and in nodetool status both the nodes are up having approx same load.


Also tried to upgradesstables command but below issue occured


nodetool upgradesstables us lead


error: EOF after 245554130 bytes out of 1818583396


--StackTrace –


java.io.EOFException: EOF after 245554130 bytes out of 1818583396 at org.apache.cassandra.io.util.RebufferingInputStream.readFully(RebufferingInputStream.java:70) at org.apache.cassandra.io.util.RebufferingInputStream.readFully(RebufferingInputStream.java:62) at org.apache.cassandra.utils.ByteBufferUtil.read(ByteBufferUtil.java:472)

dse searchsolrindexcassandara index
10 |1000 characters needed characters left characters exceeded

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

1 Answer

Erick Ramirez avatar image
Erick Ramirez answered ·

@shubham.gupta_182020 the errors you posted indicate that the SSTable is corrupted and cannot be read. As a workaround, you need to do the following:

  • run nodetool drain so all memtables get flushed to disk
  • stop DSE on the node
  • remove product-336e8d60df7d11e98ee3e99aa5a3a4fa/mc-439-big-*.db from /var/lib/cassandra/data/us/
  • start DSE

Once DSE has successfully started, repair the node. Cheers!

Share
10 |1000 characters needed characters left characters exceeded

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.