You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@parquet.apache.org by "Deepak Majeti (JIRA)" <ji...@apache.org> on 2016/10/04 04:33:20 UTC

[jira] [Commented] (PARQUET-735) [CPP] Newer bit packing segfaults with batch_size > 128 in Release mode build

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

Deepak Majeti commented on PARQUET-735:
---------------------------------------

@edani I was able to resolve it using a compiler barrier at the segfault location. 
{code:title=src/parquet/util/bpacking.h:3189}

      for (int i = 0; i < num_loops; ++i) {
        asm volatile("" ::: "memory");
        in = unpack1_32(in, out + i * 32);
      }
{code}
Since this is caused only in a release mode build, I assume the compiler is trying to reorder instructions which shouldn't.
thoughts ?

> [CPP] Newer bit packing segfaults with batch_size > 128 in Release mode build
> -----------------------------------------------------------------------------
>
>                 Key: PARQUET-735
>                 URL: https://issues.apache.org/jira/browse/PARQUET-735
>             Project: Parquet
>          Issue Type: Bug
>            Reporter: Deepak Majeti
>            Priority: Blocker
>         Attachments: parquet_test_gzip.parquet
>
>
> To reproduce
> 1) Modify DEFAULT_SCANNER_BATCH_SIZE = 256
> 2) Build parquet-cpp in Release mode
> 3) Run build/release/parquet_reader parquet_test_gzip.parquet (file attached)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)