[
https://issues.apache.org/jira/browse/CASSANDRA-11978?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15356981#comment-15356981
]
Michael Frisch commented on CASSANDRA-11978:
--------------------------------------------
WARN [STREAM-IN-/10.10.26.69] 2016-06-07 06:48:04,295 StreamSession.java:646 -
[Stream #c7531810-2c7b-11e6-96f0-8363db49c0c9] Retrying for following error
java.lang.NullPointerException: null
at
org.apache.cassandra.io.sstable.format.SSTableWriter.create(SSTableWriter.java:105)
~[apache-cassandra-2.2.6-SNAPSHOT.jar:2.2.6-SNAPSHOT]
at
org.apache.cassandra.io.sstable.format.SSTableWriter.create(SSTableWriter.java:95)
~[apache-cassandra-2.2.6-SNAPSHOT.jar:2.2.6-SNAPSHOT]
at
org.apache.cassandra.streaming.StreamReader.createWriter(StreamReader.java:155)
~[apache-cassandra-2.2.6-SNAPSHOT.jar:2.2.6-SNAPSHOT]
at
org.apache.cassandra.streaming.compress.CompressedStreamReader.read(CompressedStreamReader.java:93)
~[apache-cassandra-2.2.6-SNAPSHOT.jar:2.2.6-SNAPSHOT]
at
org.apache.cassandra.streaming.messages.IncomingFileMessage$1.deserialize(IncomingFileMessage.java:49)
[apache-cassandra-2.2.6-SNAPSHOT.jar:2.2.6-SNAPSHOT]
at
org.apache.cassandra.streaming.messages.IncomingFileMessage$1.deserialize(IncomingFileMessage.java:38)
[apache-cassandra-2.2.6-SNAPSHOT.jar:2.2.6-SNAPSHOT]
at
org.apache.cassandra.streaming.messages.StreamMessage.deserialize(StreamMessage.java:58)
[apache-cassandra-2.2.6-SNAPSHOT.jar:2.2.6-SNAPSHOT]
at
org.apache.cassandra.streaming.ConnectionHandler$IncomingMessageHandler.run(ConnectionHandler.java:268)
[apache-cassandra-2.2.6-SNAPSHOT.jar:2.2.6-SNAPSHOT]
at java.lang.Thread.run(Thread.java:745) [na:1.7.0_75]
It retries multiple times until it finally fails and the repair session failed.
I tracked it down the problem to what I describe in the description by adding
multiple debug printouts in the streaming code.
> StreamReader fails to write sstable if CF directory is symlink
> --------------------------------------------------------------
>
> Key: CASSANDRA-11978
> URL: https://issues.apache.org/jira/browse/CASSANDRA-11978
> Project: Cassandra
> Issue Type: Bug
> Components: Streaming and Messaging
> Reporter: Michael Frisch
> Labels: lhf
>
> I'm using Cassandra v2.2.6. If the CF is stored as a symlink in the keyspace
> directory on disk then StreamReader.createWriter fails because
> Descriptor.fromFilename is passed the actual path on disk instead of path
> with the symlink.
> Example:
> /path/to/data/dir/Keyspace/CFName -> /path/to/data/dir/AnotherDisk/CFName
> Descriptor.fromFilename is passed "/path/to/data/dir/AnotherDisk/CFName"
> instead of "/path/to/data/dir/Keyspace/CFName", then it concludes that the
> keyspace name is "AnotherDisk" which is erroneous. I've temporarily worked
> around this by using cfs.keyspace.getName() to get the keyspace name and
> cfs.name to get the CF name as those are correct.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)