Mat Posted November 16, 2014 Report Share Posted November 16, 2014 Currently the jobs database is stored using SQLite (jobs.db). This a good design choice considering performance and storage efficiently but it also makes it impossible to apply incremental updates using a text diff to the database. This is especially important if the database is maintained by several people, e.g. in a git repository. I'm proposing the following feature: - Use a xml file (e.g. jobs) as the primary storage and use SQLite (jobs.db) as an intermediary database (cache) - When the application is started, check whether the cache is up-to-date. If lastmodifieddate(jobs.xml) > lastmodifieddate(jobs.db), drop the jobs.db and reimport the jobs.xml - Internally work with the SQLLite database as of now - When the application is closed, export all jobs from the the cache into the jobs.xml. Touch both files (jobs.xml, jobs.db) so that they have the same lastmodifieddate. Maybe this could be implemented as an application setting: [x] Synchronize jobs database with jobs.xml This feature would allow several parties to collaborate on the database. Thank you. As a temporary workaround, would it be possible to add a new command line argument import: /import=FILENAME Starts Ketarin and imports the specified jobs xml file. Link to comment Share on other sites More sharing options...
floele Posted November 16, 2014 Report Share Posted November 16, 2014 I'll add an "/import" and "/clear" parameter for the next version, hope this helps (surprised this isn't actually done yet). However, changing how the SQLite-DB is used will probably cause more trouble than it's worth it (and I don't have time for such changes anyway), so don't hope for any changes there at the moment. Link to comment Share on other sites More sharing options...
Guest Guest Posted July 17, 2015 Report Share Posted July 17, 2015 If you script your incremental db changes as SQL, you can text diff just the changes, no ? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now