Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

imap process killed with signal 6 (copy failure) #143

Closed
jrse opened this issue May 17, 2018 · 2 comments
Closed

imap process killed with signal 6 (copy failure) #143

jrse opened this issue May 17, 2018 · 2 comments
Assignees
Labels

Comments

@jrse
Copy link
Contributor

jrse commented May 17, 2018

In case copy does not work due to invalid source object,
the imap process is killed with signal 6.

=> exit gracefully.

May 17 09:58:07 imap(xxxx): Error: copy mail failed: from namespace: 200000 xxxx_u to namespace xxxx_u: src_oid: 7412843871c3fa5afc4b0000 c86de11e, des_oid: d86ce42e0e36fd5a731c0000c86de11e
May 17 09:58:07 imap(xxxx): Error: Librados obj: d86ce42e0e36fd5a731c0000c8 6de11e, could not be removed
May 17 09:58:07 imap(xxxx): Panic: file mail-index-transaction-update.c: li ne 306 (mail_index_expunge_last_append): assertion failed: (seq == t->last_new_seq)
May 17 09:58:07 imap(xxxx): Error: Raw backtrace: /opt/app/dovecot/lib/dove cot/libdovecot.so.0(+0x81900) [0x7f862007a900] -> /opt/app/dovecot/lib/dovecot/libdovecot.so.0( +0x819de) [0x7f862007a9de] -> /opt/app/dovecot/lib/dovecot/libdovecot.so.0(i_fatal+0) [0x7f8620 0258be] -> /opt/app/dovecot/lib/dovecot/libdovecot-storage.so.0(+0xc219a) [0x7f86203b919a] -> / opt/app/dovecot/lib/dovecot/libstorage_rbox_plugin.so(+0xf4cc) [0x7f861984e4cc] -> /opt/app/dov ecot/lib/dovecot/libstorage_rbox_plugin.so(_Z30rbox_transaction_save_rollbackP17mail_save_conte xt+0x120) [0x7f8619852b30] -> /opt/app/dovecot/lib/dovecot/libdovecot-storage.so.0(+0xb53bc) [0 x7f86203ac3bc] -> /opt/app/dovecot/lib/dovecot/libdovecot-storage.so.0(index_transaction_rollba ck+0x27) [0x7f86203ac747] -> /opt/app/dovecot/lib/dovecot/lib10_quota_plugin.so(+0xd29c) [0x7f8 61e2c329c] -> /opt/app/dovecot/lib/dovecot/libdovecot-storage.so.0(mailbox_transaction_rollback +0x17) [0x7f862033e247] -> dovecot/imap(+0x113fa) [0x55915c3183fa] -> dovecot/imap(command_exec +0x75) [0x55915c323de5] -> dovecot/imap(+0x1b35f) [0x55915c32235f] -> dovecot/imap(+0x1b3ef) [0 x55915c3223ef] -> dovecot/imap(client_handle_input+0x135) [0x55915c322755] -> dovecot/imap(clie nt_input+0x75) [0x55915c322c95] -> /opt/app/dovecot/lib/dovecot/libdovecot.so.0(io_loop_call_io +0x4c) [0x7f862008d3fc] -> /opt/app/dovecot/lib/dovecot/libdovecot.so.0(io_loop_handler_run_int ernal+0xd7) [0x7f862008e707] -> /opt/app/dovecot/lib/dovecot/libdovecot.so.0(io_loop_handler_ru n+0x25) [0x7f862008d485] -> /opt/app/dovecot/lib/dovecot/libdovecot.so.0(io_loop_run+0x38) [0x7 f862008d638] -> /opt/app/dovecot/lib/dovecot/libdovecot.so.0(master_service_run+0x13) [0x7f8620 02b113] -> dovecot/imap(main+0x2d8) [0x55915c316158] -> /lib64/libc.so.6(__libc_start_main+0xf5 ) [0x7f861fc786d5] -> dovecot/imap(_start+0x29) [0x55915c3162e9]
May 17 09:58:08 imap(xxxx): Fatal: master: service(imap): child 7283 killed with signal 6 (core dumped)

@jrse
Copy link
Contributor Author

jrse commented May 18, 2018

The problem is the use of io_ctx->get_last_version() which always points to the version of the last read object. If copy command is invoked several times on the same io_ctx, copy command fails with -34 ERANGE errorcode.

@jrse jrse self-assigned this May 18, 2018
@dalgaaf dalgaaf added the bug label May 23, 2018
jrse added a commit that referenced this issue May 24, 2018
- when rebuilding a index, check objects metadata to make sure
  read can handle it. If metadata is not empty skip object and print
message.
jrse added a commit that referenced this issue May 24, 2018
- Move only "moves" a object if it is moved to a another namespace (e.g.
user. public or shared mailbox. To check src object exist, we now do an
additional stat to make sure it exist. 

- interface change:  RadosStorage
  move and copy funktions now return the ceph return value instead of
true or false. 
- fix rbox-sync, invalid object.
@jrse
Copy link
Contributor Author

jrse commented May 24, 2018

done.

@jrse jrse closed this as completed May 24, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants