[mythtv-users] mythweb issues running with .25
Duncan Brown
mythtv at duncb.co.uk
Tue Apr 10 17:59:54 UTC 2012
On 10/04/2012 18:35, David Engel wrote:
> On Tue, Apr 10, 2012 at 12:20:56PM -0400, Michael T. Dean wrote:
>> On 04/10/2012 11:38 AM, Michael Drons wrote:
>>> Appears to be an error in mythweb sql statements.
>>>
>>> 2012-04-10 11:29:00.834061 E [1771/1800] Scheduler
>>> mythdbcon.cpp:823 (prepare) - Error preparing query: REPLACE INTO
>>> recordmatch (recordid, chanid, starttime, manualid) SELECT
>>> record.recordid, program.chanid, program.starttime, IF(search =
>>> 5, record.recordid, 0) FROM (record, program INNER JOIN channel
>>> ON channel.chanid = program.chanid) Manchester City vs. West
>>> Bromwich WHERE record.recordid = :NR0RECID AND program.manualid =
>>> 0 AND ( From Etihad Stadium. ) AND channel.visible = 1 AND
>>> (((record.filter& 1) = 0) OR (program.previouslyshown = 0)) AND
>>> (((record.filter& 2) = 0) OR (program.generic = 0)) AND
>>> (((record.filter& 4) = 0) OR (program.first> 0)) AND
>>> (((record.filter& 8) = 0) OR (HOUR(program.starttime)>= 19 AND
>>> HOUR(program.starttime)< 23)) AND (((record.filter& 16) = 0) OR
>>> (channel.commmethod = -2)) AND (((record.filter& 32) = 0) OR
>>> (program.hdtv> 0)) AND (((record.filter& 64) = 0) OR
>>> ((record.programid<> '' AND program.programid = record.programid)
>>> OR (record.programid = '' AND program.subtitle = record.subtitle
>>> AND program.description = record.description))) AND
>>> (((record.filter& 128) = 0) OR ((record.seriesid<> '' AND
>>> program.seriesid = record.seriesid))) AND ((record.type = 4 OR
>>> record.type = 6 OR record.type = 9 OR record.type = 10) OR
>>> ((record.station = channel.callsign) AND ((record.type = 3)
>>> OR ((TIME_TO_SEC(record.starttime) =
>>> TIME_TO_SEC(program.starttime)) AND ((record.type = 2)
>>> OR ((DAYOFWEEK(record.startdate) =
>>> DAYOFWEEK(program.starttime) AND ((record.type = 5)
>>> OR ((TO_DAYS(record.startdate) = TO_DAYS(program.starttime))
>>> AND (record.type<> 0) ) ) ) ) ) ) )
>>> ))
>>> 2012-04-10 11:29:00.834073 E [1771/1800] Scheduler
>>> mythdbcon.cpp:825 (prepare) - Driver error was [2/1064]:
>>> QMYSQL3: Unable to prepare statement
>>> Database error was:
>>> You have an error in your SQL syntax; check the manual that
>>> corresponds to your MySQL server version for the right syntax to
>>> use near 'Manchester City vs. West Bromwich WHERE record.recordid
>>> = ? AND program.manualid' at line 1
>>>
>>> 2012-04-10 11:29:00.834186 E [1771/1800] Scheduler mythdb.cpp:192
>>> (DBError) - DB Error (UpdateMatches3):
>>> Query was:
>>> REPLACE INTO recordmatch (recordid, chanid, starttime, manualid)
>>> SELECT record.recordid, program.chanid, program.starttime,
>>> IF(search = 5, record.recordid, 0) FROM (record, program INNER
>>> JOIN channel ON channel.chanid = program.chanid) Manchester
>>> City vs. West Bromwich WHERE record.recordid = :NR0RECID AND
>>> program.manualid = 0 AND ( From Etihad Stadium. ) AND
>>> channel.visible = 1 AND (((record.filter& 1) = 0) OR
>>> (program.previouslyshown = 0)) AND (((record.filter& 2) = 0) OR
>>> (program.generic = 0)) AND (((record.filter& 4) = 0) OR
>>> (program.first> 0)) AND (((record.filter& 8) = 0) OR
>>> (HOUR(program.starttime)>= 19 AND HOUR(program.starttime)< 23))
>>> AND (((record.filter& 16) = 0) OR (channel.commmethod = -2)) AND
>>> (((record.filter& 32) = 0) OR (program.hdtv> 0)) AND
>>> (((record.filter& 64) = 0) OR ((record.programid<> '' AND
>>> program.programid = record.programid) OR (record.programid = ''
>>> AND program.subtitle = record.subtitle AND program.description =
>>> record.description))) AND (((record.filter& 128) = 0) OR
>>> ((record.seriesid<> '' AND program.seriesid = record.seriesid)))
>>> AND ((record.type = 4 OR record.type = 6 OR record.type = 9 OR
>>> record.type = 10) OR ((record.station = channel.callsign) AND
>>> ((record.type = 3) OR ((TIME_TO_SEC(record.starttime) =
>>> TIME_TO_SEC(program.starttime)) AND ((record.type = 2)
>>> OR ((DAYOFWEEK(record.startdate) =
>>> DAYOFWEEK(program.starttime) AND ((record.type = 5)
>>> OR ((TO_DAYS(record.startdate) = TO_DAYS(program.starttime))
>>> AND (record.type<> 0) ) ) ) ) ) ) )
>>> ))
>>> Bindings were:
>>> :NR0RECID="421"
>>> Driver error was [2/1064]:
>>> QMYSQL: Unable to execute query
>>> Database error was:
>>> You have an error in your SQL syntax; check the manual that
>>> corresponds to your MySQL server version for the right syntax to
>>> use near 'Manchester City vs. West Brom
>>>
>>> myth src # mythbackend --version
>>> Please attach all output as a file in bug reports.
>>> MythTV Version : v0.25
>>> MythTV Branch : fixes/0.25
>>> Network Protocol : 72
>>> Library API : 0.25.20120408-1
>>> QT Version : 4.6.3
>>> Options compiled in:
>>> linux profile use_hidesyms using_alsa using_oss using_backend
>>> using_bindings_perl using_bindings_python using_bindings_php
>>> using_firewire using_frontend using_hdhomerun using_hdpvr
>>> using_iptv using_ivtv using_joystick_menu using_libcec
>>> using_libcrypto using_libdns_sd using_libfftw3 using_libxml2
>>> using_libudf using_lirc using_mheg using_opengl_video
>>> using_qtwebkit using_qtscript using_qtdbus using_v4l2 using_v4l1
>>> using_x11 using_xrandr using_xv using_bindings_perl
>>> using_bindings_python using_bindings_php using_mythtranscode
>>> using_opengl using_vdpau using_ffmpeg_threads using_live
>>> using_mheg using_libass using_libxml2 using_libudf
>>>
>>>
>>> I see the above error using commit
>>> 1d056f77dc29045008b52b82e90bc935ff1ab948 of mythweb
>> When doing what?
>>
>>> If I use commit efd3da660e2f1220372253a7c92f964ff1c5047a I dont
>>> have any issues.
>>>
>> I looks like you might have a broken custom recording rule?
> Specifically, it looks like a normal rule got converted to a custom
> search rule. "Manchester City vs. West Bromwich" and "From Etihad
> Stadium." look like a normal subtitle and description.
>
> David
Seeing the same in the backend logs here
> (prepare) Error preparing query: REPLACE INTO recordmatch (recordid,
> chanid, starttime, manualid) SELECT record.recordid, program.chanid,
> program.starttime, IF(search = 5, record.recordid, 0) FROM (record,
> program INNER JOIN channel ON channel.chanid = program.chanid)
> Chinese Grand Prix WHERE record.recordid = :NR0RECID AND
> program.manualid = 0 AND ( Live coverage of the second practice
> session from Shanghai, China with 5Live commentary. ) AND
> channel.visible = 1 AND (((record.filter & 1) = 0) OR
> (program.previouslyshown = 0)) AND (((record.filter & 2) = 0) OR
> (program.generic = 0)) AND (((record.filter & 4) = 0) OR
> (program.first > 0)) AND (((record.filter & 8) = 0) OR
> (HOUR(program.starttime) >= 19 AND HOUR(program.starttime) < 23)) AND
> (((record.filter & 16) = 0) OR (channel.commmethod = -2)) AND
> (((record.filter & 32) = 0) OR (program.hdtv > 0)) AND
> (((record.filter & 64) = 0) OR ((record.programid <> '' AND
> program.programid = record.programid) OR (record.programid = '' AND
> program.subtitle = record.subtitle AND program.description =
> record.description))) AND (((record.filter & 128) = 0) OR
> ((record.seriesid <> '' AND program.seriesid = record.seriesid))) AND
> ((record.type = 4 OR record.type = 6 OR record.type = 9 OR record.type
> = 10) OR ((record.station = channel.callsign) AND ((record.type
> = 3) OR ((TIME_TO_SEC(record.starttime) =
> TIME_TO_SEC(program.starttime)) AND ((record.type = 2)
> OR ((DAYOFWEEK(record.startdate) =
> DAYOFWEEK(program.starttime) AND ((record.type = 5)
> OR ((TO_DAYS(record.startdate) =
> TO_DAYS(program.starttime)) AND (record.type <> 0)
> ) ) ) ) ) ) ) ))
> Apr 10 18:55:42 localhost mythbackend[13271]: E Scheduler
> mythdbcon.cpp:825 (prepare) Driver error was [2/1064]:#012QMYSQL3:
> Unable to prepare statement#012Database error was:#012You have an
> error in your SQL syntax; check the manual that corresponds to your
> MySQL server version for the right syntax to use near 'Chinese Grand
> Prix WHERE record.recordid = ? AND program.manualid = 0 AND ( Live' at
> line 1
> Apr 10 18:55:42 localhost mythbackend[13271]: E Scheduler
> mythdb.cpp:192 (DBError) DB Error (UpdateMatches3):#012Query
> was:#012REPLACE INTO recordmatch (recordid, chanid, starttime,
> manualid) SELECT record.recordid, program.chanid, program.starttime,
> IF(search = 5, record.recordid, 0) FROM (record, program INNER JOIN
> channel ON channel.chanid = program.chanid) Chinese Grand Prix
> WHERE record.recordid = :NR0RECID AND program.manualid = 0 AND ( Live
> coverage of the second practice session from Shanghai, China with
> 5Live commentary. ) AND channel.visible = 1 AND (((record.filter & 1)
> = 0) OR (program.previouslyshown = 0)) AND (((record.filter & 2) = 0)
> OR (program.generic = 0)) AND (((record.filter & 4) = 0) OR
> (program.first > 0)) AND (((record.filter & 8) = 0) OR
> (HOUR(program.starttime) >= 19 AND HOUR(program.starttime) < 23)) AND
> (((record.filter & 16) = 0) OR (channel.commmethod = -2)) AND
> (((record.filter & 32) = 0) OR (program.hdtv > 0)) AND
> (((record.filter & 64) = 0) OR ((record.programid <> '' AND
> program.programid = record.programid) OR (record.programid = '' AND
> program.subtitle = record.subtitle AND program.description =
> record.description))) AND (((record.filter & 128) = 0) OR
> ((record.seriesid <> '' AND program.seriesid = record.seriesid))) AND
> ((record.type = 4 OR record.type = 6 OR record.type = 9 OR record.type
> = 10) OR ((record.station = channel.callsign) AND ((record.type
> = 3) OR ((TIME_TO_SEC(record.starttime) =
> TIME_TO_SEC(program.starttime)) AND ((record.type = 2)
> OR ((DAYOFWEEK(record.startdate) =
> DAYOFWEEK(program.starttime) AND ((record.type = 5)
> OR ((TO_DAYS(record.startdate) =
> TO_DAYS(program.starttime)) AND (record.type <> 0)
> ) ) ) ) ) ) ) )) #012Bindings
> were:#012:NR0RECID="1819"#012Driver error was [2/1064]:#012QMYSQL:
> Unable to execute query#012Database error was:#012You have an error in
> your SQL syntax; check the manual that corresponds to your MySQL
> server version for the r
This is from the one custom power search I have. Before the update, I
set a bunch of overrides on various repeat shows picked up by it to
'never record' on mythweb. After realising I'd made a mistake, I went
back to mythweb and activated one of those recordings, the above then
appears in the logs.
I still does seem to work though, as the show then appears in my
upcoming recordings.
I wasn't getting this on the rc, and have just updated to 25-fixes, so
assume it's the same commit as mentioned above causing this
Dunc
More information about the mythtv-users
mailing list