reindex individual folders in GLODA
Hi, is there any way to ask Thunderbird to reindex only certain emails?
I have a situation (that I know others have had, having read various posts on this topic) where I have correspondents reply to a long conversation of email with (e.g.) an Android email client, which lazily does not properly set headers to refer to other message-ids, and as a result, Tbird doesn't consider that new message to be part of the previous conversation. This can occasionally make things difficult for me when looking up older emails.
The simple fix for me is to add a 'References: ...' header entry to that first broken email pointing back to the last email's message id which it was really in reply to. The only problem is this does nothing with 'Open in Conversation', the method I normally use to view a thread/conversation.
That is, it does nothing until I delete the global-messages-db.sqlite GLODA file in my profile (with Tbird closed) and then restart. My problem is my profile is huge and it takes (on a pretty fast computer) a good ~30 minutes to complete that rebuild! 99% of that work is unnecessary of course, and if I could ask Tbird to only rebuild the index on a handful of folders (or even just one account), it would probably greatly speed things up.
Is there any way to do this now, or does anyone thing this is a worthwhile feature request?
Thanks for any help.
Modified
Chosen solution
Very important: Did quit Thunderbird first before deleting the .MSF file?
I know I said to do it, but I just want to make sure that you did.
I have manually edited e-mail headers occasionally, but not using that add-on, and not the "References" header. I have only done it to fix broken e-mails. I move the broken e-mail to a folder in "Local Folders" that I call "Fix" so it is the only e-mail in the folder. I quit Thunderbird, then I open the actual file for the e-mail in a text editor to fix it. Then I delete the .MSF file. Then run Thunderbird. When I go to the "Fix" folder, it re-indexes the e-mails in the folder (just the one). That has worked for me.
I don't know why deleting the .MSF file doesn't work for you. Unless, like I said, you are not quitting Thunderbird first.
Read this answer in context 👍 0All Replies (8)
The mail folders in Thunderbird are stored in files and folders under "ImapMail" for IMAP, and "Mail" for POP and "Local Folders"
For each folder in Thunderbird, there is a file with no file extension which contains the messages, and a *.MSF file which contains the index for the that folder. Delete that *.MSF file.
BAM!
Forgot to mention: Do this while Thunderbird is not running, of course.
Modified
Interesting proposed solution. I wouldn't have thought of that.
Tgice, did it work?
Bruce, thanks for the suggestion. I did try that today, after adding a Message-Id to another of these broken conversations.
Even though Tbird *does* start "re-indexing" (according to the Activity Manager) the affected folders, the 'Open Message in Conv' effect I'm looking for still does not work. I tried deleting *all* the msf files for an entire account that was affected by this, and found that after all activity was complete, it was still not properly working, annoyingly enough. I thought you might've had something for me.
So then I deleted the global-messages-db.sqlite file, restarted, and 20-30m later, it was working as it has for me before, so apparently I'm stuck with that solution unless a developer (or Add On developer -- I'm using the HeaderToolsLite add-on to make the changes, it'd be great if it could just kick Tbird in whatever way needs to happen to re-index at least the one message that was just changed -- I've already contacted the developer with that idea) can point me towards how to do this or add this as a feature to a future release.
Thanks for the response and follow up.
The short answer, is don't expect a programming solution any time soon.
What happens if you use Folder Properties | Repair? Test on a small folder.
Chosen Solution
Very important: Did quit Thunderbird first before deleting the .MSF file?
I know I said to do it, but I just want to make sure that you did.
I have manually edited e-mail headers occasionally, but not using that add-on, and not the "References" header. I have only done it to fix broken e-mails. I move the broken e-mail to a folder in "Local Folders" that I call "Fix" so it is the only e-mail in the folder. I quit Thunderbird, then I open the actual file for the e-mail in a text editor to fix it. Then I delete the .MSF file. Then run Thunderbird. When I go to the "Fix" folder, it re-indexes the e-mails in the folder (just the one). That has worked for me.
I don't know why deleting the .MSF file doesn't work for you. Unless, like I said, you are not quitting Thunderbird first.
Bruce, I was closing Tbird first, and only then deleting the MSFs, but I'm pretty sure it was still not achieving the effect I want.
But get this -- I have no idea why something this simple might solve my situation (maybe you guys can guess), but I randomly tried this approach on one un-threaded message last night and then again this morning, and both times it worked:
I just went into the Inbox folder (which for me has 100+ messages in it right now), opened the Properties dialog on it. unchecked 'Include messages in this folder in Global Search results' (in 'General Information'), clicked OK, and then opened it back up and re-checked the box again, and clicked OK. This immediately threaded that newly-modified message into the Conversation!
It seems strange to me that something that simple might work (and it seems to take zero time too, so it's clearly not doing some huge re-index of several messages or similar).
The one thing I did not try to do, exactly, is move the newly changed message to a folder by itself and fiddle with that MSF, but the above solution is quicker and simpler for me anyway, so I'm happy with it, if it continues to work that is.
I hope others find this useful as well.
Thanks for taking the time to work with me on this.
If you are editing the header of an e-mail that is in an IMAP folder (ie. is also on the server, or just on the server), then that will create caos. Only do it for e-mails that are on the computer and not on the server, like in Local Folders or POP folders.
Try moving such an e-mail to a dedicated folder for "Fixing" in Local Folders, so it is alone in that folder. Then fix it, quit Thunderbird, delete the .msf file, and restart Thunderbird. Maybe having it in a folder alone will make the process work better. It works for me.
Bruce, it's good you mentioned that. The folder I'm normally dealing with *is* on the server (IMAP). I think I might have offline settings in place so that most/all of the messages are downloaded locally to Tbird too (I think I have whatever would be default in place for that).
But I maintain that the technique I mentioned has worked, twice, even when dealing with messages that are also on the server (though I am using the add-on HeaderToolsLite, not just editing a local message file).