You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Erick Ramirez (JIRA)" <ji...@apache.org> on 2014/12/15 03:29:13 UTC

[jira] [Commented] (CASSANDRA-8478) sstableloader NegativeArraySizeException when deserializing to build histograms

    [ https://issues.apache.org/jira/browse/CASSANDRA-8478?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14246249#comment-14246249 ] 

Erick Ramirez commented on CASSANDRA-8478:
------------------------------------------

[~yukim] advised there might be possible corruption with the CF metadata. I have advised customer to temporarily move the {{*-Statistics.db}} files and attempt to load the data files. This is currently pending.

> sstableloader NegativeArraySizeException when deserializing to build histograms
> -------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-8478
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8478
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Tools
>            Reporter: Erick Ramirez
>             Fix For: 1.2.15
>
>
> When a customer attempts to load sstable data files copied from a production cluster, it returns the following exception:
> {code}
> $ sstableloader -d <ip> -p <rpc_port> -v <KS>/<CF>/
> null 
> java.lang.NegativeArraySizeException
> at org.apache.cassandra.utils.EstimatedHistogram$EstimatedHistogramSerializer.deserialize(EstimatedHistogram.java:266)
> at org.apache.cassandra.io.sstable.SSTableMetadata$SSTableMetadataSerializer.deserialize(SSTableMetadata.java:292)
> at org.apache.cassandra.io.sstable.SSTableMetadata$SSTableMetadataSerializer.deserialize(SSTableMetadata.java:282)
> at org.apache.cassandra.io.sstable.SSTableReader.openMetadata(SSTableReader.java:234)
> at org.apache.cassandra.io.sstable.SSTableReader.openForBatch(SSTableReader.java:162)
> at org.apache.cassandra.io.sstable.SSTableLoader$1.accept(SSTableLoader.java:100)
> at java.io.File.list(File.java:1155)
> at org.apache.cassandra.io.sstable.SSTableLoader.openSSTables(SSTableLoader.java:67)
> at org.apache.cassandra.io.sstable.SSTableLoader.stream(SSTableLoader.java:121)
> at org.apache.cassandra.tools.BulkLoader.main(BulkLoader.java:66)
> -pr,--principal kerberos principal 
> -k,--keytab keytab location 
> --ssl-keystore ssl keystore location 
> --ssl-keystore-password ssl keystore password 
> --ssl-keystore-type ssl keystore type 
> --ssl-truststore ssl truststore location 
> --ssl-truststore-password ssl truststore password 
> --ssl-truststore-type ssl truststore type 
> {code}
> It appears to be failing on this line of code:
> {code}
>         public EstimatedHistogram deserialize(DataInput dis) throws IOException
>         {
>             int size = dis.readInt();
>             long[] offsets = new long[size - 1];     <---- here
> {code}
> The same error is returned regardless of which data file is attempted. I suspect this may be due to corrupt data files or the way data is written that is not compatible with the sstableloader utility.
> NOTE: Both source and target clusters are DSE 3.2.5.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)