[jira] [Comment Edited] (CASSANDRA-8238) NPE in SizeTieredCompactionStrategy.filterColdSSTables
[ https://issues.apache.org/jira/browse/CASSANDRA-8238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14359370#comment-14359370 ] Fredrik LS edited comment on CASSANDRA-8238 at 3/13/15 10:24 AM: - Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the SSTableLoader has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the clientMode flag is set will have the readMeter set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the NullPointerException when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Regards /Fredrik was (Author: fredrikl74): Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the SSTableLoader has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the clientMode flag is set will have the readMeter set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the NullPointerException when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Hope my analyze is correct and that the code formatting isn't too bad. Regards /Fredrik NPE in SizeTieredCompactionStrategy.filterColdSSTables -- Key: CASSANDRA-8238 URL: https://issues.apache.org/jira/browse/CASSANDRA-8238 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.1.3 Attachments: 0001-assert-that-readMeter-is-not-null.patch {noformat} ERROR [CompactionExecutor:15] 2014-10-31 15:28:32,318 CassandraDaemon.java:153 - Exception in thread Thread[CompactionExecutor:15,1,main] java.lang.NullPointerException: null at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.filterColdSSTables(SizeTieredCompactionStrategy.java:181) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundSSTables(SizeTieredCompactionStrategy.java:83) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundTask(SizeTieredCompactionStrategy.java:267) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.CompactionManager$BackgroundCompactionTask.run(CompactionManager.java:226) ~[apache-cassandra-2.1.1.jar:2.1.1] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[na:1.7.0_72] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_72] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_72] {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Comment Edited] (CASSANDRA-8238) NPE in SizeTieredCompactionStrategy.filterColdSSTables
[ https://issues.apache.org/jira/browse/CASSANDRA-8238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14359370#comment-14359370 ] Fredrik LS edited comment on CASSANDRA-8238 at 3/13/15 11:12 AM: - Reproduced this in 2.1.3. I'm not very familiar with the Cassandra codebase but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the SSTableLoader has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the clientMode flag is set will have the readMeter set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the NullPointerException when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Regards /Fredrik was (Author: fredrikl74): Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the SSTableLoader has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the clientMode flag is set will have the readMeter set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the NullPointerException when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Regards /Fredrik NPE in SizeTieredCompactionStrategy.filterColdSSTables -- Key: CASSANDRA-8238 URL: https://issues.apache.org/jira/browse/CASSANDRA-8238 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.1.3 Attachments: 0001-assert-that-readMeter-is-not-null.patch {noformat} ERROR [CompactionExecutor:15] 2014-10-31 15:28:32,318 CassandraDaemon.java:153 - Exception in thread Thread[CompactionExecutor:15,1,main] java.lang.NullPointerException: null at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.filterColdSSTables(SizeTieredCompactionStrategy.java:181) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundSSTables(SizeTieredCompactionStrategy.java:83) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundTask(SizeTieredCompactionStrategy.java:267) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.CompactionManager$BackgroundCompactionTask.run(CompactionManager.java:226) ~[apache-cassandra-2.1.1.jar:2.1.1] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[na:1.7.0_72] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_72] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_72] {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Comment Edited] (CASSANDRA-8238) NPE in SizeTieredCompactionStrategy.filterColdSSTables
[ https://issues.apache.org/jira/browse/CASSANDRA-8238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14359370#comment-14359370 ] Fredrik LS edited comment on CASSANDRA-8238 at 3/12/15 8:47 PM: Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the SSTableLoader has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the {code}clientMode{code} flag is set will have the {code}readMeter{code} set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the {code}NullPointerException{code} when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Hope my analyze is correct and that the code formatting isn't too bad. Regards /Fredrik was (Author: fredrikl74): Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the {code}SSTableLoader{code} has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the {code}clientMode{code} flag is set will have the {code}readMeter{code} set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the {code}NullPointerException{code} when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Hope my analyze is correct and that the code formatting isn't too bad. Regards /Fredrik NPE in SizeTieredCompactionStrategy.filterColdSSTables -- Key: CASSANDRA-8238 URL: https://issues.apache.org/jira/browse/CASSANDRA-8238 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.1.3 Attachments: 0001-assert-that-readMeter-is-not-null.patch {noformat} ERROR [CompactionExecutor:15] 2014-10-31 15:28:32,318 CassandraDaemon.java:153 - Exception in thread Thread[CompactionExecutor:15,1,main] java.lang.NullPointerException: null at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.filterColdSSTables(SizeTieredCompactionStrategy.java:181) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundSSTables(SizeTieredCompactionStrategy.java:83) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundTask(SizeTieredCompactionStrategy.java:267) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.CompactionManager$BackgroundCompactionTask.run(CompactionManager.java:226) ~[apache-cassandra-2.1.1.jar:2.1.1] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[na:1.7.0_72] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_72] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_72] {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Comment Edited] (CASSANDRA-8238) NPE in SizeTieredCompactionStrategy.filterColdSSTables
[ https://issues.apache.org/jira/browse/CASSANDRA-8238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14359370#comment-14359370 ] Fredrik LS edited comment on CASSANDRA-8238 at 3/12/15 8:47 PM: Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the SSTableLoader has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the clientMode flag is set will have the readMeter set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the {code}NullPointerException{code} when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Hope my analyze is correct and that the code formatting isn't too bad. Regards /Fredrik was (Author: fredrikl74): Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the SSTableLoader has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the clientMode flag is set will have the {code}readMeter{code} set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the {code}NullPointerException{code} when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Hope my analyze is correct and that the code formatting isn't too bad. Regards /Fredrik NPE in SizeTieredCompactionStrategy.filterColdSSTables -- Key: CASSANDRA-8238 URL: https://issues.apache.org/jira/browse/CASSANDRA-8238 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.1.3 Attachments: 0001-assert-that-readMeter-is-not-null.patch {noformat} ERROR [CompactionExecutor:15] 2014-10-31 15:28:32,318 CassandraDaemon.java:153 - Exception in thread Thread[CompactionExecutor:15,1,main] java.lang.NullPointerException: null at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.filterColdSSTables(SizeTieredCompactionStrategy.java:181) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundSSTables(SizeTieredCompactionStrategy.java:83) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundTask(SizeTieredCompactionStrategy.java:267) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.CompactionManager$BackgroundCompactionTask.run(CompactionManager.java:226) ~[apache-cassandra-2.1.1.jar:2.1.1] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[na:1.7.0_72] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_72] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_72] {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Comment Edited] (CASSANDRA-8238) NPE in SizeTieredCompactionStrategy.filterColdSSTables
[ https://issues.apache.org/jira/browse/CASSANDRA-8238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14359370#comment-14359370 ] Fredrik LS edited comment on CASSANDRA-8238 at 3/12/15 8:48 PM: Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the SSTableLoader has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the clientMode flag is set will have the readMeter set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the NullPointerException when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Hope my analyze is correct and that the code formatting isn't too bad. Regards /Fredrik was (Author: fredrikl74): Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the SSTableLoader has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the clientMode flag is set will have the readMeter set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the {code}NullPointerException{code} when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Hope my analyze is correct and that the code formatting isn't too bad. Regards /Fredrik NPE in SizeTieredCompactionStrategy.filterColdSSTables -- Key: CASSANDRA-8238 URL: https://issues.apache.org/jira/browse/CASSANDRA-8238 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.1.3 Attachments: 0001-assert-that-readMeter-is-not-null.patch {noformat} ERROR [CompactionExecutor:15] 2014-10-31 15:28:32,318 CassandraDaemon.java:153 - Exception in thread Thread[CompactionExecutor:15,1,main] java.lang.NullPointerException: null at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.filterColdSSTables(SizeTieredCompactionStrategy.java:181) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundSSTables(SizeTieredCompactionStrategy.java:83) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundTask(SizeTieredCompactionStrategy.java:267) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.CompactionManager$BackgroundCompactionTask.run(CompactionManager.java:226) ~[apache-cassandra-2.1.1.jar:2.1.1] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[na:1.7.0_72] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_72] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_72] {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Comment Edited] (CASSANDRA-8238) NPE in SizeTieredCompactionStrategy.filterColdSSTables
[ https://issues.apache.org/jira/browse/CASSANDRA-8238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14359370#comment-14359370 ] Fredrik LS edited comment on CASSANDRA-8238 at 3/12/15 8:47 PM: Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the SSTableLoader has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the clientMode flag is set will have the {code}readMeter{code} set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the {code}NullPointerException{code} when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Hope my analyze is correct and that the code formatting isn't too bad. Regards /Fredrik was (Author: fredrikl74): Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the SSTableLoader has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the {code}clientMode{code} flag is set will have the {code}readMeter{code} set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the {code}NullPointerException{code} when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Hope my analyze is correct and that the code formatting isn't too bad. Regards /Fredrik NPE in SizeTieredCompactionStrategy.filterColdSSTables -- Key: CASSANDRA-8238 URL: https://issues.apache.org/jira/browse/CASSANDRA-8238 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.1.3 Attachments: 0001-assert-that-readMeter-is-not-null.patch {noformat} ERROR [CompactionExecutor:15] 2014-10-31 15:28:32,318 CassandraDaemon.java:153 - Exception in thread Thread[CompactionExecutor:15,1,main] java.lang.NullPointerException: null at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.filterColdSSTables(SizeTieredCompactionStrategy.java:181) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundSSTables(SizeTieredCompactionStrategy.java:83) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundTask(SizeTieredCompactionStrategy.java:267) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.CompactionManager$BackgroundCompactionTask.run(CompactionManager.java:226) ~[apache-cassandra-2.1.1.jar:2.1.1] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[na:1.7.0_72] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_72] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_72] {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-8238) NPE in SizeTieredCompactionStrategy.filterColdSSTables
[ https://issues.apache.org/jira/browse/CASSANDRA-8238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14359370#comment-14359370 ] Fredrik LS commented on CASSANDRA-8238: --- Reproduced this in 2.1.3. I'm not very familiar with the Cassandra code base but took me the liberty to do some debugging. This occurs when doing bulkloading from JMX. The problem is that the {code}SSTableLoader{code} has a static initializer setting {code} static { Config.setClientMode(true); } {code} (I guess going through JMX shouldn't be considered client mode but only when running SSTableLoader standalone). Every SSTableReader created after the {code}clientMode{code} flag is set will have the {code}readMeter{code} set to null according to the SSTableReader constructor. The SSTableReader for SSTables existing at startup will have the readMeter set to some value but when JMX bulkloading is used, there will be a mix of SSTableReader for the same CF both with readMeter with a value and readMeter with null. That in combination with hot and cold SSTables in {code}SizeTieredCompactionStrategy.filterColdSSTables(...){code} will trigger the {code}NullPointerException{code} when CompactionExecutor kicks in trying to compact the hot SSTables already existing from startup which have a readMeter set and the just streamed cold SSTables from JMX bulkloading which have readMeter set to null. Hope my analyze is correct and that the code formatting isn't too bad. Regards /Fredrik NPE in SizeTieredCompactionStrategy.filterColdSSTables -- Key: CASSANDRA-8238 URL: https://issues.apache.org/jira/browse/CASSANDRA-8238 Project: Cassandra Issue Type: Bug Components: Core Reporter: Tyler Hobbs Assignee: Marcus Eriksson Fix For: 2.1.3 Attachments: 0001-assert-that-readMeter-is-not-null.patch {noformat} ERROR [CompactionExecutor:15] 2014-10-31 15:28:32,318 CassandraDaemon.java:153 - Exception in thread Thread[CompactionExecutor:15,1,main] java.lang.NullPointerException: null at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.filterColdSSTables(SizeTieredCompactionStrategy.java:181) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundSSTables(SizeTieredCompactionStrategy.java:83) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getNextBackgroundTask(SizeTieredCompactionStrategy.java:267) ~[apache-cassandra-2.1.1.jar:2.1.1] at org.apache.cassandra.db.compaction.CompactionManager$BackgroundCompactionTask.run(CompactionManager.java:226) ~[apache-cassandra-2.1.1.jar:2.1.1] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) ~[na:1.7.0_72] at java.util.concurrent.FutureTask.run(FutureTask.java:262) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) ~[na:1.7.0_72] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_72] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_72] {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-8067) NullPointerException in KeyCacheSerializer
[ https://issues.apache.org/jira/browse/CASSANDRA-8067?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14350095#comment-14350095 ] Fredrik LS commented on CASSANDRA-8067: --- Would it be safe to patch a 2.1.3 cluster with the attatched (8067.txt) patch? NullPointerException in KeyCacheSerializer -- Key: CASSANDRA-8067 URL: https://issues.apache.org/jira/browse/CASSANDRA-8067 Project: Cassandra Issue Type: Bug Components: Core Reporter: Eric Leleu Assignee: Aleksey Yeschenko Fix For: 2.1.4 Attachments: 8067.txt Hi, I have this stack trace in the logs of Cassandra server (v2.1) {code} ERROR [CompactionExecutor:14] 2014-10-06 23:32:02,098 CassandraDaemon.java:166 - Exception in thread Thread[CompactionExecutor:14,1,main] java.lang.NullPointerException: null at org.apache.cassandra.service.CacheService$KeyCacheSerializer.serialize(CacheService.java:475) ~[apache-cassandra-2.1.0.jar:2.1.0] at org.apache.cassandra.service.CacheService$KeyCacheSerializer.serialize(CacheService.java:463) ~[apache-cassandra-2.1.0.jar:2.1.0] at org.apache.cassandra.cache.AutoSavingCache$Writer.saveCache(AutoSavingCache.java:225) ~[apache-cassandra-2.1.0.jar:2.1.0] at org.apache.cassandra.db.compaction.CompactionManager$11.run(CompactionManager.java:1061) ~[apache-cassandra-2.1.0.jar:2.1.0] at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[na:1.7.0] at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) ~[na:1.7.0] at java.util.concurrent.FutureTask.run(Unknown Source) ~[na:1.7.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [na:1.7.0] at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [na:1.7.0] at java.lang.Thread.run(Unknown Source) [na:1.7.0] {code} It may not be critical because this error occured in the AutoSavingCache. However the line 475 is about the CFMetaData so it may hide bigger issue... {code} 474 CFMetaData cfm = Schema.instance.getCFMetaData(key.desc.ksname, key.desc.cfname); 475 cfm.comparator.rowIndexEntrySerializer().serialize(entry, out); {code} Regards, Eric -- This message was sent by Atlassian JIRA (v6.3.4#6332)