You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Deneche A. Hakim (JIRA)" <ji...@apache.org> on 2017/06/29 15:25:00 UTC
[jira] [Assigned] (ARROW-1162) Transfer Between Empty Lists Should
Not Invoke Callback
[ https://issues.apache.org/jira/browse/ARROW-1162?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Deneche A. Hakim reassigned ARROW-1162:
---------------------------------------
Assignee: Deneche A. Hakim
> Transfer Between Empty Lists Should Not Invoke Callback
> -------------------------------------------------------
>
> Key: ARROW-1162
> URL: https://issues.apache.org/jira/browse/ARROW-1162
> Project: Apache Arrow
> Issue Type: Bug
> Components: Java - Vectors
> Affects Versions: 0.4.1
> Reporter: Sudheesh Katkam
> Assignee: Deneche A. Hakim
> Fix For: 0.5.0
>
>
> Here's the test that fails:
> {code}
> public class TestBufferOwnershipTransfer {
> //...
> private static class Pointer<T> {
> T value;
> }
> private static CallBack newTriggerCallback(final Pointer<Boolean> trigger) {
> trigger.value = false;
> return new CallBack() {
> @Override
> public void doWork() {
> trigger.value = true;
> }
> };
> }
> @Test
> public void emptyListTransferShouldNotTriggerSchemaChange() {
> final BufferAllocator allocator = new RootAllocator(Integer.MAX_VALUE);
> final Pointer<Boolean> trigger1 = new Pointer<>();
> final Pointer<Boolean> trigger2 = new Pointer<>();
> final ListVector v1 = new ListVector("v1", allocator,
> FieldType.nullable(ArrowType.Null.INSTANCE),
> newTriggerCallback(trigger1));
> final ListVector v2 = new ListVector("v2", allocator,
> FieldType.nullable(ArrowType.Null.INSTANCE),
> newTriggerCallback(trigger2));
> v1.makeTransferPair(v2).transfer();
> assertFalse(trigger1.value);
> assertFalse(trigger2.value); // fails
> }
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)