Select library location option.
#1
Under:

Settings->Video->Library, I am totally shocked there is not a option to change where your library info is stored.

This would seem like a simple thing to add, and would solve a lot of issues with people that have there media stored on a seprate device then the XBMC unit it self. It would allow the database to move with the media, and also allow multiple XMBC devices to all point to the same database with ease.
Reply
#2
To expand on this, I was using a program called goodsync today (syncs data across two HDDS, computers, etc) and I noticed it doing something that would be perfect for this.

If the above was implemented, you could also add a check box for:
Shared Libary

If checked, whenever XBMC is writing data to the libary (like durring scrapping) it would create a small file with info in it about what it was doing.

That way, if any other XBMC devices on the network are using them same libary, they would know not to try to edit it cause a edit is already in progress.
Reply
#3
You can pretty much already do this by using a MySQL database instead of the default one.
Reply
#4
YodaEXE Wrote:You can pretty much already do this by using a MySQL database instead of the default one.

You can "pretty much" do this by setting up a MySQL database and a crap ton of symlinks which in some senerios/networks may not be possible or what not.

I'm just suggesting a simple solution that shouldn't be two difficult to add that anyone could eaisly take advantage off.
Reply
#5
F-Wolf Wrote:I'm just suggesting a simple solution that shouldn't be two difficult to add that anyone could eaisly take advantage off.

So as it seems to be so simple I'm guessing you already started implementing this right?

In case you actually did you might wanna consider that one of the most important jobs of a database is to make sure the data stored in it is not corrupted by multiple concurrent accesses. SQLite does not support such a thing and it is not as simple as "create a new file and write something into it so that everyone else knows that he shouldn't write to the database". The main problem is the data that is stored in the database as there are indexes and other stuff which need to follow a certain order so if you got two XBMC instances and both want to add a new movie with the ID 999 (as both use the same library and both know that the last movie added had the ID 998) one is faster than the other and adds a new movie with the ID 999 while the other waits to be able to write to the database. When it finally can it also adds a new movie with ID 999 and now you are in big trouble.
Another problem would be if you e.g. finish watching a movie and XBMC tries to update the playcount in your database but unfortunately another XBMC instance is just running an update on all movies and is constantly writing to the database for a longer period of time. This means that the other XBMC instance which would just like to update a single value has to wait several seconds/minutes (depending on the size of your database) before it can do so and during that time it won't update your user interface so you will be stuck at the end of the movie and can't do anything.

I hope you see that it's not as "simple" or "not too difficult" as you think it is. Keeping raw files synced is so much easier than keeping a database synced because you don't care about the content of the files but with a database it's all about the content stored in it and not about where it is stored "physically".

That is why there are more sophisticated (and obviously more complicated) database systems like MySQL which are specialised in doing exactly what you ask. XBMC's support for MySQL is far from perfect and still needs a lot of work but implementing such a hack as you propose would require a lot of work as well so IMO that time is better used to improve the integration of MySQL.
Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
Reply

Logout Mark Read Team Forum Stats Members Help
Select library location option.0