[ https://issues.apache.org/jira/browse/ARROW-17330?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17598339#comment-17598339 ]
Alexey Smirnov edited comment on ARROW-17330 at 8/31/22 11:31 AM: ------------------------------------------------------------------ Pull request is ready. Issue requires verification and approval was (Author: JIRAUSER293436): Pull request is ready. Issue requires verification approval > [C#] Extend ArrowBuffer.BitmapBuilder to improve performance of array > concatenation > ----------------------------------------------------------------------------------- > > Key: ARROW-17330 > URL: https://issues.apache.org/jira/browse/ARROW-17330 > Project: Apache Arrow > Issue Type: Improvement > Components: C# > Affects Versions: 8.0.0 > Reporter: Alexey Smirnov > Assignee: Alexey Smirnov > Priority: Minor > Labels: pull-request-available > Time Spent: 20m > Remaining Estimate: 0h > > Extend ArrowBuffer.BitmapBuilder with Append method overloaded with > ReadOnlySpan<byte> parameter. > This allows to add validity bits to the builder more efficiently (especially > for cases when initial validity bits are added to newly created empty > builder). More over it makes BitmapBuilder API more consistent (for example > ArrowBuffer.Builder<T> does have such method). > Currently adding new bits to existing bitmap is implemented in > ArrayDataConcatenator, Code adds bit by bit in a cycle converting each to a > boolean value: > for (int i = 0; i < length; i++) > { > builder.Append(span.IsEmpty || BitUtility.GetBit(span, i)); > } > Initial problem was described in this email: > https://lists.apache.org/thread/kls6tjq2hclsvd16tw901ooo5soojrmb > PR: https://github.com/apache/arrow/pull/13810 -- This message was sent by Atlassian Jira (v8.20.10#820010)