sync failing when multiple users accessing database

Help
marl_scot
2013-03-07
2013-03-08
  • marl_scot

    marl_scot - 2013-03-07

    Hi,
    I am using KP 2.21 on 8 windows based machines (mixed XP/7)
    We have our database stored on a network drive.
    We have recently started getting problems where KP says it cant access the database to sync, and we end up with a file.kdbx and a file.kdbx.tmp
    I cant work out why this is happening, I know there is no issue with file permissions (as the share has no user level file restrictions) and the same setup has been working for nearly 2 years now!
    I think this has just started since we upgraded KP to 2.20.
    We have now upgraded all the KP installs to 2.21 but still get the problem.
    To test we have done the following :
    delete all database files from share.
    On one machine, resave the open DB to the share
    Then go through each of the other machines and hit save.
    Each machine says it wants to sync the DB file, click 'Yes' and the first 5 or 6 machines sync ok.
    Then we start to get sync errors saying KP cant access the file and we get a .tmp version of the file appearing in the share.

    Another thing i have noticed is that the file size jumps from 238K to 449K and back depending on what machine was last to save.

    I know this would appear to be a share issue rather than a KP issue, but we have no problems with any other programs using that share.

    Also I have no idea why the file size jumps up and down like it does.

    Anyone got any pointers on where to start looking?

    thanks

    marlscot

     
  • wellread1

    wellread1 - 2013-03-07

    On one machine, resave the open DB to the share
    Then go through each of the other machines and hit save.
    Each machine says it wants to sync the DB file, click 'Yes' and the first 5 or 6 machines sync ok.

    This description suggests that you have many users sharing a central database as their working database. This increases the likelihood of a file access collision. In your testing are you careful to allow each sync to run to completion before initiating the next? Did you check for the existence of the .tmp file after each successful sync? Does the problem occur at the same machine each time? Are all users using the central database as their working database or are some using a local database that they sync to the central database?

    The recommended configuration for sharing a central location is to provide a local working copy of the database to each user and use the central database only for syncing between local copies.

    Another thing i have noticed is that the file size jumps from 238K to 449K and back depending on what machine was last to save.

    This can happen if the source (active) databases have differing amounts of history and the history allowance settings in their respective database settings are different.

     
    Last edit: wellread1 2013-03-07
  • marl_scot

    marl_scot - 2013-03-08

    thanks wellread1
    Yes you are correct, all users have keeppass installed locally, but open a single database file that is on a dropbox share.
    I will double check the stuff you suggested and see if i can pin it down to a single box.
    Is there a way to export the keepass config from one install so it can be imported into all the others, to ensure they are the same? (can this also be used to import trigger actions as well?)
    If i can find a way to import/export triggers then i may be able to setup the sync the way your link says.
    thanks again for your help.
    I will post back the results of the testing.

     
  • marl_scot

    marl_scot - 2013-03-08

    Ah, I have just found the info on exporting/importing the config settings, but i cant find anything about the triggers being stored in them.
    Can a trigger be stored in the enforced config file?
    thanks
    marlscot

     
  • wellread1

    wellread1 - 2013-03-08

    ...I have just found the info on exporting/importing the config settings, but i cant find anything about the triggers being stored in them.

    Triggers are stored in the user's KeePass configuration file (keepass.config.xml). Triggers can also be copied and pasted to and from the clipboard, and to and from a .txt file. The trigger copy/paste functions are in the Tools button at the bottom of the Triggers Window.

    Can a trigger be stored in the enforced config file?

    yes.

    ...all users have keeppass installed locally, but open a single database file that is on a dropbox share.

    Dropbox file synchronization is separate from KeePass database synchronization and can lead to conflicted dropbox copies. The recommended method of syncing to dropbox is to provide each user with a local database outside of the dropbox share and perform the keepass sync (typically via triggers) between their local database and their copy on a dropbox share. This ensures that changes will automatically migrate to other users, in spite of dropbox conflicted copies.

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks