For reasons unknown, all my mail disappeared. my contacts and profile still work and new mail is showing up, but all the mail is gone. When i look to the 'mail' folder there is still about a gig of data.
Is there any way to repair the index and fix this. I know i can make a new account and import, but i will lose all of the labeling won't i?
Is there any way to repair the index and fix this. I know i can make a new account and import
Yes. You export your contacts, close down Opera, rename the mail folder, start Opera and add your accounts back in. Then, you import each POP account's messages from the old mail folder. You do that by going to "Menu -> settings -> import and export -> import mail -> import generic mbox -> add folder" and point it to the store/accountN folder for the account in the old mail folder where N is the number for the account as seen in accounts.ini.
Then, for any duplicate message you get, you delete the imported copies and keep the newly-fetched ones that were still on the server that show in "All Messages/Unread".
Then, you can import your contacts.
but i will lose all of the labeling won't i?
However, you can copy the labels to the new install by copying the [index N] sections for the labels (look for them by name=) in the old index.ini to the new index.ini. Before you insert them into the new index.ini (the one created with the new mail folder that Opera creates when it starts back up after renaming the mail folder) though, you have to change their numbers so they continue on from where the numbers in the new index.ini leave off. So, if the last index in the new index.ini is [Index 4500], the first index section you insert into the new index.ini will be Index 4501 and so on. You also have to make sure the Parent ID setting for each index is correct (usually you don't have to mess with that). You also have to make sure the id for each of those indexes you insert isn't already in use in the file.
Doing that (while Opera is close), you can get your labels back. You'll even get your rules back. The rules should even run again too, but if they don't, right-click on each label's properties, goto "options", uncheck "apply only to new messages" and close out of that dialog. Or, change the setting, close, go back in and change it back.
What won't be restored in the labels are messages that you manually moved/added to those labels. For those messages, you'll have to re-label them. Another thing that won't be restored is learned rules for messages (for when you had "learned from labeled messages" set for a label).
Note that for IMAP accounts with messages that have an IMAP keyword, when you add the account back in with the new mail folder, Opera will automatically create a label for each of those keywords and the messages that have the keywords will show up in them.
Anyway, it sounds like your mail folder is really messed up and that's when you need to do. But, first, you can close down Opera and edit operaprefs.ini in the preferences folder (see menu -> help -> about Opera for the location) and make sure there's no "Mail Root Directory=" line under the [Mail] section so that Opera Mail is using the default mail folder location still. Or, if you have a custom mail folder location, make sure the path for that setting is *still* correct.