Let me start by saying that I've had this problem for a while now; it wasn't introduced in 0.18.1-r1. I'm also not sure if it's in mythtv's use of mysql or in mysql itself, because the crash occurs in mysql's code. The problem occurs regularly when I start playing a recording. I'm using a frontend that plays content from a backend running on a different computer. The first recording I start from my frontend usually starts playing correctly, but if I escape, go back to the menu and select another recording to play it usually crashes. It seems to happen less frequently when running in a debugger. Here's a backtrace from gdb: (gdb) bt #0 _db_return_ (_line_=2478, _sfunc_=0x10dcfc, _sfile_=0x10dcfc, _slevel_=0xac1ff848) at dbug.c:834 #1 0xb6129255 in mysql_read_query_result (mysql=0x833e388) at libmysql.c:2478 #2 0xb61294ba in mysql_real_query (mysql=0x833e388, query=0x871fd98 "SELECT mark, type FROM recordedmarkup WHERE chanid = '8' AND starttime = '20050613185500' AND type = 4 ORDER BY mark;", length=1105148) at libmysql.c:2491 #3 0xb6186c79 in QMYSQLResult::reset () from /usr/qt/3/plugins/sqldrivers/libqsqlmysql.so #4 0xb6d3073d in QSqlQuery::exec () from /usr/qt/3/lib/libqt-mt.so.3 #5 0xb6d32649 in QSqlQuery::exec () from /usr/qt/3/lib/libqt-mt.so.3 #6 0xb7c14cf2 in ProgramInfo::GetMarkupMap (this=0x83672e0, marks=@0x8308fd8, type=4, mergeIntoMap=false) at programinfo.cpp:1634 #7 0xb7c1369c in ProgramInfo::GetCommBreakList (this=0x83672e0, frames=@0x8308fd8) at programinfo.cpp:1488 #8 0xb7bd3c65 in NuppelVideoPlayer::LoadCommBreakList (this=0x8308d58) at NuppelVideoPlayer.cpp:3302 #9 0xb7bcd9ab in NuppelVideoPlayer::StartPlaying (this=0x8308d58) at NuppelVideoPlayer.cpp:1894 #10 0xb7c7bee3 in SpawnDecode (param=0x8308d58) at tv_play.cpp:210 #11 0xb66f49d0 in pthread_start_thread (arg=0x82e92a0) at manager.c:310 #12 0xb66f4b3c in pthread_start_thread_event (arg=0x82e92a0) at manager.c:334 #13 0xb659a3ca in clone () from /lib/libc.so.6 (gdb) Here's the source. I marked the line that causes the crash with an arrow: state->level = *_slevel_-1; state->func = *_sfunc_; state->file = *_sfile_; #ifndef THREAD if (state->framep != NULL) state->framep = (char **) *state->framep; <=== #endif errno=save_errno; Some info about the access violation: (gdb) print state->framep $7 = (char **) 0x10dcfc (gdb) print *state->framep Cannot access memory at address 0x10dcfc (gdb) I noticed that state->framep happens to be identical to the value of parameter _sfile_, but I don't know if that means anything. If you need anything more (e.g. strace) or you have some tips on how to debug this, please let me know.
First I've heard of this Griffon. What arch? what CFLAGS? (sorry to give you the "user" bit) I'm just curious.
No prob. Nothing really special though. I'll try removing the debug flags, to see if that changes anything. Portage 2.0.51.22-r1 (default-linux/x86/2004.2/gcc34, gcc-3.4.4, glibc-2.3.5-r0, 2.6.12-rc1 i686) ================================================================= System uname: 2.6.12-rc1 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz Gentoo Base System version 1.6.12 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.4 [disabled] dev-lang/python: 2.2.3-r5, 2.3.5, 2.4.1-r1 sys-apps/sandbox: 1.2.9 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.18 virtual/os-headers: 2.6.11-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium4 -O2 -pipe -g2 -ggdb2" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium4 -O2 -pipe -g2 -ggdb2" FEATURES="autoconfig collision-protect cvs digest distlocks fixpackages nostrip sandbox sfperms sign strict test userpriv usersandbox" LANG="en_US.UTF-8" MAKEOPTS="-j4" USE="X a52 alsa apache2 avi bitmap-fonts bonobo cdr crypt cscope curl dba debug dedicated dga disablexmb dts dvd dvdread emboss encode ethereal faad fam fastcgi fbcon ffmpeg flac font-server freetds freetype gd gdbm gif gpm graphviz gstreamer gtk gtk2 imagemagick imlib ipv6 jikes jpeg libwww mad matroska mcal memlimit mikmod mmx mmxext motif mozilla mp3 mpeg mpi mysql mythtv ncurses nls nocd ogg oggvorbis opengl pam pdflib perl plotutils png pnp qt quicktime readline samba sdl slang snmp sse sse2 ssl svga tcltk tcpd test tiff truetype truetype-fonts trusted type1-fonts unicode usb userlocales vorbis win32codecs wmf wxwindows x86 xml xml2 xmms xosd xv xvid zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LC_ALL, LDFLAGS, LINGUAS
It's getting more and more likely it is a problem in mysql. I can emerge with all kinds of different USE flags, but it seems any combination where mysql has been merged with the debug USE flag exhibits the problem.
Ever get this solved? 0.18 is gone.. Reopen as needed.