Bug 331289 - Buggy reading of dirfile's BITFIELDS channels coming from gzipped raw channels
Summary: Buggy reading of dirfile's BITFIELDS channels coming from gzipped raw channels
Status: CLOSED UPSTREAM
Alias: None
Product: kst
Classification: Applications
Component: datasources (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR major
Target Milestone: ---
Assignee: kst
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-02-18 23:16 UTC by Joy
Modified: 2014-11-09 07:36 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
format file of the dirfile (263 bytes, text/plain)
2014-02-19 05:38 UTC, Joy
Details
raw flag channel, gzipped with pygetdata (35 bytes, application/octet-stream)
2014-02-19 05:38 UTC, Joy
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Joy 2014-02-18 23:16:43 UTC
I write a compressed dirfile using the gzip compression of getdata.
This dirfile has an int8 raw channel, 'flag_raw',  and from this raw channel I make a 1 bit long derived bitfield channel called 'flag0'
KST the reads the raw channel 'flag_raw' ok, but reads the 'flag0' wrong. I've seen it either show no datapoints, or show all zeros.


Reproducible: Always




The gzipped compressed data was written using pygetdata. I checked, and pygetdata can read the gzipped bitfields properly.
Comment 1 Joy 2014-02-19 05:38:10 UTC
Created attachment 85226 [details]
format file of the dirfile
Comment 2 Joy 2014-02-19 05:38:52 UTC
Created attachment 85227 [details]
raw flag channel, gzipped with pygetdata
Comment 3 Joy 2014-02-19 05:44:29 UTC
It seems I was a little fast in the characterization of the bug:
In the attached dirfile, raw_flag is an INT8 raw channel incrementing from 0 to 3, then back to 0. flag0 is a bitfield from raw_flag. The data was written with GZIP encoding using pygetdata.

READING WITH KST:
When reading this dirfile in KST, flag0 i read properly, but raw_flag reads zeros.

READING WITH PYGETDATA:
When reading this dirfile in pygetdata, raw_flag is read properly, but flag0 reads random data.

If I ungzip the data first, and delete the GZIP encoding keyword in the format file, both kst and pygetdata read the data properly.


> I write a compressed dirfile using the gzip compression of getdata.
> This dirfile has an int8 raw channel, 'flag_raw',  and from this raw channel
> I make a 1 bit long derived bitfield channel called 'flag0'
> KST the reads the raw channel 'flag_raw' ok, but reads the 'flag0' wrong.
> I've seen it either show no datapoints, or show all zeros.
> 
> 
> Reproducible: Always
> 
> 
> 
> 
> The gzipped compressed data was written using pygetdata. I checked, and
> pygetdata can read the gzipped bitfields properly.