You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Дмитрий Шохов <sh...@gmail.com> on 2014/01/10 14:08:09 UTC
java.lang.StackOverflowError with big IN list
Hello I'm getting stack overflow when running prepared queries with IN
parameter and binding big list in it. Is it known limitation and I must
implement manual paging or change logic to get around this, or is it some
bug maybe...
java.lang.StackOverflowError
at
org.apache.cassandra.utils.FastByteComparisons$LexicographicalComparerHolder$UnsafeComparer.compareTo(FastByteComparisons.java:110)
at
org.apache.cassandra.utils.FastByteComparisons.compareTo(FastByteComparisons.java:41)
at
org.apache.cassandra.utils.FBUtilities.compareUnsigned(FBUtilities.java:216)
at
org.apache.cassandra.utils.ByteBufferUtil.compareUnsigned(ByteBufferUtil.java:89)
at
org.apache.cassandra.db.marshal.LongType.compareLongs(LongType.java:54)
at
org.apache.cassandra.db.marshal.LongType.compare(LongType.java:36)
at
org.apache.cassandra.db.marshal.LongType.compare(LongType.java:28)
at
org.apache.cassandra.db.ArrayBackedSortedColumns.binarySearch(ArrayBackedSortedColumns.java:170)
at
org.apache.cassandra.db.ArrayBackedSortedColumns.binarySearch(ArrayBackedSortedColumns.java:152)
at
org.apache.cassandra.db.ArrayBackedSortedColumns.getColumn(ArrayBackedSortedColumns.java:89)
at
org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:825)
at
org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
at
org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
at
org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
at .... many more same line stack elements
Cassandra 2.0.4 Java driver 2.0 rc2
Re: java.lang.StackOverflowError with big IN list
Posted by Robert Wille <rw...@fold3.com>.
I had a problem in my code that produced a big IN list (several tens of
thousands). I got a timeout error, not a stack overflow. 2.0.4 with java
driver 2.0 rc3.
From: Dave Brosius <db...@mebigfatguy.com>
Reply-To: <us...@cassandra.apache.org>
Date: Friday, January 10, 2014 at 5:53 PM
To: <us...@cassandra.apache.org>
Subject: Re: java.lang.StackOverflowError with big IN list
In the mean time you can try upping the value of your -Xss setting in
cassandra-env.sh to see if just a little push will take the problem away.
On 01/10/2014 10:18 AM, Дмитрий Шохов wrote:
>
> https://issues.apache.org/jira/browse/CASSANDRA-6567
>
>
>
>
> Thank you!
>
>
>
>
>
> 2014/1/10 Benedict Elliott Smith <be...@datastax.com>
>
>>
>> It must be a very large IN clause, which is probably not advisable. But it
>> shouldn't cause this error, and since it's an easy fix to prevent it, if you
>> file a JIRA I'll post a patch.
>>
>>
>>
>>
>>
>>
>> On 10 January 2014 13:08, Дмитрий Шохов <sh...@gmail.com> wrote:
>>
>>>
>>> Hello I'm getting stack overflow when running prepared queries with IN
>>> parameter and binding big list in it. Is it known limitation and I must
>>> implement manual paging or change logic to get around this, or is it some
>>> bug maybe...
>>>
>>>
>>>
>>>
>>> java.lang.StackOverflowError
>>>
>>> at
>>> org.apache.cassandra.utils.FastByteComparisons$LexicographicalComparerHolder
>>> $UnsafeComparer.compareTo(FastByteComparisons.java:110)
>>>
>>> at
>>> org.apache.cassandra.utils.FastByteComparisons.compareTo(FastByteComparisons
>>> .java:41)
>>>
>>> at
>>> org.apache.cassandra.utils.FBUtilities.compareUnsigned(FBUtilities.java:216)
>>>
>>> at
>>> org.apache.cassandra.utils.ByteBufferUtil.compareUnsigned(ByteBufferUtil.jav
>>> a:89)
>>>
>>> at
>>> org.apache.cassandra.db.marshal.LongType.compareLongs(LongType.java:54)
>>>
>>> at
>>> org.apache.cassandra.db.marshal.LongType.compare(LongType.java:36)
>>>
>>> at
>>> org.apache.cassandra.db.marshal.LongType.compare(LongType.java:28)
>>>
>>> at
>>> org.apache.cassandra.db.ArrayBackedSortedColumns.binarySearch(ArrayBackedSor
>>> tedColumns.java:170)
>>>
>>> at
>>> org.apache.cassandra.db.ArrayBackedSortedColumns.binarySearch(ArrayBackedSor
>>> tedColumns.java:152)
>>>
>>> at
>>> org.apache.cassandra.db.ArrayBackedSortedColumns.getColumn(ArrayBackedSorted
>>> Columns.java:89)
>>>
>>> at
>>> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectS
>>> tatement.java:825)
>>>
>>> at
>>> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectS
>>> tatement.java:826)
>>>
>>> at
>>> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectS
>>> tatement.java:826)
>>>
>>> at
>>> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectS
>>> tatement.java:826)
>>>
>>> at .... many more same line stack elements
>>>
>>>
>>>
>>>
>>>
>>>
>>> Cassandra 2.0.4 Java driver 2.0 rc2
>>>
>>>
>>
>>
>>
>>
>>
>>
>
>
>
>
Re: java.lang.StackOverflowError with big IN list
Posted by Dave Brosius <db...@mebigfatguy.com>.
In the mean time you can try upping the value of your -Xss setting in
cassandra-env.sh to see if just a little push will take the problem away.
On 01/10/2014 10:18 AM, Дмитрий Шохов wrote:
> https://issues.apache.org/jira/browse/CASSANDRA-6567
>
> Thank you!
>
>
> 2014/1/10 Benedict Elliott Smith <belliottsmith@datastax.com
> <ma...@datastax.com>>
>
> It must be a very large IN clause, which is probably not
> advisable. But it shouldn't cause this error, and since it's an
> easy fix to prevent it, if you file a JIRA I'll post a patch.
>
>
> On 10 January 2014 13:08, Дмитрий Шохов <shohou@gmail.com
> <ma...@gmail.com>> wrote:
>
> Hello I'm getting stack overflow when running prepared queries
> with IN parameter and binding big list in it. Is it known
> limitation and I must implement manual paging or change logic
> to get around this, or is it some bug maybe...
>
> java.lang.StackOverflowError
> at
> org.apache.cassandra.utils.FastByteComparisons$LexicographicalComparerHolder$UnsafeComparer.compareTo(FastByteComparisons.java:110)
> at
> org.apache.cassandra.utils.FastByteComparisons.compareTo(FastByteComparisons.java:41)
> at
> org.apache.cassandra.utils.FBUtilities.compareUnsigned(FBUtilities.java:216)
> at
> org.apache.cassandra.utils.ByteBufferUtil.compareUnsigned(ByteBufferUtil.java:89)
> at
> org.apache.cassandra.db.marshal.LongType.compareLongs(LongType.java:54)
> at
> org.apache.cassandra.db.marshal.LongType.compare(LongType.java:36)
> at
> org.apache.cassandra.db.marshal.LongType.compare(LongType.java:28)
> at
> org.apache.cassandra.db.ArrayBackedSortedColumns.binarySearch(ArrayBackedSortedColumns.java:170)
> at
> org.apache.cassandra.db.ArrayBackedSortedColumns.binarySearch(ArrayBackedSortedColumns.java:152)
> at
> org.apache.cassandra.db.ArrayBackedSortedColumns.getColumn(ArrayBackedSortedColumns.java:89)
> at
> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:825)
> at
> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
> at
> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
> at
> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
> at .... many more same line stack elements
>
> Cassandra 2.0.4 Java driver 2.0 rc2
>
>
>
Re: java.lang.StackOverflowError with big IN list
Posted by Дмитрий Шохов <sh...@gmail.com>.
https://issues.apache.org/jira/browse/CASSANDRA-6567
Thank you!
2014/1/10 Benedict Elliott Smith <be...@datastax.com>
> It must be a very large IN clause, which is probably not advisable. But it
> shouldn't cause this error, and since it's an easy fix to prevent it, if
> you file a JIRA I'll post a patch.
>
>
> On 10 January 2014 13:08, Дмитрий Шохов <sh...@gmail.com> wrote:
>
>> Hello I'm getting stack overflow when running prepared queries with IN
>> parameter and binding big list in it. Is it known limitation and I must
>> implement manual paging or change logic to get around this, or is it some
>> bug maybe...
>>
>> java.lang.StackOverflowError
>> at
>> org.apache.cassandra.utils.FastByteComparisons$LexicographicalComparerHolder$UnsafeComparer.compareTo(FastByteComparisons.java:110)
>> at
>> org.apache.cassandra.utils.FastByteComparisons.compareTo(FastByteComparisons.java:41)
>> at
>> org.apache.cassandra.utils.FBUtilities.compareUnsigned(FBUtilities.java:216)
>> at
>> org.apache.cassandra.utils.ByteBufferUtil.compareUnsigned(ByteBufferUtil.java:89)
>> at
>> org.apache.cassandra.db.marshal.LongType.compareLongs(LongType.java:54)
>> at
>> org.apache.cassandra.db.marshal.LongType.compare(LongType.java:36)
>> at
>> org.apache.cassandra.db.marshal.LongType.compare(LongType.java:28)
>> at
>> org.apache.cassandra.db.ArrayBackedSortedColumns.binarySearch(ArrayBackedSortedColumns.java:170)
>> at
>> org.apache.cassandra.db.ArrayBackedSortedColumns.binarySearch(ArrayBackedSortedColumns.java:152)
>> at
>> org.apache.cassandra.db.ArrayBackedSortedColumns.getColumn(ArrayBackedSortedColumns.java:89)
>> at
>> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:825)
>> at
>> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
>> at
>> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
>> at
>> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
>> at .... many more same line stack elements
>>
>> Cassandra 2.0.4 Java driver 2.0 rc2
>>
>
>
Re: java.lang.StackOverflowError with big IN list
Posted by Benedict Elliott Smith <be...@datastax.com>.
It must be a very large IN clause, which is probably not advisable. But it
shouldn't cause this error, and since it's an easy fix to prevent it, if
you file a JIRA I'll post a patch.
On 10 January 2014 13:08, Дмитрий Шохов <sh...@gmail.com> wrote:
> Hello I'm getting stack overflow when running prepared queries with IN
> parameter and binding big list in it. Is it known limitation and I must
> implement manual paging or change logic to get around this, or is it some
> bug maybe...
>
> java.lang.StackOverflowError
> at
> org.apache.cassandra.utils.FastByteComparisons$LexicographicalComparerHolder$UnsafeComparer.compareTo(FastByteComparisons.java:110)
> at
> org.apache.cassandra.utils.FastByteComparisons.compareTo(FastByteComparisons.java:41)
> at
> org.apache.cassandra.utils.FBUtilities.compareUnsigned(FBUtilities.java:216)
> at
> org.apache.cassandra.utils.ByteBufferUtil.compareUnsigned(ByteBufferUtil.java:89)
> at
> org.apache.cassandra.db.marshal.LongType.compareLongs(LongType.java:54)
> at
> org.apache.cassandra.db.marshal.LongType.compare(LongType.java:36)
> at
> org.apache.cassandra.db.marshal.LongType.compare(LongType.java:28)
> at
> org.apache.cassandra.db.ArrayBackedSortedColumns.binarySearch(ArrayBackedSortedColumns.java:170)
> at
> org.apache.cassandra.db.ArrayBackedSortedColumns.binarySearch(ArrayBackedSortedColumns.java:152)
> at
> org.apache.cassandra.db.ArrayBackedSortedColumns.getColumn(ArrayBackedSortedColumns.java:89)
> at
> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:825)
> at
> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
> at
> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
> at
> org.apache.cassandra.cql3.statements.SelectStatement$1$1.computeNext(SelectStatement.java:826)
> at .... many more same line stack elements
>
> Cassandra 2.0.4 Java driver 2.0 rc2
>