[ https://issues.apache.org/jira/browse/CASSANDRA-12215?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15383195#comment-15383195 ]
Hau Phan commented on CASSANDRA-12215: -------------------------------------- {code} hau@cqlsh:adsfadfafd> select * from friendships_by_owner ; owner_id | friend_id | username | created_at | friend_status | friend_username | status | temp_friend --------------------------------------+--------------------------------------+----------+--------------------------+---------------+-----------------+----------+------------- 0533a340-4d36-11e6-8fb9-53ec422f025f | 10c58a5c-4d36-11e6-bb31-615a3fd451c6 | nothau | 2016-07-18 22:23:22+0000 | accepted | haunot | accepted | null 0533a340-4d36-11e6-8fb9-53ec422f025f | ec08f3de-4d35-11e6-ada9-39e33de03af2 | nothau | 2016-07-18 22:23:09+0000 | accepted | hau | accepted | null ec08f3de-4d35-11e6-ada9-39e33de03af2 | 10c58a5c-4d36-11e6-bb31-615a3fd451c6 | hau | 2016-07-18 22:23:12+0000 | accepted | haunot | accepted | null ec08f3de-4d35-11e6-ada9-39e33de03af2 | 0533a340-4d36-11e6-8fb9-53ec422f025f | hau | 2016-07-18 22:23:09+0000 | accepted | nothau | accepted | null 10c58a5c-4d36-11e6-bb31-615a3fd451c6 | 0533a340-4d36-11e6-8fb9-53ec422f025f | haunot | 2016-07-18 22:23:22+0000 | accepted | nothau | accepted | null 10c58a5c-4d36-11e6-bb31-615a3fd451c6 | ec08f3de-4d35-11e6-ada9-39e33de03af2 | haunot | 2016-07-18 22:23:12+0000 | accepted | hau | accepted | null (6 rows) hau@cqlsh:adsfadfafd> DELETE FROM friendships_by_owner WHERE owner_id = 0533a340-4d36-11e6-8fb9-53ec422f025f AND friend_id = ec08f3de-4d35-11e6-ada9-39e33de03af2; hau@cqlsh:adsfadfafd> DELETE FROM friendships_by_owner WHERE owner_id = ec08f3de-4d35-11e6-ada9-39e33de03af2 AND friend_id = 0533a340-4d36-11e6-8fb9-53ec422f025f; hau@cqlsh:adsfadfafd> select * from friendships_by_owner ; owner_id | friend_id | username | created_at | friend_status | friend_username | status | temp_friend --------------------------------------+--------------------------------------+----------+--------------------------+---------------+-----------------+----------+------------- 0533a340-4d36-11e6-8fb9-53ec422f025f | 10c58a5c-4d36-11e6-bb31-615a3fd451c6 | nothau | 2016-07-18 22:23:22+0000 | accepted | haunot | accepted | null ec08f3de-4d35-11e6-ada9-39e33de03af2 | null | hau | null | null | null | null | null 10c58a5c-4d36-11e6-bb31-615a3fd451c6 | 0533a340-4d36-11e6-8fb9-53ec422f025f | haunot | 2016-07-18 22:23:22+0000 | accepted | nothau | accepted | null (3 rows) {code} > NullPointerException during Compaction > -------------------------------------- > > Key: CASSANDRA-12215 > URL: https://issues.apache.org/jira/browse/CASSANDRA-12215 > Project: Cassandra > Issue Type: Bug > Components: Compaction > Environment: Cassandra 3.0.8, cqlsh 5.0.1 > Reporter: Hau Phan > Fix For: 3.0.x > > > Running 3.0.8 on a single standalone node with cqlsh 5.0.1, the keyspace RF = > 1 and class SimpleStrategy. > Attempting to run a 'select * from <table>' and receiving this error: > ReadFailure: code=1300 [Replica(s) failed to execute read] message="Operation > failed - received 0 responses and 1 failures" info={'failures': 1, > 'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} > Cassandra system.log prints this: > {code} > ERROR [CompactionExecutor:5] 2016-07-15 13:42:13,219 CassandraDaemon.java:201 > - Exception in thread Thread[CompactionExecutor:5,1,main] > java.lang.NullPointerException: null > at > org.apache.cassandra.db.transform.UnfilteredRows.isEmpty(UnfilteredRows.java:58) > ~[apache-cassandra-3.0.8.jar:3.0.8] > at > org.apache.cassandra.db.partitions.PurgeFunction.applyToPartition(PurgeFunction.java:64) > ~[apache-cassandra-3.0.8.jar:3.0.8] > at > org.apache.cassandra.db.partitions.PurgeFunction.applyToPartition(PurgeFunction.java:24) > ~[apache-cassandra-3.0.8.jar:3.0.8] > at > org.apache.cassandra.db.transform.BasePartitions.hasNext(BasePartitions.java:96) > ~[apache-cassandra-3.0.8.jar:3.0.8] > at > org.apache.cassandra.db.compaction.CompactionIterator.hasNext(CompactionIterator.java:226) > ~[apache-cassandra-3.0.8.jar:3.0.8] > at > org.apache.cassandra.db.compaction.CompactionTask.runMayThrow(CompactionTask.java:177) > ~[apache-cassandra-3.0.8.jar:3.0.8] > at > org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28) > ~[apache-cassandra-3.0.8.jar:3.0.8] > at > org.apache.cassandra.db.compaction.CompactionTask.executeInternal(CompactionTask.java:78) > ~[apache-cassandra-3.0.8.jar:3.0.8] > at > org.apache.cassandra.db.compaction.AbstractCompactionTask.execute(AbstractCompactionTask.java:60) > ~[apache-cassandra-3.0.8.jar:3.0.8] > at > org.apache.cassandra.db.compaction.CompactionManager$BackgroundCompactionCandidate.run(CompactionManager.java:263) > ~[apache-cassandra-3.0.8.jar:3.0.8] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > ~[na:1.8.0_65] > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > ~[na:1.8.0_65] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > ~[na:1.8.0_65] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > [na:1.8.0_65] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_65] > {code} > Doing a sstabledump -d shows a few rows with the column value of > "<tombstone>", telling me compaction doesn't seem to be working correctly. > # nodetool compactionstats > pending tasks: 1 > attempting to run a compaction gets: > # nodetool compact <table> <cf> > error: null > -- StackTrace -- > java.lang.NullPointerException > at > org.apache.cassandra.db.transform.UnfilteredRows.isEmpty(UnfilteredRows.java:58) > at > org.apache.cassandra.db.partitions.PurgeFunction.applyToPartition(PurgeFunction.java:64) > at > org.apache.cassandra.db.partitions.PurgeFunction.applyToPartition(PurgeFunction.java:24) > at > org.apache.cassandra.db.transform.BasePartitions.hasNext(BasePartitions.java:96) > at > org.apache.cassandra.db.compaction.CompactionIterator.hasNext(CompactionIterator.java:226) > at > org.apache.cassandra.db.compaction.CompactionTask.runMayThrow(CompactionTask.java:177) > at > org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28) > at > org.apache.cassandra.db.compaction.CompactionTask.executeInternal(CompactionTask.java:78) > at > org.apache.cassandra.db.compaction.AbstractCompactionTask.execute(AbstractCompactionTask.java:60) > at > org.apache.cassandra.db.compaction.CompactionManager$8.runMayThrow(CompactionManager.java:606) > at > org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28) > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > at java.lang.Thread.run(Thread.java:745) > Since the table is pretty small, I can do a copy to, truncate the table, and > copy from, and the table is fine. But my concern is if compaction fails to > remove those rows, and the table will eventually be very large in a > production environment, the copy, truncate, and copy will no longer be an > option. -- This message was sent by Atlassian JIRA (v6.3.4#6332)