thread '<unnamed>' panicked at 'insertion index (is 604) should be <= len (is 0)', src/liballoc/vec.rs:1009:13 #73

Closed
opened 2020-07-05 23:00:54 +03:00 by ezra · 1 comment

Encountered a kernel panic on mailbox load... Managed to get a full log with the debug-tracing feature, but I'm still not 100% sure where the exact issue is coming from.

Here's the full log (login and password omitted):

    Finished dev [unoptimized + debuginfo] target(s) in 0.06s
     Running `target/debug/meli`
[2020-07-04 23:40:48]["ThreadId(3)"] src/workers.rs:362_9: Waiting for work
[2020-07-04 23:40:48]["ThreadId(4)"] src/workers.rs:362_9: Waiting for work
[2020-07-04 23:40:48]["ThreadId(5)"] src/workers.rs:362_9: Waiting for work
[2020-07-04 23:40:48]["ThreadId(6)"] src/workers.rs:362_9: Waiting for work
[2020-07-04 23:40:48]["main"] src/state.rs:355_9: inserting mailbox hashes:
[2020-07-04 23:40:49]["account 1 connecting"] melib/src/backends/imap/connection.rs:361_17: sent: M1 CAPABILITY
[2020-07-04 23:40:49]["account 1 connecting"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M1 OK Pre-login capabilities listed, post-login capabilities have more.\r\n"
[2020-07-04 23:40:49]["account 1 connecting"] melib/src/backends/imap/connection.rs:361_17: sent: M2 LOGIN "[LOGIN]" "[PASSWORD]"
[2020-07-04 23:40:50]["main"] melib/src/backends/imap/connection.rs:361_17: sent: M3 LIST "" "*"
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M3 OK List completed (0.059 + 0.480 + 0.537 secs).\r\n"
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M3 OK List completed (0.059 + 0.480 + 0.537 secs).\r\n"
[2020-07-04 23:40:51]["main"] melib/src/backends/imap.rs:1124_9: out: * LIST (\HasNoChildren \UnMarked) "." Archive
* LIST (\HasNoChildren \UnMarked \Sent) "." Sent
* LIST (\HasNoChildren \UnMarked \Drafts) "." Drafts
* LIST (\HasNoChildren \UnMarked \Junk) "." Junk
* LIST (\HasNoChildren \UnMarked \Trash) "." Trash
* LIST (\HasNoChildren) "." INBOX
M3 OK List completed (0.059 + 0.480 + 0.537 secs).

[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 8685891464711891191, imap_path: "Archive", path: "Archive", name: "Archive", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 13109668137688561691, imap_path: "Sent", path: "Sent", name: "Sent", parent: None, children: [], separator: 46, usage: RwLock { data: Sent }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 17488446012615008831, imap_path: "Drafts", path: "Drafts", name: "Drafts", parent: None, children: [], separator: 46, usage: RwLock { data: Drafts }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 7722953128399880192, imap_path: "Junk", path: "Junk", name: "Junk", parent: None, children: [], separator: 46, usage: RwLock { data: Trash }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 16363422230885575879, imap_path: "Trash", path: "Trash", name: "Trash", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 10602554343703510768, imap_path: "INBOX", path: "INBOX", name: "INBOX", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/connection.rs:361_17: sent: M4 LSUB "" "*"
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M4 OK Lsub completed (0.007 + 0.142 + 0.148 secs).\r\n"
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M4 OK Lsub completed (0.007 + 0.142 + 0.148 secs).\r\n"
[2020-07-04 23:40:51]["main"] melib/src/backends/imap.rs:1164_9: out: * LSUB (\Junk) "." Junk
* LSUB (\Sent) "." Sent
* LSUB (\Trash) "." Trash
* LSUB (\Drafts) "." Drafts
M4 OK Lsub completed (0.007 + 0.142 + 0.148 secs).

[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 7722953128399880192, imap_path: "Junk", path: "Junk", name: "Junk", parent: None, children: [], separator: 46, usage: RwLock { data: Trash }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 13109668137688561691, imap_path: "Sent", path: "Sent", name: "Sent", parent: None, children: [], separator: 46, usage: RwLock { data: Sent }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 16363422230885575879, imap_path: "Trash", path: "Trash", name: "Trash", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }
[2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 17488446012615008831, imap_path: "Drafts", path: "Drafts", name: "Drafts", parent: None, children: [], separator: 46, usage: RwLock { data: Drafts }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }
[2020-07-04 23:40:51]["main"] melib/src/backends/imap.rs:1182_12: mailboxes = {8685891464711891191: ImapMailbox { hash: 8685891464711891191, imap_path: "Archive", path: "Archive", name: "Archive", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }, 10602554343703510768: ImapMailbox { hash: 10602554343703510768, imap_path: "INBOX", path: "INBOX", name: "INBOX", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }, 7722953128399880192: ImapMailbox { hash: 7722953128399880192, imap_path: "Junk", path: "Junk", name: "Junk", parent: None, children: [], separator: 46, usage: RwLock { data: Trash }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }, 17488446012615008831: ImapMailbox { hash: 17488446012615008831, imap_path: "Drafts", path: "Drafts", name: "Drafts", parent: None, children: [], separator: 46, usage: RwLock { data: Drafts }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }, 16363422230885575879: ImapMailbox { hash: 16363422230885575879, imap_path: "Trash", path: "Trash", name: "Trash", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }, 13109668137688561691: ImapMailbox { hash: 13109668137688561691, imap_path: "Sent", path: "Sent", name: "Sent", parent: None, children: [], separator: 46, usage: RwLock { data: Sent }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }}
[2020-07-04 23:40:51]["main"] src/state.rs:128_21: hash & mailbox: 10602554343703510768 INBOX
[2020-07-04 23:40:51]["main"] src/state.rs:128_21: hash & mailbox: 17488446012615008831 Drafts
[2020-07-04 23:40:51]["main"] src/state.rs:128_21: hash & mailbox: 7722953128399880192 Junk
[2020-07-04 23:40:51]["main"] src/state.rs:128_21: hash & mailbox: 13109668137688561691 Sent
[2020-07-04 23:40:51]["main"] src/state.rs:128_21: hash & mailbox: 16363422230885575879 Trash
[2020-07-04 23:40:51]["account 1 imap connection"] melib/src/backends/imap/watch.rs:100_5: IDLE
[2020-07-04 23:40:51]["main"] src/bin.rs:363_31: &r = Ok(NewThread(ThreadId(59), "watching account 1"))
[2020-07-04 23:40:51]["ThreadId(7)"] src/workers.rs:301_33: &static_threads[&thread_id] = Worker { name: "Parsing INBOX", status: "Waiting for subworkers..", heartbeat: 1593920451 }
[2020-07-04 23:40:51]["ThreadId(3)"] src/workers.rs:372_21: Got some work
[2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap.rs:294_21: locked for get INBOX
[2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/connection.rs:361_17: sent: M5 SELECT "INBOX"
[2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M5 OK [READ-WRITE] Select completed (0.008 + 0.128 + 0.134 secs).\r\n"
[2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M5 OK [READ-WRITE] Select completed (0.008 + 0.128 + 0.134 secs).\r\n"
[2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/connection.rs:543_9: select response * FLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk $Forwarded)
* OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk $Forwarded \*)] Flags permitted.
* 1103 EXISTS
* 0 RECENT
* OK [UNSEEN 1100] First unseen.
* OK [UIDVALIDITY 1453300423] UIDs valid
* OK [UIDNEXT 1172] Predicted next UID
* OK [HIGHESTMODSEQ 2027] Highest
M5 OK [READ-WRITE] Select completed (0.008 + 0.128 + 0.134 secs).

[2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/protocol_parser.rs:980_17: select response: * OK [HIGHESTMODSEQ 2027] Highest
[2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap.rs:311_21: mailbox: INBOX examine_response: SelectResponse { exists: 1103, recent: 0, flags: (REPLIED | SEEN | TRASHED | DRAFT | FLAGGED, ["NonJunk", "$Forwarded"]), unseen: 1100, uidvalidity: 1453300423, uidnext: 1172, permanentflags: (REPLIED | SEEN | TRASHED | DRAFT | FLAGGED, ["NonJunk", "$Forwarded", "*"]), can_create_flags: true, read_only: false }
[2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/connection.rs:361_17: sent: M6 EXAMINE "INBOX"
[2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:361_17: sent: M1 CAPABILITY
[2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M6 OK [READ-ONLY] Examine completed (0.001 + 0.116 + 0.116 secs).\r\n"
[2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M6 OK [READ-ONLY] Examine completed (0.001 + 0.116 + 0.116 secs).\r\n"
[2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap/connection.rs:557_9: examine response * OK [CLOSED] Previous mailbox closed.
* FLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk $Forwarded)
* OK [PERMANENTFLAGS ()] Read-only mailbox.
* 1103 EXISTS
* 0 RECENT
* OK [UNSEEN 1100] First unseen.
* OK [UIDVALIDITY 1453300423] UIDs valid
* OK [UIDNEXT 1172] Predicted next UID
* OK [HIGHESTMODSEQ 2027] Highest
M6 OK [READ-ONLY] Examine completed (0.001 + 0.116 + 0.116 secs).

[2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap.rs:386_25: 10602554343703510768 max_uid_left= 1171
[2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap.rs:392_33: format!("UID FETCH {}:{} (UID FLAGS ENVELOPE BODYSTRUCTURE)", std :: cmp ::
        max(std :: cmp :: max(max_uid_left . saturating_sub(500), 1), 1),
        max_uid_left) = "UID FETCH 671:1171 (UID FLAGS ENVELOPE BODYSTRUCTURE)"
[2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap/connection.rs:361_17: sent: M7 UID FETCH 671:1171 (UID FLAGS ENVELOPE BODYSTRUCTURE)
[2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M1 OK Pre-login capabilities listed, post-login capabilities have more.\r\n"
[2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:361_17: sent: M2 LOGIN "[LOGIN]" "[PASSWORD]"
[2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:361_17: sent: M3 SELECT "INBOX"
[2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M3 OK [READ-WRITE] Select completed (0.002 + 0.111 + 0.112 secs).\r\n"
[2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M3 OK [READ-WRITE] Select completed (0.002 + 0.111 + 0.112 secs).\r\n"
[2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/watch.rs:155_5: select response * FLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk $Forwarded)
* OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk $Forwarded \*)] Flags permitted.
* 1103 EXISTS
* 0 RECENT
* OK [UNSEEN 1100] First unseen.
* OK [UIDVALIDITY 1453300423] UIDs valid
* OK [UIDNEXT 1172] Predicted next UID
* OK [HIGHESTMODSEQ 2027] Highest
M3 OK [READ-WRITE] Select completed (0.002 + 0.111 + 0.112 secs).

[2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/protocol_parser.rs:980_17: select response: * OK [HIGHESTMODSEQ 2027] Highest
[2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/watch.rs:196_17: &ok = SelectResponse { exists: 1103, recent: 0, flags: (REPLIED | SEEN | TRASHED | DRAFT | FLAGGED, ["NonJunk", "$Forwarded"]), unseen: 1100, uidvalidity: 1453300423, uidnext: 1172, permanentflags: (REPLIED | SEEN | TRASHED | DRAFT | FLAGGED, ["NonJunk", "$Forwarded", "*"]), can_create_flags: true, read_only: false }
[2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:361_17: sent: M4 IDLE
[2020-07-04 23:40:52]["ThreadId(7)"] src/workers.rs:301_33: &static_threads[&thread_id] = Worker { name: "watching account 1", status: "IDLEing", heartbeat: 1593920452 }
[2020-07-04 23:40:53]["ThreadId(3)"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M7 OK Fetch completed (0.068 + 0.203 + 0.012 secs).\r\n"
[2020-07-04 23:40:53]["ThreadId(3)"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M7 OK Fetch completed (0.068 + 0.203 + 0.012 secs).\r\n"
[2020-07-04 23:40:53]["ThreadId(3)"] melib/src/backends/imap.rs:410_25: fetch response is 273378 bytes and 524 lines
[2020-07-04 23:40:53]["account 1 imap connection"] melib/src/backends/imap/connection.rs:693_21: unsafe { std::str::from_utf8_unchecked(result) } = "+ idling\r\n"
[2020-07-04 23:40:53]["ThreadId(7)"] src/workers.rs:301_33: &static_threads[&thread_id] = Worker { name: "watching account 1", status: "IDLEing", heartbeat: 1593920453 }
[2020-07-04 23:40:53]["ThreadId(3)"] melib/src/backends/imap.rs:416_25: responses len is 499
thread '<unnamed>' panicked at 'insertion index (is 604) should be <= len (is 0)', src/liballoc/vec.rs:1009:13
stack backtrace:
   0: backtrace::backtrace::libunwind::trace
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86
   1: backtrace::backtrace::trace_unsynchronized
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66
   2: std::sys_common::backtrace::_print_fmt
             at src/libstd/sys_common/backtrace.rs:78
   3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
             at src/libstd/sys_common/backtrace.rs:59
   4: core::fmt::write
             at src/libcore/fmt/mod.rs:1069
   5: std::io::Write::write_fmt
             at src/libstd/io/mod.rs:1504
   6: std::sys_common::backtrace::_print
             at src/libstd/sys_common/backtrace.rs:62
   7: std::sys_common::backtrace::print
             at src/libstd/sys_common/backtrace.rs:49
   8: std::panicking::default_hook::{{closure}}
             at src/libstd/panicking.rs:198
   9: std::panicking::default_hook
             at src/libstd/panicking.rs:218
  10: std::panicking::rust_panic_with_hook
             at src/libstd/panicking.rs:511
  11: rust_begin_unwind
             at src/libstd/panicking.rs:419
  12: core::panicking::panic_fmt
             at src/libcore/panicking.rs:111
  13: alloc::vec::Vec<T>::insert::assert_failed
             at src/liballoc/vec.rs:1009
  14: alloc::vec::Vec<T>::insert
             at /home/ezra/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/liballoc/vec.rs:1014
  15: <melib::backends::imap::ImapType as melib::backends::MailBackend>::get::{{closure}}::{{closure}}
             at melib/src/backends/imap.rs:444
  16: <melib::backends::imap::ImapType as melib::backends::MailBackend>::get::{{closure}}
             at melib/src/backends/imap.rs:237
  17: core::ops::function::FnOnce::call_once{{vtable.shim}}
             at /home/ezra/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/ops/function.rs:232
  18: <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once
             at /home/ezra/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/liballoc/boxed.rs:1008
  19: melib::async_workers::Work::compute
             at melib/src/async_workers.rs:77
  20: meli::workers::spawn_worker::{{closure}}
             at src/workers.rs:373
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
[2020-07-04 23:41:09]["main"] src/bin.rs:363_31: &r = Ok(Input((Char('q'), [113])))
[2020-07-04 23:41:09]["ThreadId(4)"] src/workers.rs:365_17: received thread_end_rx, quitting
[2020-07-04 23:41:09]["ThreadId(5)"] src/workers.rs:365_17: [2020-07-04 23:41:09]["ThreadId(6)"] src/workers.rs:365_17: received thread_end_rx, quitting
received thread_end_rx, quitting
[2020-07-04 23:41:09]["ThreadId(7)"] src/workers.rs:232_25: received thread_end_rx, quitting
Encountered a kernel panic on mailbox load... Managed to get a full log with the `debug-tracing` feature, but I'm still not 100% sure where the exact issue is coming from. Here's the full log (login and password omitted): ``` Finished dev [unoptimized + debuginfo] target(s) in 0.06s Running `target/debug/meli` [2020-07-04 23:40:48]["ThreadId(3)"] src/workers.rs:362_9: Waiting for work [2020-07-04 23:40:48]["ThreadId(4)"] src/workers.rs:362_9: Waiting for work [2020-07-04 23:40:48]["ThreadId(5)"] src/workers.rs:362_9: Waiting for work [2020-07-04 23:40:48]["ThreadId(6)"] src/workers.rs:362_9: Waiting for work [2020-07-04 23:40:48]["main"] src/state.rs:355_9: inserting mailbox hashes: [2020-07-04 23:40:49]["account 1 connecting"] melib/src/backends/imap/connection.rs:361_17: sent: M1 CAPABILITY [2020-07-04 23:40:49]["account 1 connecting"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M1 OK Pre-login capabilities listed, post-login capabilities have more.\r\n" [2020-07-04 23:40:49]["account 1 connecting"] melib/src/backends/imap/connection.rs:361_17: sent: M2 LOGIN "[LOGIN]" "[PASSWORD]" [2020-07-04 23:40:50]["main"] melib/src/backends/imap/connection.rs:361_17: sent: M3 LIST "" "*" [2020-07-04 23:40:51]["main"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M3 OK List completed (0.059 + 0.480 + 0.537 secs).\r\n" [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M3 OK List completed (0.059 + 0.480 + 0.537 secs).\r\n" [2020-07-04 23:40:51]["main"] melib/src/backends/imap.rs:1124_9: out: * LIST (\HasNoChildren \UnMarked) "." Archive * LIST (\HasNoChildren \UnMarked \Sent) "." Sent * LIST (\HasNoChildren \UnMarked \Drafts) "." Drafts * LIST (\HasNoChildren \UnMarked \Junk) "." Junk * LIST (\HasNoChildren \UnMarked \Trash) "." Trash * LIST (\HasNoChildren) "." INBOX M3 OK List completed (0.059 + 0.480 + 0.537 secs). [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 8685891464711891191, imap_path: "Archive", path: "Archive", name: "Archive", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } } [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 13109668137688561691, imap_path: "Sent", path: "Sent", name: "Sent", parent: None, children: [], separator: 46, usage: RwLock { data: Sent }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } } [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 17488446012615008831, imap_path: "Drafts", path: "Drafts", name: "Drafts", parent: None, children: [], separator: 46, usage: RwLock { data: Drafts }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } } [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 7722953128399880192, imap_path: "Junk", path: "Junk", name: "Junk", parent: None, children: [], separator: 46, usage: RwLock { data: Trash }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } } [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 16363422230885575879, imap_path: "Trash", path: "Trash", name: "Trash", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } } [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 10602554343703510768, imap_path: "INBOX", path: "INBOX", name: "INBOX", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } } [2020-07-04 23:40:51]["main"] melib/src/backends/imap/connection.rs:361_17: sent: M4 LSUB "" "*" [2020-07-04 23:40:51]["main"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M4 OK Lsub completed (0.007 + 0.142 + 0.148 secs).\r\n" [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M4 OK Lsub completed (0.007 + 0.142 + 0.148 secs).\r\n" [2020-07-04 23:40:51]["main"] melib/src/backends/imap.rs:1164_9: out: * LSUB (\Junk) "." Junk * LSUB (\Sent) "." Sent * LSUB (\Trash) "." Trash * LSUB (\Drafts) "." Drafts M4 OK Lsub completed (0.007 + 0.142 + 0.148 secs). [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 7722953128399880192, imap_path: "Junk", path: "Junk", name: "Junk", parent: None, children: [], separator: 46, usage: RwLock { data: Trash }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } } [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 13109668137688561691, imap_path: "Sent", path: "Sent", name: "Sent", parent: None, children: [], separator: 46, usage: RwLock { data: Sent }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } } [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 16363422230885575879, imap_path: "Trash", path: "Trash", name: "Trash", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } } [2020-07-04 23:40:51]["main"] melib/src/backends/imap/protocol_parser.rs:386_13: f = ImapMailbox { hash: 17488446012615008831, imap_path: "Drafts", path: "Drafts", name: "Drafts", parent: None, children: [], separator: 46, usage: RwLock { data: Drafts }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } } [2020-07-04 23:40:51]["main"] melib/src/backends/imap.rs:1182_12: mailboxes = {8685891464711891191: ImapMailbox { hash: 8685891464711891191, imap_path: "Archive", path: "Archive", name: "Archive", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: false, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }, 10602554343703510768: ImapMailbox { hash: 10602554343703510768, imap_path: "INBOX", path: "INBOX", name: "INBOX", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }, 7722953128399880192: ImapMailbox { hash: 7722953128399880192, imap_path: "Junk", path: "Junk", name: "Junk", parent: None, children: [], separator: 46, usage: RwLock { data: Trash }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }, 17488446012615008831: ImapMailbox { hash: 17488446012615008831, imap_path: "Drafts", path: "Drafts", name: "Drafts", parent: None, children: [], separator: 46, usage: RwLock { data: Drafts }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }, 16363422230885575879: ImapMailbox { hash: 16363422230885575879, imap_path: "Trash", path: "Trash", name: "Trash", parent: None, children: [], separator: 46, usage: RwLock { data: Normal }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }, 13109668137688561691: ImapMailbox { hash: 13109668137688561691, imap_path: "Sent", path: "Sent", name: "Sent", parent: None, children: [], separator: 46, usage: RwLock { data: Sent }, no_select: false, is_subscribed: true, permissions: Mutex { data: MailboxPermissions { create_messages: false, remove_messages: false, set_flags: false, create_child: false, rename_messages: false, delete_messages: false, delete_mailbox: true, change_permissions: false } }, exists: Mutex { data: 0 }, unseen: Mutex { data: 0 } }} [2020-07-04 23:40:51]["main"] src/state.rs:128_21: hash & mailbox: 10602554343703510768 INBOX [2020-07-04 23:40:51]["main"] src/state.rs:128_21: hash & mailbox: 17488446012615008831 Drafts [2020-07-04 23:40:51]["main"] src/state.rs:128_21: hash & mailbox: 7722953128399880192 Junk [2020-07-04 23:40:51]["main"] src/state.rs:128_21: hash & mailbox: 13109668137688561691 Sent [2020-07-04 23:40:51]["main"] src/state.rs:128_21: hash & mailbox: 16363422230885575879 Trash [2020-07-04 23:40:51]["account 1 imap connection"] melib/src/backends/imap/watch.rs:100_5: IDLE [2020-07-04 23:40:51]["main"] src/bin.rs:363_31: &r = Ok(NewThread(ThreadId(59), "watching account 1")) [2020-07-04 23:40:51]["ThreadId(7)"] src/workers.rs:301_33: &static_threads[&thread_id] = Worker { name: "Parsing INBOX", status: "Waiting for subworkers..", heartbeat: 1593920451 } [2020-07-04 23:40:51]["ThreadId(3)"] src/workers.rs:372_21: Got some work [2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap.rs:294_21: locked for get INBOX [2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/connection.rs:361_17: sent: M5 SELECT "INBOX" [2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M5 OK [READ-WRITE] Select completed (0.008 + 0.128 + 0.134 secs).\r\n" [2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M5 OK [READ-WRITE] Select completed (0.008 + 0.128 + 0.134 secs).\r\n" [2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/connection.rs:543_9: select response * FLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk $Forwarded) * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk $Forwarded \*)] Flags permitted. * 1103 EXISTS * 0 RECENT * OK [UNSEEN 1100] First unseen. * OK [UIDVALIDITY 1453300423] UIDs valid * OK [UIDNEXT 1172] Predicted next UID * OK [HIGHESTMODSEQ 2027] Highest M5 OK [READ-WRITE] Select completed (0.008 + 0.128 + 0.134 secs). [2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/protocol_parser.rs:980_17: select response: * OK [HIGHESTMODSEQ 2027] Highest [2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap.rs:311_21: mailbox: INBOX examine_response: SelectResponse { exists: 1103, recent: 0, flags: (REPLIED | SEEN | TRASHED | DRAFT | FLAGGED, ["NonJunk", "$Forwarded"]), unseen: 1100, uidvalidity: 1453300423, uidnext: 1172, permanentflags: (REPLIED | SEEN | TRASHED | DRAFT | FLAGGED, ["NonJunk", "$Forwarded", "*"]), can_create_flags: true, read_only: false } [2020-07-04 23:40:51]["ThreadId(3)"] melib/src/backends/imap/connection.rs:361_17: sent: M6 EXAMINE "INBOX" [2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:361_17: sent: M1 CAPABILITY [2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M6 OK [READ-ONLY] Examine completed (0.001 + 0.116 + 0.116 secs).\r\n" [2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M6 OK [READ-ONLY] Examine completed (0.001 + 0.116 + 0.116 secs).\r\n" [2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap/connection.rs:557_9: examine response * OK [CLOSED] Previous mailbox closed. * FLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk $Forwarded) * OK [PERMANENTFLAGS ()] Read-only mailbox. * 1103 EXISTS * 0 RECENT * OK [UNSEEN 1100] First unseen. * OK [UIDVALIDITY 1453300423] UIDs valid * OK [UIDNEXT 1172] Predicted next UID * OK [HIGHESTMODSEQ 2027] Highest M6 OK [READ-ONLY] Examine completed (0.001 + 0.116 + 0.116 secs). [2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap.rs:386_25: 10602554343703510768 max_uid_left= 1171 [2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap.rs:392_33: format!("UID FETCH {}:{} (UID FLAGS ENVELOPE BODYSTRUCTURE)", std :: cmp :: max(std :: cmp :: max(max_uid_left . saturating_sub(500), 1), 1), max_uid_left) = "UID FETCH 671:1171 (UID FLAGS ENVELOPE BODYSTRUCTURE)" [2020-07-04 23:40:52]["ThreadId(3)"] melib/src/backends/imap/connection.rs:361_17: sent: M7 UID FETCH 671:1171 (UID FLAGS ENVELOPE BODYSTRUCTURE) [2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M1 OK Pre-login capabilities listed, post-login capabilities have more.\r\n" [2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:361_17: sent: M2 LOGIN "[LOGIN]" "[PASSWORD]" [2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:361_17: sent: M3 SELECT "INBOX" [2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M3 OK [READ-WRITE] Select completed (0.002 + 0.111 + 0.112 secs).\r\n" [2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M3 OK [READ-WRITE] Select completed (0.002 + 0.111 + 0.112 secs).\r\n" [2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/watch.rs:155_5: select response * FLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk $Forwarded) * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk $Forwarded \*)] Flags permitted. * 1103 EXISTS * 0 RECENT * OK [UNSEEN 1100] First unseen. * OK [UIDVALIDITY 1453300423] UIDs valid * OK [UIDNEXT 1172] Predicted next UID * OK [HIGHESTMODSEQ 2027] Highest M3 OK [READ-WRITE] Select completed (0.002 + 0.111 + 0.112 secs). [2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/protocol_parser.rs:980_17: select response: * OK [HIGHESTMODSEQ 2027] Highest [2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/watch.rs:196_17: &ok = SelectResponse { exists: 1103, recent: 0, flags: (REPLIED | SEEN | TRASHED | DRAFT | FLAGGED, ["NonJunk", "$Forwarded"]), unseen: 1100, uidvalidity: 1453300423, uidnext: 1172, permanentflags: (REPLIED | SEEN | TRASHED | DRAFT | FLAGGED, ["NonJunk", "$Forwarded", "*"]), can_create_flags: true, read_only: false } [2020-07-04 23:40:52]["account 1 imap connection"] melib/src/backends/imap/connection.rs:361_17: sent: M4 IDLE [2020-07-04 23:40:52]["ThreadId(7)"] src/workers.rs:301_33: &static_threads[&thread_id] = Worker { name: "watching account 1", status: "IDLEing", heartbeat: 1593920452 } [2020-07-04 23:40:53]["ThreadId(3)"] melib/src/backends/imap/connection.rs:316_33: &ret[last_line_idx..] = "M7 OK Fetch completed (0.068 + 0.203 + 0.012 secs).\r\n" [2020-07-04 23:40:53]["ThreadId(3)"] melib/src/backends/imap/protocol_parser.rs:239_9: &val = "M7 OK Fetch completed (0.068 + 0.203 + 0.012 secs).\r\n" [2020-07-04 23:40:53]["ThreadId(3)"] melib/src/backends/imap.rs:410_25: fetch response is 273378 bytes and 524 lines [2020-07-04 23:40:53]["account 1 imap connection"] melib/src/backends/imap/connection.rs:693_21: unsafe { std::str::from_utf8_unchecked(result) } = "+ idling\r\n" [2020-07-04 23:40:53]["ThreadId(7)"] src/workers.rs:301_33: &static_threads[&thread_id] = Worker { name: "watching account 1", status: "IDLEing", heartbeat: 1593920453 } [2020-07-04 23:40:53]["ThreadId(3)"] melib/src/backends/imap.rs:416_25: responses len is 499 thread '<unnamed>' panicked at 'insertion index (is 604) should be <= len (is 0)', src/liballoc/vec.rs:1009:13 stack backtrace: 0: backtrace::backtrace::libunwind::trace at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 1: backtrace::backtrace::trace_unsynchronized at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 2: std::sys_common::backtrace::_print_fmt at src/libstd/sys_common/backtrace.rs:78 3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt at src/libstd/sys_common/backtrace.rs:59 4: core::fmt::write at src/libcore/fmt/mod.rs:1069 5: std::io::Write::write_fmt at src/libstd/io/mod.rs:1504 6: std::sys_common::backtrace::_print at src/libstd/sys_common/backtrace.rs:62 7: std::sys_common::backtrace::print at src/libstd/sys_common/backtrace.rs:49 8: std::panicking::default_hook::{{closure}} at src/libstd/panicking.rs:198 9: std::panicking::default_hook at src/libstd/panicking.rs:218 10: std::panicking::rust_panic_with_hook at src/libstd/panicking.rs:511 11: rust_begin_unwind at src/libstd/panicking.rs:419 12: core::panicking::panic_fmt at src/libcore/panicking.rs:111 13: alloc::vec::Vec<T>::insert::assert_failed at src/liballoc/vec.rs:1009 14: alloc::vec::Vec<T>::insert at /home/ezra/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/liballoc/vec.rs:1014 15: <melib::backends::imap::ImapType as melib::backends::MailBackend>::get::{{closure}}::{{closure}} at melib/src/backends/imap.rs:444 16: <melib::backends::imap::ImapType as melib::backends::MailBackend>::get::{{closure}} at melib/src/backends/imap.rs:237 17: core::ops::function::FnOnce::call_once{{vtable.shim}} at /home/ezra/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/ops/function.rs:232 18: <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once at /home/ezra/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/liballoc/boxed.rs:1008 19: melib::async_workers::Work::compute at melib/src/async_workers.rs:77 20: meli::workers::spawn_worker::{{closure}} at src/workers.rs:373 note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace. [2020-07-04 23:41:09]["main"] src/bin.rs:363_31: &r = Ok(Input((Char('q'), [113]))) [2020-07-04 23:41:09]["ThreadId(4)"] src/workers.rs:365_17: received thread_end_rx, quitting [2020-07-04 23:41:09]["ThreadId(5)"] src/workers.rs:365_17: [2020-07-04 23:41:09]["ThreadId(6)"] src/workers.rs:365_17: received thread_end_rx, quitting received thread_end_rx, quitting [2020-07-04 23:41:09]["ThreadId(7)"] src/workers.rs:232_25: received thread_end_rx, quitting ```

This is on master, correct? That line in melib/src/backends/imap.rs:444 is logically wrong (it tries to insert message sequence numbers in a Vec out of order, ie if it encounters the 604 first it tries to set message_sequence_numbers[604] = message_uid even though the message_sequence_numbers is empty. I pushed a fix that creates the message_sequence cache before that line

PS: I've been working on the async branch on imap lately, which is why this was left unfixed on master

This is on master, correct? That line in `melib/src/backends/imap.rs:444` is logically wrong (it tries to insert message sequence numbers in a Vec out of order, ie if it encounters the 604 first it tries to set `message_sequence_numbers[604] = message_uid` even though the `message_sequence_numbers` is empty. I pushed a fix that creates the message_sequence cache before that line PS: I've been working on the `async` branch on imap lately, which is why this was left unfixed on `master`
Manos Pitsidianakis added the
IMAP
bug
labels 2020-07-06 11:56:18 +03:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: meli/meli#73
There is no content yet.