View Single Post
Old 06-23-2017, 03:26 AM   #15
Rayha
Member
Rayha began at the beginning.
 
Posts: 21
Karma: 10
Join Date: Jan 2015
Location: Norway
Device: Kindle Paperwhite
Thanks for the feedback and the discussion.

It looks like more users that just me, are using the system this way. Running content server to present the library for users via web, and using GUI for maintaining the library.

Some use one workstation for both purposes, and some use a NAS/server for content server and workstation for GUI. And with new functionallity in Calibre 3, none of these way of using the system, will work. And there are reasons why it is not practical to have GUI running all the time.

For me, I can use the workaround with a wrapper script as suggestet above, to stop content server, before starting GUI, and then start content server again after closing GUI. This will work as long as you use same workstation for both services. I would like to move content server to my Synology NAS in the future, but I'm not there yet. And then I need another solution.

I have a suggestion that could solve both problems above, without using workarounds and 2 copies of the whole library.

Let content server and GUI run independently against 2 copies of metadata.db. And handle version control, merging and conflicts within GUI application.

I don't know too much about the new functionallity in content server, and what information it actually write to the database. But my guess is that it have to do with the reading books functionallity. And even though it is possible to read books through GUI as well, the normal maintenance done in GUI, like updating metadata, adding books and new formats of books, will not conflict with data that is related to reading functionallity.

Another suggestion, is to move the information related to reading functonallity out of metadata.db and into a reading-info database. This way, the GUI could use metadata.db for maintaining the library, and reading-info database when starting reading sessions from GUI. And then you need to handle version control, merging and conflicts with this database only.

This is really a great way of handling eBook libraries, so I hope you will consider these improvements to get an even better solution
Rayha is offline   Reply With Quote