Kopano Restore Backup skip folders



  • Hi there,

    during the restore of previous backups from a Zarafa Installation the following errors appearing:

    2017-03-03 11:14:47,134 - backup - INFO - restoring folder Sychronisierungsprobleme/Lokale Fehler
    2017-03-03 11:14:47,234 - backup - INFO - stopping backup
    2017-03-03 11:14:47,250 - backup - ERROR - Traceback (most recent call last):
      File "/usr/lib/python2.7/dist-packages/kopano/__init__.py", line 4227, in log_exc
        try: yield
      File "/usr/lib/python2.7/dist-packages/kopano/__init__.py", line 4563, in start
        daemon_helper(self.main, self, self.log)
      File "/usr/lib/python2.7/dist-packages/kopano/__init__.py", line 4011, in daemon_helper
        func()
      File "/usr/lib/python2.7/dist-packages/kopano_backup/__init__.py", line 195, in main
        self.restore()
      File "/usr/lib/python2.7/dist-packages/kopano_backup/__init__.py", line 270, in restore
        folder = store.subtree.folder(restore_path, create=True)
      File "/usr/lib/python2.7/dist-packages/kopano/__init__.py", line 2139, in folder
        mapifolder = self.mapiobj.CreateFolder(FOLDER_GENERIC, unicode(name), u'', None, MAPI_UNICODE)
      File "/usr/lib/python2.7/dist-packages/MAPICore.py", line 512, in CreateFolder
        def CreateFolder(self, *args): return _MAPICore.IMAPIFolder_CreateFolder(self, *args)
    MAPIErrorCollision: MAPI error 80040604
    

    This is only possible if I add the --recursive parameter. If I try to restore a backup without it I got

    2017-03-03 11:18:06,661 - backup - INFO - restoring folder Journal
    2017-03-03 11:18:06,782 - backup - INFO - stopping backup
    2017-03-03 11:18:06,785 - backup - ERROR - Traceback (most recent call last):
      File "/usr/lib/python2.7/dist-packages/kopano/__init__.py", line 4227, in log_exc
        try: yield
      File "/usr/lib/python2.7/dist-packages/kopano/__init__.py", line 4563, in start
        daemon_helper(self.main, self, self.log)
      File "/usr/lib/python2.7/dist-packages/kopano/__init__.py", line 4011, in daemon_helper
        func()
      File "/usr/lib/python2.7/dist-packages/kopano_backup/__init__.py", line 195, in main
        self.restore()
      File "/usr/lib/python2.7/dist-packages/kopano_backup/__init__.py", line 270, in restore
        folder = store.subtree.folder(restore_path, create=True)
      File "/usr/lib/python2.7/dist-packages/kopano/__init__.py", line 2139, in folder
        mapifolder = self.mapiobj.CreateFolder(FOLDER_GENERIC, unicode(name), u'', None, MAPI_UNICODE)
      File "/usr/lib/python2.7/dist-packages/MAPICore.py", line 512, in CreateFolder
        def CreateFolder(self, *args): return _MAPICore.IMAPIFolder_CreateFolder(self, *args)
    MAPIErrorCollision: MAPI error 80040604
    

    After both errors, the backup terminates.

    I don’t know the sense of this folder, it’s empty. Are there any possibilities to skip those blocking senseless folders? The -f parameter expects every single path to restore everything around the blocking folders (not possible to define Inbox/* as parameter), that’s no possibility. Are there any ideas to restore the backups?

    Thanks a lot.

    Greetings

    Atomius


  • Kopano

    @Atomius hiya,

    this may be due to pre-existing folders with the same name/path as those in the backup, but only when comparing them case-insensitively. we should have fixed this for 8.3 at least, not sure about 8.2.

    to verify that this is the case, please compare the output of:

    ./kopano-backup --stats backup_dir

    with the folders in the account where you are restoring to.

    so for example if there is a folder called “INBOX” in the backup, and an existing folder called “Inbox”, that would explain the problem. a work-around would then be to rename the folder(s) in the account to be identical.


  • Kopano

    btw of course happy to login remotely to debug the issue further if needed. if that is possible, please contact me/felix privately.


Log in to reply
 

Looks like your connection to Kopano Community Forum was lost, please wait while we try to reconnect.