cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Will Hayworth (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-11293) NPE when using CQLSSTableWriter
Date Mon, 07 Mar 2016 10:18:40 GMT


Will Hayworth commented on CASSANDRA-11293:

I was, and this is very unclear. No assertions are made anywhere I can find in the docs about
{{CQLSSTableWriter}}'s thread safety or lack thereof, and when I saw this on a resolved issue:

Currently it is not possible to programatically write multiple SSTables for the same table
in parallel using the CQLSSTableWriter. 

my inference was that it was now possible to do so. That ticket also says the *same* table.
Is it really possible to use multiple {{CQLSSTableWriters}}s writing to the same directory
at the same time? I'd be astonished if that were so.

> NPE when using CQLSSTableWriter
> -------------------------------
>                 Key: CASSANDRA-11293
>                 URL:
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Tools
>         Environment: C* 3.3, C* trunk
>            Reporter: Will Hayworth
> Hi all!
> I'm trying to using CQLSSTableWriter to load a bunch of historical data into my cluster
and I'm getting NullPointerExceptions consistently after having written a few million rows
(anywhere from 0.5 to 1.5 GB of data).
> {code}
> java.lang.NullPointerException
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(
at java.lang.reflect.Constructor.newInstance( at java.util.concurrent.ForkJoinTask.getThrowableException(
at java.util.concurrent.ForkJoinTask.reportException( at java.util.concurrent.ForkJoinTask.invoke(
at$ForEachOp.evaluateParallel( at$ForEachOp$OfRef.evaluateParallel(
at at
>  at com.atlassian.engagementengine.segmentation.helenus.Daemon.main(
> Caused by: java.lang.NullPointerException at
at at
> java.util.TimSort.binarySort( at
> java.util.TimSort.sort( at
> java.util.Arrays.sort( at
> org.apache.cassandra.utils.btree.BTree$Builder.sort( at org.apache.cassandra.utils.btree.BTree$Builder.autoEnforce(
at org.apache.cassandra.utils.btree.BTree$ at
at org.apache.cassandra.db.partitions.PartitionUpdate.maybeBuild(
at org.apache.cassandra.db.partitions.PartitionUpdate.holder( at
at org.apache.cassandra.db.partitions.AbstractBTreePartition.unfilteredIterator(
> {code}
> This may be a red herring, but I started encountering this when I parallelized writes.
(I wasn't aware that doing so was safe until I saw CASSANDRA-7463; I Googled in vain for a
while before that.) I'm also definitely not passing any nulls in my {{addRow}} calls.

This message was sent by Atlassian JIRA

View raw message