2.4.8 sync_client crashes

2011-04-21 Thread Rudy Gevaert

Hi,

After upgrading to 2.4.8 the sync_client crashes regularly:

Fatal error: Internal error: assertion failed: seen_db.c: 127: 
*seendbptr == NULL



Please see the attachment for a strace.

I tried reconstructing the mailbox but that didn't help...

On the syncserver I don't see any messages :(


Rudy
open("/mail/mail16/var/imap/lock/domain/u/ugent.be/v/user/victoria^montesrestrepo.lock",
 O_RDWR|O_CREAT|O_TRUNC, 0666) = 8
fcntl(8, F_SETLKW, {type=F_RDLCK, whence=SEEK_SET, start=0, len=0}) = 0
fcntl(3, F_SETLKW, {type=F_RDLCK, whence=SEEK_SET, start=0, len=0}) = 0
fstat(3, {st_mode=S_IFREG|0600, st_size=2315764, ...}) = 0
stat("/mail/mail16/var/imap/mailboxes.db", {st_mode=S_IFREG|0600, 
st_size=2315764, ...}) = 0
fcntl(3, F_SETLKW, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}) = 0
open("/mail/mail16/imap/domain/u/ugent.be/v/user/victoria^montesrestrepo/cyrus.index",
 O_RDWR) = 9
fstat(9, {st_mode=S_IFREG|0600, st_size=30752, ...}) = 0
mmap(NULL, 40960, PROT_READ, MAP_SHARED, 9, 0) = 0x7f74c7581000
fcntl(9, F_SETLKW, {type=F_RDLCK, whence=SEEK_SET, start=0, len=0}) = 0
stat("/mail/mail16/imap/domain/u/ugent.be/v/user/victoria^montesrestrepo/cyrus.header",
 {st_mode=S_IFREG|0600, st_size=219, ...}) = 0
open("/mail/mail16/imap/domain/u/ugent.be/v/user/victoria^montesrestrepo/cyrus.header",
 O_RDONLY) = 10
fstat(10, {st_mode=S_IFREG|0600, st_size=219, ...}) = 0
mmap(NULL, 219, PROT_READ, MAP_SHARED, 10, 0) = 0x7f74c7694000
munmap(0x7f74c7694000, 219) = 0
fcntl(9, F_SETLKW, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}) = 0
close(10)   = 0
close(9)= 0
munmap(0x7f74c7581000, 40960)   = 0
close(8)= 0
munmap(0x7f74c750, 528384)  = 0
write(1, "META tine^lievr...@ugent.be\n", 28META tine^lievr...@ugent.be
) = 28
sendto(7, "<182>Apr 21 16:47:33 mail16/sync"..., 74, MSG_NOSIGNAL, NULL, 0) = 74
write(6, "GET META tine^lievr...@ugent.be\r"..., 33) = 33
read(6, "* LSUB (ugent.be!INBOX^Femke \"ug"..., 4096) = 592
write(2, "Fatal error: Internal error: ass"..., 82Fatal error: Internal error: 
assertion failed: seen_db.c: 127: *seendbptr == NULL
) = 82
sendto(7, "<179>Apr 21 16:47:33 mail16/sync"..., 128, MSG_NOSIGNAL, NULL, 0) = 
128
exit_group(75)  = ?
cyrus@cyrprd3:~$  /usr/cyrus-2.4.8/bin/sync_client -C 
/etc/cyrus-ugent/conf/mail16/imapd.conf -l -v -f 
/mail/mail16/var/imap/sync/log-6813 -r -v -v 
MAILBOXES ugent.be!user.victoria^montesrestrepo
META tine^lievr...@ugent.be
Fatal error: Internal error: assertion failed: seen_db.c: 127: *seendbptr == 
NULL
cyrus@cyrprd3:~$ echo $?
75



Re: 2.4.8 sync_client crashes

2011-04-21 Thread Rudy Gevaert
As some extra info if I run sync_client -u for that user I get the crash 
too.


I have attached a gdb backtrace. I'm not sure if it will be handy.

Rudy
(gdb) step
assertionfailed (file=0x451e97 "seen_db.c", line=127, expr=0x451efd "*seendbptr 
== NULL") at assert.c:57
57  assert.c: No such file or directory.
  in assert.c
(gdb) bt
#0  assertionfailed (file=0x451e97 "seen_db.c", line=127, expr=0x451efd 
"*seendbptr == NULL") at assert.c:57
#1  0x0043291a in seen_open (user=0x7fffee71 
"tine^lievr...@ugent.be", flags=, 
seendbptr=0x7fffde48) at seen_db.c:127
#2  0x00407fd2 in do_user_seen (user=0x451e97 "seen_db.c", 
replica_seen=0x7786f0) at sync_client.c:1883
#3  0x0040b1f0 in do_user (userid=0x7fffee71 
"tine^lievr...@ugent.be") at sync_client.c:2020
#4  0x0040d1ab in main (argc=5, argv=) at 
sync_client.c:2927



Re: 2.4.8 sync_client crashes

2011-04-21 Thread Simon Amor
On 21 Apr 2011, at 16:51, Rudy Gevaert wrote:

> As some extra info if I run sync_client -u for that user I get the crash too.
> 
> I have attached a gdb backtrace. I'm not sure if it will be handy.
> 
> Rudy

Hi Rudy,

After our discussion on IRC, I would suggest the attached patch as a fix - it 
seems to follow the same syntax as the other places seen_open() is called.

Disclaimer: My C is very rusty so it might fail horribly. The patch is against 
clean 2.4.8 sources.

Perhaps Bron could give it a quick check and if it's correct?

Simon
-- 
Simon Amor
si...@leaky.org
http://www.leaky.org/


sync_client.patch
Description: Binary data


Re: 2.4.8 sync_client crashes

2011-04-21 Thread Rudy Gevaert

On 04/21/2011 06:30 PM, Simon Amor wrote:

On 21 Apr 2011, at 16:51, Rudy Gevaert wrote:


As some extra info if I run sync_client -u for that user I get the crash too.

I have attached a gdb backtrace. I'm not sure if it will be handy.

Rudy


Hi Rudy,

After our discussion on IRC, I would suggest the attached patch as a fix - it 
seems to follow the same syntax as the other places seen_open() is called.

Disclaimer: My C is very rusty so it might fail horribly. The patch is against 
clean 2.4.8 sources.

Perhaps Bron could give it a quick check and if it's correct?

Simon


Hi Simon,

I see this is fixed? on the master branch, commits:

5de9eee60d947243a4b4b2f4eccc63cff2771b30
9dacbfcd6ee077a850570508d0d97f30bfe96640

Bron? :)


Re: 2.4.8 sync_client crashes

2011-04-21 Thread Bron Gondwana
On Thu, Apr 21, 2011 at 05:30:14PM +0100, Simon Amor wrote:
> On 21 Apr 2011, at 16:51, Rudy Gevaert wrote:
> 
> > As some extra info if I run sync_client -u for that user I get the crash 
> > too.
> > 
> > I have attached a gdb backtrace. I'm not sure if it will be handy.
> > 
> > Rudy
> 
> Hi Rudy,
> 
> After our discussion on IRC, I would suggest the attached patch as a fix - it 
> seems to follow the same syntax as the other places seen_open() is called.
> 
> Disclaimer: My C is very rusty so it might fail horribly. The patch is 
> against clean 2.4.8 sources.
> 
> Perhaps Bron could give it a quick check and if it's correct?

Simon - that's correct.  I could have sworn that made it into 2.4.8 :(
I'll put it on -stable at once.

Bron.



Re: 2.4.8 sync_client crashes

2011-05-18 Thread Ondřej Surý
Any plans for new stable release?

If not I will pull the patch to Debian's 2.4.8.

O.

On Thu, Apr 21, 2011 at 20:36, Bron Gondwana  wrote:
> On Thu, Apr 21, 2011 at 05:30:14PM +0100, Simon Amor wrote:
>> On 21 Apr 2011, at 16:51, Rudy Gevaert wrote:
>>
>> > As some extra info if I run sync_client -u for that user I get the crash 
>> > too.
>> >
>> > I have attached a gdb backtrace. I'm not sure if it will be handy.
>> >
>> > Rudy
>>
>> Hi Rudy,
>>
>> After our discussion on IRC, I would suggest the attached patch as a fix - 
>> it seems to follow the same syntax as the other places seen_open() is called.
>>
>> Disclaimer: My C is very rusty so it might fail horribly. The patch is 
>> against clean 2.4.8 sources.
>>
>> Perhaps Bron could give it a quick check and if it's correct?
>
> Simon - that's correct.  I could have sworn that made it into 2.4.8 :(
> I'll put it on -stable at once.
>
> Bron.
>
>



-- 
Ondřej Surý