Hey Alexander,

Thanks for the patch. Now that Cassandra's moved into the Apache incubator,
you should open an issue on the JIRA when you find a bug (I've done that for
you at https://issues.apache.org/jira/browse/CASSANDRA-8), and you should
communicate your problem in the comments on that issue, which will generate
an email to the new developer's list, [email protected].

I didn't attach your patch to the issue, since there's a legal disclaimer
required during patch submission that I can't make for you. If you have some
time, could you attach the patch over at
https://issues.apache.org/jira/browse/CASSANDRA-8?

Thanks for the interest in Cassandra!

Later,
Jeff

On Sat, Mar 21, 2009 at 11:04 AM, Alexander Staubo <[email protected]> wrote:

> I was confused by the meaning of the "ColumnSort" attribute in the
> config file, and typed something invalid. The result was the following
> exception on compaction, when Cassandra starts up:
>
> java.lang.NullPointerException
>        at
> org.apache.cassandra.config.DatabaseDescriptor.getTypeInfo(DatabaseDescriptor.java:729)
>        at
> org.apache.cassandra.db.ColumnIndexer.serialize(ColumnIndexer.java:62)
>        at
> org.apache.cassandra.db.CompactSerializerInvocationHandler.invoke(CompactSerializerInvocationHandler.java:50)
>        at $Proxy0.serialize(Unknown Source)
>        at
> org.apache.cassandra.db.Memtable.flushForRandomPartitioner(Memtable.java:461)
>        at org.apache.cassandra.db.Memtable.flush(Memtable.java:440)
>        at org.apache.cassandra.db.Memtable.forceflush(Memtable.java:279)
>        at
> org.apache.cassandra.db.ColumnFamilyStore.forceFlush(ColumnFamilyStore.java:409)
>        at org.apache.cassandra.db.Table.flush(Table.java:857)
>        at org.apache.cassandra.db.CommitLog.doRecovery(CommitLog.java:408)
>        at org.apache.cassandra.db.CommitLog.recover(CommitLog.java:317)
>        at
> org.apache.cassandra.db.RecoveryManager.recoverEachTable(RecoveryManager.java:90)
>        at
> org.apache.cassandra.db.RecoveryManager.doRecovery(RecoveryManager.java:77)
>        at org.apache.cassandra.db.DBManager.<init>(DBManager.java:112)
>        at org.apache.cassandra.db.DBManager.instance(DBManager.java:61)
>        at
> org.apache.cassandra.service.StorageService.start(StorageService.java:465)
>        at
> org.apache.cassandra.service.CassandraServer.start(CassandraServer.java:96)
>        at
> org.apache.cassandra.service.CassandraServer.main(CassandraServer.java:1049)
>
> ...after which the commit logs were gone, and there were no .db files.
> So my database went *poof*.
>
> The attached patch emits a warning if the ColumnSort attribute is
> invalid, and uses the appropriate default of "Time" in that case.
>
> However, this fixes only one possible failure scenario for
> compactions, but not the underlying problem that a failing compaction
> hoses the database. In my opinion, failing compactions should never
> result in the commit logs being deleted, regardless of the failure
> cause.
>
> Alexander.
>
> --~--~---------~--~----~------------~-------~--~----~
> You received this message because you are subscribed to the Google Groups
> "Cassandra Users" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]<cassandra-user%[email protected]>
> For more options, visit this group at
> http://groups.google.com/group/cassandra-user?hl=en
> -~----------~----~----~----~------~----~------~--~---
>
>

Reply via email to