[mythtv-users] Frontend freeze when deleting recording
Cymen Vig
cymenvig at gmail.com
Sat Dec 17 14:19:23 EST 2005
On 10/23/05, Dave Sherohman <esper at sherohman.org> wrote:
> On Sun, Oct 23, 2005 at 10:41:25AM -0700, chris at cpr.homelinux.net wrote:
> > On Sun, Oct 23, 2005 at 10:34:33AM -0500, Mercury Morris wrote:
> > > My guess is that there are quite few MythTV folks that are not aware of the
> > > "delete-a-recording-while-recording" I/O bottleneck. They, and I, will be most
> > > interested in the results you might observe regarding filesystem stability and
> > > how fast XFS can delete a recording concurrent with recording a program.
> >
> > I converted my system to XFS on (software) RAID-5 when I
> > installed MythTV and it's been rock-solid. The box also
> > hosts IMAP, SMB, VNC and Apache2 servers, and has never
> > seemed to have any problem deleting large files while
> > recording.
>
> I had my first hang of this sort in quite a while earlier today and
> it has me suspecting that delete-while-recording may not have
> anything to do with it (or at least may not be the only cause)...
>
> Like chris, I use XFS, but no RAID. My hang this morning took place
> while I was half-watching low priority shows on my TV while also
> going through movie listings via mythweb on my laptop. The delete
> hang occurred when I issued the delete order while waiting for
> mythweb to return from scheduling a recording. There was no
> recording in progress at the time and I have my mysql database on a
> separate physical hard drive (and separate SATA channel) from my
> stored recordings, so it seems extremely unlikely that an I/O
> bottleneck would have been involved. With no knowledge of the actual
> code involved, the circumstances of this loss of contact between
> mythbackend and the database suggests to me that the actual issue may
> be related to deleting a recording while another database update is
> in progress. The apparent link to recording may instead be due to
> the database being updated when recordings begin/end.
In my experience it is the database and not the file system causing
the delays. I copied a few 2.2 GB shows during testing and found that
deleting them was practically instantaneous on my XFS file system.
Meanwhile, deleting shows in the Mythfrontend would cause at least 2-4
seconds of freezing.
After tweaking MySQL's my.cnf file I have almost instantaneous
deletes. Now, if I select delete on a 30 minute show, the control
returns immediately and I can go up and down in the list. The show
remains in the list for a second or two and then disappears.
My my.cnf (changes from Gentoo default):
Disable binary logging (remove binary logs from data dir which look
like *.0001, etc):
--
#log-bin
--
Increase limits:
--
key_buffer = 64M # increased from 32M
max_allowed_packet = 1M
table_cache = 256
sort_buffer_size = 4M # was 512K
net_buffer_length = 8K
read_buffer_size = 1M # was 512K
read_rnd_buffer_size = 1M
myisam_sort_buffer_size = 16M
language = /usr/share/mysql/english
#tmp_table_size = 64M
tmp_table_size = 128M
--
Increase more limits (adjusting log file and buffer requires stopping
db, removing files, starting db as far as I can tell):
--
innodb_buffer_pool_size = 64M
innodb_additional_mem_pool_size = 8M
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_file_size = 5M
innodb_log_buffer_size = 8M
--
More limits that shouldn't come into play:
--
[isamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[myisamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
--
This has resulted in a dramatic improvment for me but my combination
frontend/backend has 1 GB of RAM. The memory usage isn't too drastic:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
5681 mysql 15 0 194m 39m 4244 S 0.0 3.9 0:00.11 mysqld
More information about the mythtv-users
mailing list