<div dir="ltr">What would be wrong with doing a full database dump with '--create-options', edit the backup file and change all references from InnoDB to MyISAM, and then drop the database and re-import the backup? I've done that in the past with success on other databases, and it would be much easier.<div>
<br></div><div style>Tom</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Jan 8, 2013 at 2:35 PM, Michael T. Dean <span dir="ltr"><<a href="mailto:mtdean@thirdcontact.com" target="_blank">mtdean@thirdcontact.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 01/07/2013 02:36 PM, Jarle Thorsen wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
2013/1/6 Michael T. Dean<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On 01/06/2013 02:01 PM, Jarle Thorsen wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I have now gone through all my channels manually and removed any channel<br>
that I was not able to tune in to. I now have about 400 channels, all with<br>
EIT enabled.<br>
<br>
Every time I see the following in my backend log:<br>
<br>
2013-01-06 19:44:36.559637 I [19447/19514] Scheduler scheduler.cpp:2129<br>
(HandleReschedule) - Reschedule requested for MATCH 0 0 0 - EITScanner<br>
<snip><br>
2013-01-06 19:46:19.206036 I [19447/19514] Scheduler scheduler.cpp:2242<br>
(HandleReschedule) - Scheduled 304 items in 102.0 = 100.30 match + 0.35<br>
check + 1.39 place<br>
<br>
</blockquote>
That's terribly bad performance. Your scheduler query should run in a few<br>
seconds. Yours is taking> 100s.<br>
<br>
Scheduler performance depends on (in addition to hardware resources--CPU<br>
and RAM--and file system--not blocking when MySQL is trying to write (due<br>
to I/O wait or things like barriers blocking until data is on the platter,<br>
versus the disk cache)) number of programs in the listings (which, itself,<br>
is generally affected by the number of channels), number of recording rules<br>
(which may match some of those programs in the listings), and number of<br>
shows in recording history.<br>
<br>
That said, this performance (unless you're running MySQL on an Atom or a<br>
PogoPlug or similar--which just isn't enough for a large, cable-sized<br>
system, especially if you're using EIT) is bad enough it's almost<br>
definitely not your rules/history. I have 17831 shows in my recorded<br>
history, 119 recording rules, but only 35 channels, and my system gives:<br>
<br>
Scheduled 517 items in 1.3 = 0.00 match + 1.25 place<br>
<br>
(2 orders of magnitude faster than your system). Therefore, I'd suggest<br>
you should look at other things. What CPU and how much RAM do you have?<br>
What file system are you using? What mount options? Do you have MySQL on<br>
the same file system (really bad) or disk (not ideal) as your recordings?<br>
</blockquote>
My machine is an Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz with 3GB<br>
RAM (only 2GB used at the moment). My root filesystem and MySQL db is<br>
running on a separate disk with ext3 filesystem. Storage is all running on<br>
separate disks with xfs filesystem.<br>
<br>
The oldrecorded table contains 12531 entries, and the record table contains<br>
189 entries.<br>
<br>
I noticed that my root ext3 filesystem was mounted with relatime, remounted<br>
it with noatime, but this did not seem to help.<br>
<br>
Suggestions for further settings to check are appreciated.<br>
</blockquote>
<br>
You probably are using ext3 with barriers. Please check:<br>
<br>
cat /proc/mounts<br>
<br>
and if you don't see "barrier=0", you're using barriers.<br>
<br>
I'm also guessing you're using the unsupported InnoDB storage engine. InnoDB usage requires very specific configuration to get acceptable performance. You can find out what MySQL storage engine you're using with:<br>
<br>
mysql -umythtv -p mythconverg -e 'SELECT table_name, engine<br>
FROM information_schema.tables<br>
WHERE table_schema = "mythconverg";'<br>
<br>
(you can copy/paste the above into a shell--spacing is fine, even with the line feeds). If any tables other than the MythWeather tables (weatherdatalayout, weatherscreens, weathersourcesettings) show InnoDB engine, this is likely the root of your problems.<br>
<br>
The only supported way to fix a broken schema is to:<br>
<br>
a) Create a full database backup ( <a href="http://www.mythtv.org/wiki/Database_Backup_and_Restore" target="_blank">http://www.mythtv.org/wiki/<u></u>Database_Backup_and_Restore</a> )<br>
b) Do a partial restore of the backup ( <a href="http://www.mythtv.org/wiki/Database_Backup_and_Restore#Partial_restore_of_a_backup" target="_blank">http://www.mythtv.org/wiki/<u></u>Database_Backup_and_Restore#<u></u>Partial_restore_of_a_backup</a> ). This involves<br>
1) dropping the current/broken database<br>
2) creating a new database (with an empty schema)<br>
3) starting mythtv-setup on the master backend to let it create a brand-new (correct) schema--make sure you use<br>
4) exiting mythtv-setup as soon as the GUI is displayed<br>
5) doing the partial restore<br>
6) starting mythtv-setup and reconfiguring the master backend<br>
7) reconfiguring the rest of your setup (other backends and frontends) as desired<br>
<br>
You'll need to do the above with MythTV 0.25-fixes or higher; otherwise, you will use your system's default storage engine (which is likely InnoDB) rather than the supported MyISAM engine. Note that partial restores cannot be done across different versions, so you will need to ensure you've upgraded the current/broken database schema to 0.25-fixes or higher before creating the backup you plan to use for the partial restore. See the wiki page description for details.<br>
<br>
Mike<br>
______________________________<u></u>_________________<br>
mythtv-users mailing list<br>
<a href="mailto:mythtv-users@mythtv.org" target="_blank">mythtv-users@mythtv.org</a><br>
<a href="http://www.mythtv.org/mailman/listinfo/mythtv-users" target="_blank">http://www.mythtv.org/mailman/<u></u>listinfo/mythtv-users</a><br>
</blockquote></div><br></div>