This is a test version of Biostars. For the public version, visit https://www.biostars.org.
bcl2fastq discard complete read

Hi,

I'm trying to demultiplex a run with Read settings: 28-8-91.

However, I don't need read 1 for this. Therefore, I set --use-bases-mask N*,I*,Y*.

Nevertheless, this consistently fails with the following output:

2020-03-25 15:43:25 [7f093bf05700] WARNING: Mismatching cluster count in positions file: Cycle #1, Tile#1101: bytes_read=4091904 bytes_expected=2988132
2020-03-25 15:43:25 [7f093bf05700] WARNING: Mismatching cluster count in filter file: Cycle #1, Tile#1101: bytes_read=4091904 bytes_expected=2988132
2020-03-25 15:43:26 [7f093df09700] WARNING: Mismatching cluster count in positions file: Cycle #1, Tile#1102: bytes_read=2988132 bytes_expected=2997896
2020-03-25 15:43:26 [7f093df09700] WARNING: Mismatching cluster count in filter file: Cycle #1, Tile#1102: bytes_read=4091904 bytes_expected=2997896
2020-03-25 15:43:26 [7f093bf05700] WARNING: Mismatching cluster count in positions file: Cycle #1, Tile#1103: bytes_read=2997896 bytes_expected=2996204
2020-03-25 15:43:26 [7f093bf05700] WARNING: Mismatching cluster count in filter file: Cycle #1, Tile#1103: bytes_read=4091904 bytes_expected=2996204
2020-03-25 15:43:27 [7f093a702700] ERROR: Thread: 8 caught an exception first: Dynamic exception type: std::out_of_range
std::exception::what: vector::_M_range_check: __n (which is 1) >= this->size() (which is 1) terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::current_exception_std_exception_wrapper<std::out_of_range>
  what():  vector::_M_range_check: __n (which is 1) >= this->size() (which is 1) Aborted (core dumped)

It seems like it's impossible to discard an entire read. If i change the basemask to YN*,I*,Y* everything works fine. I can easily solve it by just discarding R1 afterwards, but i'm just wondering why this behaviour exists.

Kind regards

demultiplexing bcl2fastq

Try --use-bases-mask n*,I*,Y*.

This appears to be a 10x dataset. You should ideally use cellranger mkfastq option for the Cellranger software to demultiplex this data. You can download from 10x Genomics here. Free registration required.

Hi Genomax. That's what i did, the formatting got lost. i used --use-bases-mask N*,I*,Y*. Sorry for that. I tried it both with capital N & normal n. Indeed it's 10x. But also other constructs in the pool. The 10x demultiplexing with cellranger went fine.

I think you need to use a lower case n*. Can you check that?

I had tried that before. Tried it again to no avail:

2020-03-25 16:48:36 [7f311c418700] WARNING: Mismatching cluster count in positions file: Cycle #1, Tile#1101: bytes_read=4091904 bytes_expected=2988132
2020-03-25 16:48:36 [7f311c418700] WARNING: Mismatching cluster count in filter file: Cycle #1, Tile#1101: bytes_read=4091904 bytes_expected=2988132
2020-03-25 16:48:37 [7f311e41c700] WARNING: Mismatching cluster count in positions file: Cycle #1, Tile#1102: bytes_read=2988132 bytes_expected=2997896
2020-03-25 16:48:37 [7f311e41c700] WARNING: Mismatching cluster count in filter file: Cycle #1, Tile#1102: bytes_read=4091904 bytes_expected=2997896
2020-03-25 16:48:37 [7f311e41c700] WARNING: Mismatching cluster count in positions file: Cycle #1, Tile#1103: bytes_read=2997896 bytes_expected=2996204
2020-03-25 16:48:37 [7f311e41c700] WARNING: Mismatching cluster count in filter file: Cycle #1, Tile#1103: bytes_read=4091904 bytes_expected=2996204
2020-03-25 16:48:37 [7f311f41e700] ERROR: Thread: 3 caught an exception first: Dynamic exception type: std::out_of_range
std::exception::what: vector::_M_range_check: __n (which is 1) >= this->size() (which is 1)

terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::current_exception_std_exception_wrapper<std::out_of_range> >'
  what():  vector::_M_range_check: __n (which is 1) >= this->size() (which is 1)
Aborted (core dumped)

1 answer

I just tested this. Looks like you have to process the first read in order for bcl2fastq to work. So no way around that.

Ok. Strange though! Thanks for your time!

Log in to answer this question.