You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by "Jonathan A Sternberg (Jira)" <ji...@apache.org> on 2019/10/22 16:49:00 UTC

[jira] [Created] (ARROW-6966) [Go] 32bit memset is null

Jonathan A Sternberg created ARROW-6966:
-------------------------------------------

             Summary: [Go] 32bit memset is null
                 Key: ARROW-6966
                 URL: https://issues.apache.org/jira/browse/ARROW-6966
             Project: Apache Arrow
          Issue Type: Bug
            Reporter: Jonathan A Sternberg


If you use a function that calls `memset.Set`, the implementation on a 32 bit machine seems to be unset. This happened in our 32 bit build here:

[https://circleci.com/gh/influxdata/influxdb/66112#tests/containers/2]
{code:java}
goroutine 66 [running]:goroutine 66 [running]:testing.tRunner.func1(0x9e1f2c0) /usr/local/go/src/testing/testing.go:830 +0x30epanic(0x899cb40, 0x9403c40) /usr/local/go/src/runtime/panic.go:522 +0x16egithub.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/memory.Set(...) /root/go/src/github.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/memory/memory.go:25github.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/array.(*builder).init(0x9e44990, 0x20) /root/go/src/github.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/array/builder.go:101 +0xc7github.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/array.(*Int64Builder).init(0x9e44990, 0x20) /root/go/src/github.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/array/numericbuilder.gen.go:102 +0x2fgithub.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/array.(*Int64Builder).Resize(0x9e44990, 0x2) /root/go/src/github.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/array/numericbuilder.gen.go:125 +0x42github.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/array.(*builder).reserve(0x9e44990, 0x1, 0x9c52464) /root/go/src/github.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/array/builder.go:138 +0x72github.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/array.(*Int64Builder).Reserve(0x9e44990, 0x1) /root/go/src/github.com/influxdata/influxdb/vendor/github.com/apache/arrow/go/arrow/array/numericbuilder.gen.go:113 +0x51github.com/influxdata/influxdb/vendor/github.com/influxdata/flux/arrow.NewInt(0x9e4a770, 0x1, 0x1, 0x0, 0x89f0360) /root/go/src/github.com/influxdata/influxdb/vendor/github.com/influxdata/flux/arrow/int.go:10 +0x6cgithub.com/influxdata/influxdb/storage/reads.(*floatTable).advance(0x9e42070, 0x0) /root/go/src/github.com/influxdata/influxdb/storage/reads/table.gen.go:91 +0x7egithub.com/influxdata/influxdb/storage/reads.newFloatTable(0x9e17740, 0xe521a160, 0x9e1b8c0, 0x0, 0x0, 0x1e, 0x0, 0x8c13be0, 0x9e448a0, 0x9e448d0, ...) /root/go/src/github.com/influxdata/influxdb/storage/reads/table.gen.go:47 +0x1c2github.com/influxdata/influxdb/storage/reads.(*filterIterator).handleRead(0x9e22840, 0x9e0d1a0, 0x8c0ce00, 0x9e48780, 0x0, 0x0) /root/go/src/github.com/influxdata/influxdb/storage/reads/reader.go:177 +0x755github.com/influxdata/influxdb/storage/reads.(*filterIterator).Do(0x9e22840, 0x9e0d170, 0x9c40070, 0x0) /root/go/src/github.com/influxdata/influxdb/storage/reads/reader.go:140 +0x138github.com/influxdata/influxdb/storage/reads_test.TestDuplicateKeys_ReadFilter(0x9e1f2c0) /root/go/src/github.com/influxdata/influxdb/storage/reads/reader_test.go:89 +0x1dftesting.tRunner(0x9e1f2c0, 0x8ad44e4) /usr/local/go/src/testing/testing.go:865 +0x97created by testing.(*T).Run /usr/local/go/src/testing/testing.go:916 +0x2b2
{code}
I added a print statement at where memset happened to print the function that was being used and got this:
{code}
<nil> [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] 0
{code}
If I set {{memset}} with a default, the code that calls into this works fine.
 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)