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.
Created attachment 85226 [details] format file of the dirfile
Created attachment 85227 [details] raw flag channel, gzipped with pygetdata
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.