You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Beam JIRA Bot (Jira)" <ji...@apache.org> on 2022/03/10 16:59:00 UTC

[jira] [Commented] (BEAM-13081) Portable representation of "packed bitset indicating null fields" in beam Row format is not compatible with jvm representations

    [ https://issues.apache.org/jira/browse/BEAM-13081?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17504425#comment-17504425 ] 

Beam JIRA Bot commented on BEAM-13081:
--------------------------------------

This issue is assigned but has not received an update in 30 days so it has been labeled "stale-assigned". If you are still working on the issue, please give an update and remove the label. If you are no longer working on the issue, please unassign so someone else may work on it. In 7 days the issue will be automatically unassigned.

> Portable representation of "packed bitset indicating null fields" in beam Row format is not compatible with jvm representations
> -------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: BEAM-13081
>                 URL: https://issues.apache.org/jira/browse/BEAM-13081
>             Project: Beam
>          Issue Type: Bug
>          Components: cross-language
>            Reporter: Steve Niemitz
>            Assignee: Brian Hulette
>            Priority: P2
>              Labels: stale-assigned
>          Time Spent: 6h 10m
>  Remaining Estimate: 0h
>
> The JVM RowCoder strips trailing 0s from the null-value bitmap, while both python and go expect all bits to be present in the encoded bitmap.  This causes index-out-of-range errors when trying to decode a row encoded on the JVM in other languages in some circumstances.
> For example, given a Row with 10 nullable fields, if the first 8 are null and the last two are set, the row will fail to decode in python, because the nullable bitmap will only have 1 byte, but the python coder expects 2.
> As discussed in the thread, the best solution here is probably to change the python (and go) coders to accept truncated nullable bitmaps.
>  
> More discussion here:
> [https://lists.apache.org/thread.html/r2f148e29902bda8bb0ff7106fffb8a5494295450827ad7fd17289383%40%3Cdev.beam.apache.org%3E]



--
This message was sent by Atlassian Jira
(v8.20.1#820001)