- March 26, 2007
- 3,715
- 180
- Home Country
- Germany
https://forum.team-mediaportal.com/mediaportal-releases-315/tvguide-speedup-datamodel-changes-72398/ [^]
Browsing the TVguide is currently slow.
This needs to be adressed by means of optimizations.
Some of the short-comings of the current database model have been reworked in order to have more efficient code as well as have code that is less complicated and therefor harder to read and maintain.
The table "program", which holds the EPG data has now been enriched with a new field called "states".
states can be a combination of various program states.
ex.
None = 0,
Notify = 1,
RecordOnce = 2,
RecordSeries = 4,
RecordManual = 8,
Conflict = 16,
RecordOncePending = 32, // used to indicate recording icon on tvguide, even though it hasnt begun yet.
RecordSeriesPending = 64 // used to indicate recording icon on tvguide, even though it hasnt begun yet.
obviously, these states need to be kept up2date at all times.
ex. when importing xmltv guide, when grabbing EPG, adding new schedules or removing schedules.
Also when the tvservice/scheduler starts a recording it will update the corresponding program entry.
The table "recording" has been enriched with 2 new fields.
isrecording (boolean): it tells if a recording is recording or not.
idschedule int : it refers to parent schedule id.
The table "schedule" has been enriched with 1 new field.
idparentschedule int : it refers to parent schedule id, handy when we need the root series schedule object of a spawned once schedule.
each reimport of EPG data will update the program table with the correct states.
Open the issue in Mantis...
Browsing the TVguide is currently slow.
This needs to be adressed by means of optimizations.
Some of the short-comings of the current database model have been reworked in order to have more efficient code as well as have code that is less complicated and therefor harder to read and maintain.
The table "program", which holds the EPG data has now been enriched with a new field called "states".
states can be a combination of various program states.
ex.
None = 0,
Notify = 1,
RecordOnce = 2,
RecordSeries = 4,
RecordManual = 8,
Conflict = 16,
RecordOncePending = 32, // used to indicate recording icon on tvguide, even though it hasnt begun yet.
RecordSeriesPending = 64 // used to indicate recording icon on tvguide, even though it hasnt begun yet.
obviously, these states need to be kept up2date at all times.
ex. when importing xmltv guide, when grabbing EPG, adding new schedules or removing schedules.
Also when the tvservice/scheduler starts a recording it will update the corresponding program entry.
The table "recording" has been enriched with 2 new fields.
isrecording (boolean): it tells if a recording is recording or not.
idschedule int : it refers to parent schedule id.
The table "schedule" has been enriched with 1 new field.
idparentschedule int : it refers to parent schedule id, handy when we need the root series schedule object of a spawned once schedule.
each reimport of EPG data will update the program table with the correct states.
Open the issue in Mantis...