Segmentation fault when added retention rule

Issue #178 resolved
Albertas Sileika created an issue

When I add simple retention rule (only domain and retention days) and try to start piler i get Segmentation fault.

kernel: [1269599.759410] piler[25262]: segfault at 7fffea000000 ip 00007f071ebbd88d sp 00007fffea2dc070 error 4 in libc-2.11.3.so[7f071eb78000+159000]

Strace: futex(0x7f8e3e36a1c0, FUTEX_WAKE_PRIVATE, 2147483647) = 0 write(3, "A\0\0\1\215\242\0\0\0\0\0@\10\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 69) = 69 read(3, "\7\0\0\2\0\0\0\2\0\0\0", 16384) = 11 poll([{fd=3, events=POLLIN|POLLPRI}], 1, 0) = 0 (Timeout) write(3, "\17\0\0\0\3SET NAMES utf8", 19) = 19 read(3, "\7\0\0\1\0\0\0\2\0\0\0", 16384) = 11 poll([{fd=3, events=POLLIN|POLLPRI}], 1, 0) = 0 (Timeout) write(3, "\27\0\0\0\3SET CHARACTER SET utf8", 27) = 27 read(3, "\7\0\0\1\0\0\0\2\0\0\0", 16384) = 11 poll([{fd=3, events=POLLIN|POLLPRI}], 1, 0) = 0 (Timeout) write(3, "\232\0\0\0\26SELECT domain, from, t"..., 158) = 158 read(3, "\f\0\0\1\0\1\0\0\0\v\0\0\0\0\0\0C\0\0\2\3def\5piler\16a"..., 16384) = 838 poll([{fd=3, events=POLLIN|POLLPRI}], 1, 0) = 0 (Timeout) write(3, "\n\0\0\0\27\1\0\0\0\0\1\0\0\0", 14) = 14 read(3, "\1\0\0\1\vC\0\0\2\3def\5piler\16archiving_ru"..., 16384) = 836 poll([{fd=3, events=POLLIN|POLLPRI}], 1, 0) = 0 (Timeout) write(3, "\5\0\0\0\31\1\0\0\0", 9) = 9 poll([{fd=3, events=POLLIN|POLLPRI}], 1, 0) = 0 (Timeout) write(3, "\232\0\0\0\26SELECTdomain,from,t"..., 158) = 158 read(3, "\f\0\0\1\0\2\0\0\0\v\0\0\0\0\0\0C\0\0\2\3def\5piler\16r"..., 16384) = 838 poll([{fd=3, events=POLLIN|POLLPRI}], 1, 0) = 0 (Timeout) write(3, "\n\0\0\0\27\2\0\0\0\0\1\0\0\0", 14) = 14 read(3, "\1\0\0\1\vC\0\0\2\3def\5piler\16retention_ru"..., 16384) = 873 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++ Segmentation fault

piler -V piler 0.1.24-master-branch, build 836, Janos SUTO sj@acts.hu

Build Date: Wed Sep 11 14:54:13 EEST 2013 ldd version: ldd (Debian EGLIBC 2.11.3-4) 2.11.3 gcc version: gcc version 4.4.5 (Debian 4.4.5-8) Configure command: ./configure --localstatedir=/var --with-database=mysql --enable-starttls --enable-tcpwrappers

mysql: mysqladmin Ver 8.42 Distrib 5.1.66, for debian-linux-gnu on x86_64 Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.

OS: Debian 6.0.7 2.6.32-5-amd64 #1 SMP Fri May 10 08:43:19 UTC 2013 x86_64 GNU/Linux

Comments (8)

  1. Albertas Sileika reporter

    The same issue exists with latest master branch.

    kernel: [1422176.023101] piler[4536]: segfault at 7fffa8000000 ip 00007f54fc24d88d sp 00007fffa8c2e760 error 4 in libc-2.11.3.so[7f54fc208000+159000]

    /usr/local/sbin/piler -V piler 0.1.25-master-branch, build 845, Janos SUTO sj@acts.hu

    Build Date: Sat Oct 12 17:02:13 EEST 2013 ldd version: ldd (Debian EGLIBC 2.11.3-4) 2.11.3 gcc version: gcc version 4.4.5 (Debian 4.4.5-8) Configure command: ./configure --localstatedir=/var --with-database=mysql --enable-starttls --enable-tcpwrappers

  2. Janos SUTO repo owner

    OK, is it possible to upgrade to Debian 7.2? Anyway I'm creating a deb package (on debian 7.x) it will be ready soon.

  3. Albertas Sileika reporter

    After upgrade to Debian 7.2 and piler recompile everything is working. Is there tool to completely remove messages for deleted domain to free disk space?

  4. Janos SUTO repo owner

    Huhh, I am glad that it works now. If you have let's say 5 domains, and want to remove messages to domain1, then you should set it retention time to the past, then run the pilerpurge utility.

    The problem is that references are in the metadata table for emails sent from domain1, however they are in rcpt table for emails sent to domain1.

  5. Log in to comment