home
products
contribute
download
documentation
forum
Home
Forums
New posts
Search forums
What's new
New posts
All posts
Latest activity
Members
Registered members
Current visitors
Donate
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Search titles only
By:
Menu
Log in
Register
Navigation
Install the app
Install
More options
Contact us
Close Menu
Forums
MediaPortal 1
Development
General Development (no feature request here!)
Database: Refactor MP1 database for multi seat usage
Contact us
RSS
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="Anthony Vaughan" data-source="post: 1286631" data-attributes="member: 153283"><p>The reason for my upgrade for MP1 was to make MP1 work with the client SQLite databases (Folder, Music, Picture and Video) without locking the databases for the entirety of a user session - doing away with any need to synchronization applications. My design works with a single user or a multi-client household. For a multi-user household, you just need to place the databases in a location where all of the clients can see them and configure the documents folder MediaPortalDirs.xml to point to that location.</p><p></p><p>All of the database handing is performed in the databases class of MP1. I have incorporated Entity Framework into this design. To achieve a multi-user setup in a multi-threaded application I have removed auto-increment from the primary keys of the tables in the Music and Video databases, except for VideoThumbBList (because of the multi-threading), and have rationalized the video database to remove redundancy. I have also made GUIVideoFiles work more efficiently when building and manipulating folders to add new videos to the database and remove existing database records for videos that no longer exist.</p><p></p><p>The code handles stacked files though I don't fully understand that and the reasons behind them as I don't use multi file videos myself, so it would be good for me to get a better understanding of that because I am sure that processing could be much for efficient (less duplication of processing).</p><p></p><p>I see this as an excellent opportunity to streamline the database processing and I have employed object-orientation throughout and am caching all of the data so it is processed much more quickly behind the scenes - to allow the front-end to proceed with as little interference from the database processing as possible.</p><p></p><p>I will produce documentation that explains the rational behind the design.</p><p></p><p>Since introducing this upgrade in my household, I have not had any synchronization issues and the product has been stable. Having said that, I am sure we need to do more testing to cater for all of the features I don't use or know about.</p><p></p><p>Tony</p></blockquote><p></p>
[QUOTE="Anthony Vaughan, post: 1286631, member: 153283"] The reason for my upgrade for MP1 was to make MP1 work with the client SQLite databases (Folder, Music, Picture and Video) without locking the databases for the entirety of a user session - doing away with any need to synchronization applications. My design works with a single user or a multi-client household. For a multi-user household, you just need to place the databases in a location where all of the clients can see them and configure the documents folder MediaPortalDirs.xml to point to that location. All of the database handing is performed in the databases class of MP1. I have incorporated Entity Framework into this design. To achieve a multi-user setup in a multi-threaded application I have removed auto-increment from the primary keys of the tables in the Music and Video databases, except for VideoThumbBList (because of the multi-threading), and have rationalized the video database to remove redundancy. I have also made GUIVideoFiles work more efficiently when building and manipulating folders to add new videos to the database and remove existing database records for videos that no longer exist. The code handles stacked files though I don't fully understand that and the reasons behind them as I don't use multi file videos myself, so it would be good for me to get a better understanding of that because I am sure that processing could be much for efficient (less duplication of processing). I see this as an excellent opportunity to streamline the database processing and I have employed object-orientation throughout and am caching all of the data so it is processed much more quickly behind the scenes - to allow the front-end to proceed with as little interference from the database processing as possible. I will produce documentation that explains the rational behind the design. Since introducing this upgrade in my household, I have not had any synchronization issues and the product has been stable. Having said that, I am sure we need to do more testing to cater for all of the features I don't use or know about. Tony [/QUOTE]
Insert quotes…
Verification
Post reply
Forums
MediaPortal 1
Development
General Development (no feature request here!)
Database: Refactor MP1 database for multi seat usage
Contact us
RSS
Top
Bottom