+++ This bug was initially created as a clone of Bug #588945 +++
Description of problem:
When the core file is large and sparse abrtd slows down the system up to 240x.
GDB gdb.base/bigcore.exp explicitly exploits this problem but it can be seen in other real world core dumps.
If nothing else abrtd should at least optimize write(usercorefile,zeroes) to lseek().
Version-Release number of selected component (if applicable):
abrt-1.0.9-2.fc12.x86_64
How reproducible:
Always.
Steps to Reproduce:
Download some gdb.
./configure
make
cd gdb/testsuite
make site.exp
time runtest gdb.base/bigcore.exp
service abrtd stop
time runtest gdb.base/bigcore.exp
Actual results:
real 1m41.021s (Keith Seitz has reported ~8min on his box)
real 0m2.223s
Expected results:
real <few secs>
real 0m2.223s
Additional info:
read(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
write(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
...
PID TTY STAT TIME COMMAND
12 ? S 0:01 \_ [khelper]
21699 ? D 0:02 | \_ /usr/libexec/abrt-hook-ccpp /var/cache/abrt 21696 6 502 17179869184
...
/proc/21699/fd/
lr-x------ 1 root root 64 2010-05-04 23:31 0 -> pipe:[11399566]
lrwx------ 1 root root 64 2010-05-04 23:31 1 -> /var/cache/abrt/ccpp-1273008577-21696/coredump\ (deleted)
lrwx------ 1 root root 64 2010-05-04 23:31 2 -> socket:[11401038]
l-wx------ 1 root root 64 2010-05-04 23:31 3 -> /home/.../gdb/testsuite/core.21696
--- Additional comment from jan.kratochvil on 2010-05-04 17:55:56 EDT ---
Maybe some hardlink would also help etc., unaware what abrt does there.
--- Additional comment from dvlasenk on 2010-05-07 08:47:03 EDT ---
Created an attachment (id=412336)
Proposed fix
Run tested.
--- Additional comment from dvlasenk on 2010-05-07 09:15:20 EDT ---
"time runtest gdb.base/bigcore.exp" with this patch went down from
real 9m23.708s
user 0m0.285s
sys 0m22.819s
to
real 0m35.821s
user 0m0.318s
sys 0m8.738s
Comment 1RHEL Program Management
2010-05-12 13:17:36 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux major release. Product Management has requested further
review of this request by Red Hat Engineering, for potential inclusion in a Red
Hat Enterprise Linux Major release. This request is not yet committed for
inclusion.
Comment 4releng-rhel@redhat.com
2010-07-02 18:47:35 UTC
Red Hat Enterprise Linux Beta 2 is now available and should resolve
the problem described in this bug report. This report is therefore being closed
with a resolution of CURRENTRELEASE. You may reopen this bug report if the
solution does not work for you.