On 17 November 2014 11:41, Brian May <brian@microcomaustralia.com.au> wrote:
Hello,

Yesterday I tried to disable commercial flagging in mythtv 0.27.4+fixes.2014 (or at least change the default for new recordings)[1].

According to the documentation, e.g. https://www.mythtv.org/wiki/User_Manual:Detailed_configuration_Frontend, under "Setup->TV Settings->General" there should be a screen "General (Jobs)" that has the "Commercial Flagging Method" setting. It doesn't.

In fact a number of settings appear to be missing.

So I went to change the setting in mythweb, only it isn't there either.

So I looked at the mysql database, where I noticed I have duplicate settings.


mysql> select * from settings where value='JobAllowCommFlag';
+------------------+------+----------+
| value            | data | hostname |
+------------------+------+----------+
| JobAllowCommFlag | 0    | gandra   |
| JobAllowCommFlag | 0    | gandra   |
+------------------+------+----------+
2 rows in set (0.00 sec)

In fact just about all the Job* settings have duplicates. While they are the same, am wondering if this is why I can't edit the values.

mysql> select * from settings where hostname='gandra' order by value;
...
| JobAllowCommFlag                                   | 0                                                       | gandra   |
| JobAllowCommFlag                                   | 0                                                       | gandra   |
| JobAllowMetadata                                   | 1                                                       | gandra   |
| JobAllowTranscode                                  | 1                                                       | gandra   |
| JobAllowTranscode                                  | 1                                                       | gandra   |
| JobAllowUserJob1                                   | 0                                                       | gandra   |
| JobAllowUserJob1                                   | 0                                                       | gandra   |
| JobAllowUserJob2                                   | 0                                                       | gandra   |
| JobAllowUserJob2                                   | 0                                                       | gandra   |
| JobAllowUserJob3                                   | 0                                                       | gandra   |
| JobAllowUserJob3                                   | 0                                                       | gandra   |
| JobAllowUserJob4                                   | 0                                                       | gandra   |
| JobAllowUserJob4                                   | 0                                                       | gandra   |
| JobQueueCheckFrequency                             | 60                                                      | gandra   |
| JobQueueCheckFrequency                             | 60                                                      | gandra   |
| JobQueueCPU                                        | 0                                                       | gandra   |
| JobQueueCPU                                        | 0                                                       | gandra   |
| JobQueueMaxSimultaneousJobs                        | 1                                                       | gandra   |
| JobQueueMaxSimultaneousJobs                        | 1                                                       | gandra   |
| JobQueueWindowEnd                                  | 23:59                                                   | gandra   |
| JobQueueWindowEnd                                  | 23:59                                                   | gandra   |
| JobQueueWindowStart                                | 00:00                                                   | gandra   |
| JobQueueWindowStart                                | 00:00                                                   | gandra   |
...

Just wondering if it is possible to delete the duplicate entries? Or do I have to delete everything and recreate new entries?

Unfortunately, I have shown all the fields above, there are no extra fields, now does there appear to be a unique constraint on value,hostname which would seem like a good idea (possibly because it is a MyISAM table - not sure if a new installation of mythtv would have the same issue or not).


Thanks


Notes:

[1] Sometimes mythtv hangs for large periods of time before playing a recording or in middle of the recording, and I am working on the theory that the commercial detection, despite being "nice", is the cause.

I found the solution:

 mysql> ALTER IGNORE TABLE settings ADD UNIQUE INDEX idx_unique (value,hostname);
Query OK, 1024 rows affected (0.09 sec)
Records: 1024  Duplicates: 20  Warnings: 0

This has been raised as a bug report against mythtv, but instead of fixing it (e.g. creating a unique index), the concerns were dismissed :-(

https://code.mythtv.org/trac/ticket/9875

I can now see the settings in mythweb.
--