v2.0.tip Panic: file index-storage.c: line 385 (index_storage_mailbox_open): assertion failed: (!box->opened)

View: New views
4 Messages — Rating Filter:   Alert me  

v2.0.tip Panic: file index-storage.c: line 385 (index_storage_mailbox_open): assertion failed: (!box->opened)

by Pascal Volk-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Timo,

I've tried to convert the Maildir from the first user:
/usr/local/libexec/dovecot/convert-tool j.doe@... \
/srv/mail/1/70003/70008 \
maildir:/srv/mail/1/70003/70008/Maildir \
mdbox:/srv/mail/1/70003/70008/mdbox
Panic: file index-storage.c: line 385 (index_storage_mailbox_open): assertion failed: (!box->opened)
Error: Raw backtrace: /usr/local/lib/dovecot/libdovecot.so.0 [0xf7e7ef8b] -> /usr/local/lib/dovecot/libdovecot.so.0(default_error_handler+0) [0xf7e7f01b] -> /usr/local/lib/dovecot/libdovecot.so.0(i_fatal+0) [0xf7e7f1ad] -> /usr/local/lib/dovecot/libdovecot-storage.so.0(index_storage_mailbox_open+0x9a) [0xf7f333ed] -> /usr/local/lib/dovecot/libdovecot-storage.so.0(dbox_mailbox_open+0x76) [0xf7f43cb6] -> /usr/local/lib/dovecot/libdovecot-storage.so.0(mailbox_open+0x7d) [0xf7edb915] -> /usr/local/libexec/dovecot/convert-tool [0x804a847] -> /usr/local/libexec/dovecot/convert-tool [0x804a996] -> /usr/local/libexec/dovecot/convert-tool(convert_storage+0x270) [0x804ad35] -> /usr/local/libexec/dovecot/convert-tool(main+0x333) [0x8049cc7] -> /lib/i686/cmov/libc.so.6(__libc_start_main+0xe5) [0xf7cfeb35] -> /usr/local/libexec/dovecot/convert-tool [0x8049901]
Aborted (core dumped)

The backtrace is attached.


Regards,
Pascal
--
The trapper recommends today: deadbeef.0931510@...


gdb.txt.gz (2K) Download Attachment

Re: v2.0.tip Panic: file index-storage.c: line 385 (index_storage_mailbox_open): assertion failed: (!box->opened)

by Timo Sirainen :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Wed, 2009-11-11 at 10:31 +0100, Pascal Volk wrote:
> Hi Timo,
>
> I've tried to convert the Maildir from the first user:
> /usr/local/libexec/dovecot/convert-tool j.doe@... \

convert-tool is going away. dsync is the new way to do conversion. For
example:

dsync -e 'dsync -r -O -o mail_location=maildir:~/Maildir'

This does a two-way sync between your primary storage and ~/Maildir. The
-r means that you want to keep ~/Maildir read-only. That's just in case
there are some bugs in dsync, because otherwise it does a two-way sync.

I suppose at some point I should make the command line also easier for
conversion purposes. :)


signature.asc (204 bytes) Download Attachment

Mailbox format conversion with dsync [was: Re: v2.0.tip Panic: file index-storage.c: line 385 (index_storage_mailbox_open): assertion failed: (!box->opened)]

by Pascal Volk-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 11/11/2009 06:47 PM Timo Sirainen wrote:
> convert-tool is going away. dsync is the new way to do conversion. For
> example:
>
> dsync -e 'dsync -r -O -o mail_location=maildir:~/Maildir'

For the archive:
I'm using virtual users, without system access. So I had to add
'-u user' to both dsync commands. It was also necessary to set the
permissions of the auth-userdb socket to 0666. Because each user
has its own UID and GID per domain.

doveconf -n

service auth {
  unix_listener auth-userdb {
    mode = 438
  }
}


@Timo
dsync has written a few errors to the console:

dsync-src(user): Error: file_dotlock_open() failed with file /home/user/mdbox/mailboxes/INBOX/dbox-Mails/dovecot.index.log: No such file or directory
dsync-src(user): Error: Can't create mailbox INBOX: Internal error occurred. Refer to server log for more information. [2009-11-11 23:39:47]
dsync-src(user): Error: Trying to open a non-listed mailbox with guid=d32126213b2cfb4a145d0000ea7ee395
dsync-src(user): Error: msg iteration failed: Couldn't open mailbox
dsync-src(user): Error: Trying to open a non-listed mailbox with guid=d32126213b2cfb4a145d0000ea7ee395
dsync-src(user): Error: Trying to open a non-listed mailbox with guid=d32126213b2cfb4a145d0000ea7ee395
dsync-dest(user): Error: read() from proxy client failed: EOF
[after pressing the return key I had my propmt back.]

There were only a few 'Debug: …' messages logged at 2009-11-11 23:39:47

Where can I specify the path separator?
In the maildir  was a folder like:
        Maildir/.INBOX.Lists.Dovecot
In the mdbox is now this directory:
        mdbox/mailboxes/INBOX.Lists.Dovecot

I would have expected to find a structure like:
        mdbox/mailboxes/INBOX/Lists/Dovecot


Regards,
Pascal
--
The trapper recommends today: beeffeed.0931523@...

Re: Mailbox format conversion with dsync

by Pascal Volk-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On 11/12/2009 12:42 AM Pascal Volk wrote:

> On 11/11/2009 06:47 PM Timo Sirainen wrote:
>> example:
>> dsync -e 'dsync -r -O -o mail_location=maildir:~/Maildir'
>
> For the archive:
> I'm using virtual users, without system access. So I had to add
> '-u user' to both dsync commands. It was also necessary to set the
> permissions of the auth-userdb socket to 0666. Because each user
> has its own UID and GID per domain.
>
> doveconf -n
> …
> service auth {
>   unix_listener auth-userdb {
>     mode = 438
>   }
> }
> …

Converting from one mailbox format to another one is now simple as never
before.
Assuming that the mail_location is set to mdbox:~/mdbox and before it
was maildir:~/Maildir:
execute:
        dsync convert maildir:~/Maildir

If you are root and want to covert the format of a mailbox from a
virtual user (w/o) system access, execute:
        dsync -u john.doe@... maildir:~/Maildir

Don't forget to update your sieve rules when switching to dbox or mdbox.
For example:
        fileinto "lists.dovecot";
becomes:
        fileinto "lists/dovecot";


Regards,
Pascal
--
The trapper recommends today: cafefeed.0932303@...