You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Kouhei Sutou (Jira)" <ji...@apache.org> on 2021/01/18 20:13:00 UTC
[jira] [Updated] (ARROW-11223) [Java] BaseVariableWidthVector
setNull and getBufferSizeFor is buggy
[ https://issues.apache.org/jira/browse/ARROW-11223?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kouhei Sutou updated ARROW-11223:
---------------------------------
Description:
We may get error java.lang.IndexOutOfBoundsException: index: 15880, length: 4 (expected: range(0, 15880)).
I test on arrow 2.0.0
Reproduce code in scala:
{code}
import org.apache.arrow.vector.VarCharVector
import org.apache.arrow.memory.RootAllocator
val rootAllocator = new RootAllocator(Long.MaxValue)
val v1 = new VarCharVector("var1", rootAllocator)
v1.allocateNew()
val valueCount = 3970 // use any number >= 3970 will get similar error
for (idx <- 0 until valueCount) {
v1.setNull(idx)
}
v1.getBufferSizeFor(valueCount) # failed, get error java.lang.IndexOutOfBoundsException: index: 15880, length: 4 (expected: range(0, 15880))
{code}
was:
I test on arrow 2.0.0
Reproduce code in scala:
{code}
import org.apache.arrow.vector.VarCharVector
import org.apache.arrow.memory.RootAllocator
val rootAllocator = new RootAllocator(Long.MaxValue)
val v1 = new VarCharVector("var1", rootAllocator)
v1.allocateNew()
val valueCount = 3970 // use any number >= 3970 will get similar error
for (idx <- 0 until valueCount) {
v1.setNull(idx)
}
v1.getBufferSizeFor(valueCount) # failed, get error java.lang.IndexOutOfBoundsException: index: 15880, length: 4 (expected: range(0, 15880))
{code}
> [Java] BaseVariableWidthVector setNull and getBufferSizeFor is buggy
> --------------------------------------------------------------------
>
> Key: ARROW-11223
> URL: https://issues.apache.org/jira/browse/ARROW-11223
> Project: Apache Arrow
> Issue Type: Bug
> Components: Java
> Affects Versions: 2.0.0
> Reporter: Weichen Xu
> Priority: Major
> Labels: pull-request-available
> Time Spent: 1h 50m
> Remaining Estimate: 0h
>
> We may get error java.lang.IndexOutOfBoundsException: index: 15880, length: 4 (expected: range(0, 15880)).
> I test on arrow 2.0.0
> Reproduce code in scala:
> {code}
> import org.apache.arrow.vector.VarCharVector
> import org.apache.arrow.memory.RootAllocator
> val rootAllocator = new RootAllocator(Long.MaxValue)
> val v1 = new VarCharVector("var1", rootAllocator)
> v1.allocateNew()
> val valueCount = 3970 // use any number >= 3970 will get similar error
> for (idx <- 0 until valueCount) {
> v1.setNull(idx)
> }
> v1.getBufferSizeFor(valueCount) # failed, get error java.lang.IndexOutOfBoundsException: index: 15880, length: 4 (expected: range(0, 15880))
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)