Hello aaron, I hope you had a nice flight.
>Any information on how you are using cassandra, does the zero columns no row delete idea sound like something you are doing ? I do not know what I could do, but we use an old versions of phpcassa (0.8.a.2) that are not explictly compatible with cassandra 2.0, but work fine for us. Another thing that could help, when i created the keyspace i do : CREATE KEYSPACE ks01 WITH replication = {'class': 'NetworkTopologyStrategy', 'dc1b': 3 }; USE ks01 ; DROP KEYSPACE ks01 ; CREATE KEYSPACE ks01 WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 3}; In jira i saw that creating keyspace after drop has already cause a bug in the past (CASSANDRA-4219) Thanks; Kais 2013/10/23 Aaron Morton <aa...@thelastpickle.com> > On a plane and cannot check jira but… > > ERROR [FlushWriter:216] 2013-10-07 07:11:46,538 CassandraDaemon.java (line > 186) Exception in thread Thread[FlushWriter:216,5,main] > java.lang.AssertionError > at > org.apache.cassandra.io.sstable.SSTableWriter.rawAppend(SSTableWriter.java:198) > > Happened because we tried to write a row to disk that had zero columns and > was not a row level tombstone. > > > ERROR [ValidationExecutor:2] 2013-10-23 08:39:27,558 CassandraDaemon.java > (line 185) Exception in thread Thread[ValidationExecutor:2,1,main] > java.lang.AssertionError > at > org.apache.cassandra.db.compaction.PrecompactedRow.update(PrecompactedRow.java:171) > at > org.apache.cassandra.repair.Validator.rowHash(Validator.java:198) > at org.apache.cassandra.repair.Validator.add(Validator.java:151) > > > I *think* this is happening for similar reasons. > > (notes to self below)… > > public PrecompactedRow(CompactionController controller, > List<SSTableIdentityIterator> rows) > { > this(rows.get(0).getKey(), > removeDeletedAndOldShards(rows.get(0).getKey(), controller, > merge(rows, controller))); > } > > results in call to this on CFS > > public static ColumnFamily removeDeletedCF(ColumnFamily cf, int > gcBefore) > { > cf.maybeResetDeletionTimes(gcBefore); > return cf.getColumnCount() == 0 && !cf.isMarkedForDelete() ? null > : cf; > } > > If the CF has zero columns and is not marked for delete the CF will be > null, and the PreCompacedRow will be created with a non cf. This is the > source of the assertion. > > Any information on how you are using cassandra, does the zero columns no > row delete idea sound like something you are doing ? > > > This may already be fixed. Will take a look later when on the ground. > > Cheers > > > ----------------- > Aaron Morton > New Zealand > @aaronmorton > > Co-Founder & Principal Consultant > Apache Cassandra Consulting > http://www.thelastpickle.com > > On 23/10/2013, at 9:50 PM, Kais Ahmed <k...@neteck-fr.com> wrote: > > Thanks robert, > > For info if it helps to fix the bug i'm starting the downgrade, i restart > all the node and do a repair and there are a lot of error like this : > > EERROR [ValidationExecutor:2] 2013-10-23 08:39:27,558 Validator.java (line > 242) Failed creating a merkle tree for [repair > #9f9b7fc0-3bbe-11e3-a220-b18f7c69b044 on ks01/messages, > (8746393670077301406,8763948586274310360]], /172.31.38.135 (see log for > details) > ERROR [ValidationExecutor:2] 2013-10-23 08:39:27,558 CassandraDaemon.java > (line 185) Exception in thread Thread[ValidationExecutor:2,1,main] > java.lang.AssertionError > at > org.apache.cassandra.db.compaction.PrecompactedRow.update(PrecompactedRow.java:171) > at > org.apache.cassandra.repair.Validator.rowHash(Validator.java:198) > at org.apache.cassandra.repair.Validator.add(Validator.java:151) > at > org.apache.cassandra.db.compaction.CompactionManager.doValidationCompaction(CompactionManager.java:798) > at > org.apache.cassandra.db.compaction.CompactionManager.access$600(CompactionManager.java:60) > at > org.apache.cassandra.db.compaction.CompactionManager$8.call(CompactionManager.java:395) > at java.util.concurrent.FutureTask.run(FutureTask.java:262) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:724) > > And the repair stop after this error : > > ERROR [FlushWriter:9] 2013-10-23 08:39:32,979 CassandraDaemon.java (line > 185) Exception in thread Thread[FlushWriter:9,5,main] > java.lang.AssertionError > at > org.apache.cassandra.io.sstable.SSTableWriter.rawAppend(SSTableWriter.java:198) > at > org.apache.cassandra.io.sstable.SSTableWriter.append(SSTableWriter.java:186) > at > org.apache.cassandra.db.Memtable$FlushRunnable.writeSortedContents(Memtable.java:358) > at > org.apache.cassandra.db.Memtable$FlushRunnable.runWith(Memtable.java:317) > at > org.apache.cassandra.io.util.DiskAwareRunnable.runMayThrow(DiskAwareRunnable.java:48) > at > org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:724) > > > > > > > > > 2013/10/22 Robert Coli <rc...@eventbrite.com> > >> On Mon, Oct 21, 2013 at 11:57 PM, Kais Ahmed <k...@neteck-fr.com> wrote: >> >>> I will try to create a new cluster 1.2 and copy data, can you tell me >>> please the best pratice to do this, do i have to use sstable2json / >>> json2sstable or other method. >>> >> >> Unfortunately to downgrade versions you are going to need to use a method >> like sstable2json/json2sstable. >> >> Other bulkload options, which mostly don't apply in the downgrade case, >> here : >> >> http://www.palominodb.com/blog/2012/09/25/bulk-loading-options-cassandra >> >> =Rob >> > > >