Jonathan A Sternberg created ARROW-3613: -------------------------------------------
Summary: [Go] Resize does not correctly update the length Key: ARROW-3613 URL: https://issues.apache.org/jira/browse/ARROW-3613 Project: Apache Arrow Issue Type: Bug Components: Go Reporter: Jonathan A Sternberg If you have the following code: {code:java} package main import ( "fmt" "github.com/apache/arrow/go/arrow/array" "github.com/apache/arrow/go/arrow/memory" ) func main() { builder := array.NewFloat64Builder(memory.DefaultAllocator) fmt.Println(builder.Len(), builder.Cap()) builder.Reserve(44) fmt.Println(builder.Len(), builder.Cap()) builder.Resize(5) fmt.Println(builder.Len(), builder.Cap()) builder.Reserve(44) for i := 0; i < 44; i++ { builder.Append(0) } fmt.Println(builder.Len(), builder.Cap()) builder.Resize(5) fmt.Println(builder.Len(), builder.Cap()) } {code} It gives the following output: {code:java} 0 0 0 64 0 32 44 64 44 32 {code} For whatever reason, the length is not recorded as 5. I understand why the capacity might not be 5, but it does seem like the length should be set to 5 if the array is resized to a length smaller than its current capacity. -- This message was sent by Atlassian JIRA (v7.6.3#76005)