Re: [Dovecot] Dovecot 1.1.1 + zlib plugin + mbox crash

2008-08-12 Thread Timo Sirainen

On Aug 5, 2008, at 11:44 AM, Dean Brooks wrote:


Is there a way to implement a --without-bzlib style option so people
can disable compilation of some of these plugins?


Added: http://hg.dovecot.org/dovecot-1.1/rev/0dd6386cbc93



PGP.sig
Description: This is a digitally signed message part


Re: [Dovecot] Dovecot 1.1.1 + zlib plugin + mbox crash

2008-08-06 Thread Chris Wakelin

Chris Wakelin wrote:

Oh, unless there are some bugs in your zlib version, such as related to
seeking..


Could be, I imagine it's as prehistoric as the bzlib :)



Right, I've tried dovecot-1.1.2 using my own zlib-1.2.3 (and 
bzlib-1.0.5) build on Solaris 8:


ldd lib20_zlib_plugin.so gives
libz.so =   /opt/RDGzlib/lib/libz.so
libbz2.so = /opt/RDGbzlib/lib/libbz2.so ...

and get the same problems.


I've been testing zlib again in Dovecot 1.1.1 (plus assert-crash fix) 
and 1.1.2 and I'm beginning to think it may be some sort of race 
condition (the Solaris 8 box is significantly slower than the SuSE one!).


If I leave a few seconds pause between the FETCH uid BODY[] 
commands, it seems not to crash, even with the same sequence. Mind you, 
I wouldn't have expected to be able to type quickly enough to cause 
problems!


Is that plausible?

Best Wishes,
Chris

--
--+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-
Christopher Wakelin,   [EMAIL PROTECTED]
IT Services Centre, The University of Reading,  Tel: +44 (0)118 378 8439
Whiteknights, Reading, RG6 2AF, UK  Fax: +44 (0)118 975 3094


Re: [Dovecot] Dovecot 1.1.1 + zlib plugin + mbox crash

2008-08-04 Thread Timo Sirainen

On Jul 24, 2008, at 1:11 PM, Dean Brooks wrote:


I cannot get Dovecot 1.1.2 to compile at all on Solaris8 with gcc
3.3.4 and newly recompiled versions of bzip2 and zlib libraries.  This
is the first time I've ever had a problem getting Dovecot to compile
under Solaris 8.

..
unknown   0x3ab8  /usr/local/lib/ 
libbz2.a(decompress.o)


I think the problem is you're trying to link libbz2.a instead of  
libbz2.so (you didn't build the .so at all?).




PGP.sig
Description: This is a digitally signed message part


Re: [Dovecot] Dovecot 1.1.1 + zlib plugin + mbox crash

2008-08-04 Thread Dean Brooks
On Mon, Aug 04, 2008 at 02:26:50PM -0400, Timo Sirainen wrote:
 On Jul 24, 2008, at 1:11 PM, Dean Brooks wrote:
 
 I cannot get Dovecot 1.1.2 to compile at all on Solaris8 with gcc
 3.3.4 and newly recompiled versions of bzip2 and zlib libraries.  This
 is the first time I've ever had a problem getting Dovecot to compile
 under Solaris 8.
 ..
 unknown   0x3ab8  /usr/local/lib/ 
 libbz2.a(decompress.o)
 
 I think the problem is you're trying to link libbz2.a instead of  
 libbz2.so (you didn't build the .so at all?).

When building the bz2 library from source, the .so shared library is
not built by default.  It also appears that when forcing the shared
library of libbz2 to be built, the compile process fails under
Solaris8 without some sort of modifications.  Ugh.

Does dovecot require a shared version of the libbz2 library to compile
correctly?  Is there no way to statically link this?  

Or, alternatively, is there a way to shut off this libbz2 plugin
completely in the configure script?

--
Dean Brooks
[EMAIL PROTECTED]





Re: [Dovecot] Dovecot 1.1.1 + zlib plugin + mbox crash

2008-08-04 Thread Timo Sirainen

On Aug 4, 2008, at 2:38 PM, Dean Brooks wrote:


Does dovecot require a shared version of the libbz2 library to compile
correctly?  Is there no way to statically link this?


You could link the libbz2.a into the imap binary (and hope that linker  
doesn't optimize it away), but you can't link .a libraries to shared  
libraries (plugins).



Or, alternatively, is there a way to shut off this libbz2 plugin
completely in the configure script?


You could afterwards remove HAVE_BZLIB from config.h and remove it  
from Makefile.


Wonder if there's a way in autoconf to detect if a library is shared..



PGP.sig
Description: This is a digitally signed message part


Re: [Dovecot] Dovecot 1.1.1 + zlib plugin + mbox crash

2008-07-24 Thread Chris Wakelin

Chris Wakelin wrote:

I can try this in Solaris 10, but I don't really see why the
OS/architecture should matter.


Oh, unless there are some bugs in your zlib version, such as related to
seeking..


Could be, I imagine it's as prehistoric as the bzlib :)



Right, I've tried dovecot-1.1.2 using my own zlib-1.2.3 (and 
bzlib-1.0.5) build on Solaris 8:


ldd lib20_zlib_plugin.so gives
libz.so =   /opt/RDGzlib/lib/libz.so
libbz2.so = /opt/RDGbzlib/lib/libbz2.so ...

and get the same problems.

I've tried building on Solaris 10 (using Sun's zlib and bzlib2) and get 
a similar problem


ldd lib20_zlib_plugin.so
libz.so.1 = /usr/lib/libz.so.1
libbz2.so.1 =   /usr/lib/libbz2.so.1 ...

After FETCH 1:167 FULL, FETCH 167 BODY[], FETCH 123 BODY[], FETCH 39 
BODY[], FETCH 23 BODY[] :-

dovecot: Jul 24 16:02:51 Error: IMAP 28535  xxx.xxx.xxx.xxx : Cached 
message offset 45576 is invalid for mbox file (read-only mbox stream)
dovecot: Jul 24 16:02:51 Error: IMAP 28535  xxx.xxx.xxx.xxx : Cached 
message offset 45576 is invalid for mbox file (read-only mbox stream)
dovecot: Jul 24 16:02:51 Error: IMAP 28535  xxx.xxx.xxx.xxx : Losing 
sync for mail uid=23 in mbox file (read-only mbox stream)
dovecot: Jul 24 16:02:51 Error: IMAP 28535  xxx.xxx.xxx.xxx : 
Unexpectedly lost From-line at 45576
dovecot: Jul 24 16:02:51 Error: IMAP 28535  xxx.xxx.xxx.xxx : 
Unexpectedly lost From-line at 45576
dovecot: Jul 24 16:02:51 Error: IMAP 28535  xxx.xxx.xxx.xxx : Couldn't 
get mbox size
dovecot: Jul 24 16:02:51 Info: IMAP 28535  xxx.xxx.xxx.xxx : 
Disconnected: Internal error occurred. Refer to server log for more 
information. [2008-07-24 16:02:51] bytes=114/90517


On the SuSE box, it's fine. However, on all three boxes when I use bzip2 
instead (i.e. same folder, bzipped) I get a segfault crash after just 
FETCH 1:167 FULL :-



dovecot: Jul 24 16:17:29 Error: child 28544 (imap) killed with signal 11


backtrace on the Solaris 8 version:


#0  0xff2505a0 in memmove ()
   from /usr/platform/SUNW,Ultra-250/lib/libc_psr.so.1
#1  0xa6d60 in i_stream_compress (stream=0xfc930) at istream.c:301
#2  0xff1414e4 in i_stream_zlib_seek (stream=0xfc930, v_offset=0, mark=true)
at istream-zlib.c:173
#3  0xa6920 in i_stream_seek_mark (stream=0xfc958, v_offset=4443332646273026)
at istream.c:139
#4  0x4f654 in istream_raw_mbox_seek (stream=0x1142f0, offset=0)
at istream-raw-mbox.c:625
#5  0x45cd8 in mbox_file_seek (mbox=0x10e6b8, view=0x4868b0, seq=1,
deleted_r=0xffbeee37) at mbox-file.c:171
#6  0x4739c in mbox_mail_seek (mail=0x10edd8) at mbox-mail.c:70
#7  0x474f4 in mbox_mail_get_received_date (_mail=0x,
date_r=0xffbeef8c) at mbox-mail.c:103
#8  0x6acf4 in mail_get_received_date (mail=0x, date_r=0xffbeef8c)
at mail.c:79
#9  0x2aeb0 in fetch_internaldate (ctx=0x10edd8, mail=0x10edd8, context=0x0)
at imap-fetch.c:552
#10 0x2a4fc in imap_fetch_more (ctx=0xf6180) at imap-fetch.c:309
#11 0x2a744 in imap_fetch (ctx=0xf6180) at imap-fetch.c:361
#12 0x23628 in cmd_fetch (cmd=0xf60f0) at cmd-fetch.c:152
#13 0x28784 in client_command_input (cmd=0xf60f0) at client.c:580
#14 0x28628 in client_command_input (cmd=0xf60f0) at client.c:629
#15 0x2880c in client_handle_next_command (client=0xf5e90,
remove_io_r=0xffbef2bf) at client.c:670
#16 0x288f4 in client_handle_input (client=0xf5e90) at client.c:680
#17 0x28a40 in client_input (client=0xf5e90) at client.c:725
#18 0xaa1a4 in io_loop_handler_run (ioloop=0xf29e8) at ioloop-poll.c:200
#19 0xa99d4 in io_loop_run (ioloop=0xf29e8) at ioloop.c:308
#20 0x31cf4 in main (argc=0, argv=0xffbef504, envp=0xffbef514) at main.c:293


I could send you the dovecot index files at each stage of the zlib test 
if that would help?


Chris

--
--+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+-
Christopher Wakelin,   [EMAIL PROTECTED]
IT Services Centre, The University of Reading,  Tel: +44 (0)118 378 8439
Whiteknights, Reading, RG6 2AF, UK  Fax: +44 (0)118 975 3094


Re: [Dovecot] Dovecot 1.1.1 + zlib plugin + mbox crash

2008-07-23 Thread Timo Sirainen
On Wed, 2008-07-23 at 15:58 +0100, Chris Wakelin wrote:
 I've tried this on both Solaris 8 and SuSE Enterprise 9 (64-bit).
 
 I get a assert-crash when using a gzipped mbox folder
..
 istream-raw-mbox.c: line 363 (i_stream_create_raw_mbox): assertion 
 failed: (input-v_offset == 0)

Fixed: http://hg.dovecot.org/dovecot-1.1/rev/0c67730b9002



signature.asc
Description: This is a digitally signed message part