gt1 / biobambam2

Tools for early stage alignment file processing
Other
93 stars 17 forks source link

bamsort-2.0.87: input reading gets stuck #70

Open mmokrejs opened 6 years ago

mmokrejs commented 6 years ago

Hi, time to time bamsort gets stuck while reading input data. At other times a top program output is logged as the last one in logfile and bamsort keeps running forever, just sleeping (a process state). If I run strace it always showed the processes were waiting for futex.

It happened again but without the top output logged. No core dumps in syslog, in current working directory.

bamsort SO=coordinate inputthreads=10 outputthreads=40 sortthreads=102 level=9 index=1 O=$sample.refsorted.bam I=$sample.bam
[V] Reading alignments from source.
$ ls -latrh /ramdisk/7916533.isrv5/
total 4.7G
drwxr-xr-x 3 root     root       60 Mar 26 19:18 ..
-rw------- 1 mmokrejs mmokrejs 4.6G Mar 26 19:25 $sample.bam
-rw------- 1 mmokrejs mmokrejs    0 Mar 26 19:27 bamsort_uv1_30871_1522110308_index.bin
-rw------- 1 mmokrejs mmokrejs    0 Mar 26 19:27 bamsort_uv1_30871_1522110308_index.meta
-rw------- 1 mmokrejs mmokrejs    0 Mar 26 19:27 bamsort_uv1_30871_1522110308_index.lin
drwxr-x--- 2 mmokrejs mmokrejs  140 Mar 26 19:27 .
-rw------- 1 mmokrejs mmokrejs  43M Mar 26 19:28 $sample.refsorted.bam
$

samtools view $sample.refsorted.bam does not output a single line so I conclude it is an empty BAM container.

$ strace -v -f -a 1024 -s 65536 -p 30871
Process 30871 attached with 11 threads
[pid 30881] futex(0x2aaaae6ce3a8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, ffffffff <unfinished ...>
[pid 30880] futex(0x2aaaae6ce3a8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, ffffffff <unfinished ...>
[pid 30879] futex(0x2aaaae6ce3a8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, ffffffff <unfinished ...>
[pid 30878] futex(0x2aaaae6ce3a8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, ffffffff <unfinished ...>
[pid 30877] futex(0x2aaaae6ce3a8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, ffffffff <unfinished ...>
[pid 30876] futex(0x2aaaae6ce3a8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, ffffffff <unfinished ...>
[pid 30875] futex(0x2aaaae6ce3a8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, ffffffff <unfinished ...>
[pid 30874] futex(0x2aaaae6ce3a8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, ffffffff <unfinished ...>
[pid 30873] futex(0x2aaaae6ce3a8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, ffffffff <unfinished ...>
[pid 30872] futex(0x2aaaae6ce3a8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, ffffffff <unfinished ...>
$ uname -a
Linux uv1 2.6.32-696.20.1.el6.x86_64 #1 SMP Fri Jan 12 15:07:59 EST 2018 x86_64 Intel(R) Xeon(R) CPU E5-4627 v2 @ 3.30GHz GenuineIntel GNU/Linux
$ cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 6.9 (Santiago)
$ bamsort --version
This is biobambam2 version 2.0.87.
biobambam2 is distributed under version 3 of the GNU General Public License.
$