<br><br><div><span class="gmail_quote">On 3/3/06, <b class="gmail_sendername">Steve</b> <<a href="mailto:zflyer@gmail.com">zflyer@gmail.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On 3/2/06, Niels Dybdahl <<a href="mailto:Niels@dybdahl.dk">Niels@dybdahl.dk</a>> wrote:<br>> Hi,<br>><br>> I have upgraded from version 0.18.1 to version 0.19 and now my MythWeb is<br>> much slower to show the program listings than before.
<br>> It takes around 40 seconds to open the program listing in MythWeb even<br>> though I only have 9 visible channels (and only 5 populated channels). When<br>> I open the program listing in mythfrontend it only takes 1-2 seconds.
<br>><br>> During the 40 seconds mysqld uses most of the CPU time, while httpd also<br>> uses some.<br><br>I have the same issue which wasn't present prior to 0.19. The<br>Listings page takes about 11 seconds to generate on modern hardware,
<br>and mysqld pegs the cpu most of that time. My work-around has been to<br>enable mysql query caching, which makes subsequent page reloads quick,<br>but this doesn't resolve the issue. My mysql config additions:<br><br>
[mysqld]<br>query-cache-type = 1<br>query-cache-size = 20M</blockquote><div><br>I tried to add these lines, but then mysql would not start<br>Instead I added log=/var/log/mysql.log to create a log of the queries (I had to create the file manually and set access rights).
<br>I counted 246 queries (30 queries/second) like the following:<br><br> 8 Query SELECT program.*,<br> UNIX_TIMESTAMP(program.starttime) AS starttime_unix,<br> UNIX_TIMESTAMP(
program.endtime) AS endtime_unix,<br> CONCAT(repeat('&diams;', program.stars * '4'),<br> IF((program.stars * '4' * 10) % 10,<br> "&frac12;", "")) AS starstring,
<br> IFNULL(programrating.system, "") AS rater,<br> IFNULL(programrating.rating, "") AS rating,<br> oldrecorded.recstatus,<br>
channel.channum<br> FROM program<br> LEFT JOIN programrating USING (chanid, starttime)<br> LEFT JOIN oldrecorded<br> ON oldrecorded.recstatus
IN (-3, 11)<br> AND IF(oldrecorded.programid OR oldrecorded.seriesid,<br> oldrecorded.programid = program.programid<br> AND
oldrecorded.seriesid = program.seriesid,<br> oldrecorded.title = program.title<br> AND oldrecorded.subtitle = program.subtitle<br> AND
oldrecorded.description = program.description<br> )<br> LEFT JOIN channel ON program.chanid = channel.chanid<br> WHERE program.chanid='1003' AND
program.starttime = FROM_UNIXTIME('1141943100') GROUP BY program.chanid, program.starttime<br> </div>resulting in a page listing 22 shows on 5 channels (the other 4 channels are not populated).<br>Is this normal ?<br><br>
Niels<br></div><br>