[mythtv-users] MySQL related BE deadlocks - collective wisdom needed
Brian J. Murrell
brian at interlinx.bc.ca
Fri Aug 5 21:41:42 UTC 2011
On 11-08-05 05:08 PM, Brian J. Murrell wrote:
>
> AutoExpire has been running since I applied that patch, but not since
> that storage directory filled up at ~16:30:
And it's still not been run, now 1h15m since it was last run. It's
clearly stuck.
Imagine my surprise at this thread's stack trace:
Thread 11 (Thread 0xaebe0b70 (LWP 13581)):
#0 0x00eea422 in __kernel_vsyscall ()
No symbol table info available.
#1 0x00acaf5b in read () at ../sysdeps/unix/syscall-template.S:82
No locals.
#2 0x03f4aab8 in vio_read () from /usr/lib/libmysqlclient_r.so.16
No symbol table info available.
#3 0x03f4ab16 in vio_read_buff () from /usr/lib/libmysqlclient_r.so.16
No symbol table info available.
#4 0x03f4bd13 in ?? () from /usr/lib/libmysqlclient_r.so.16
No symbol table info available.
#5 0x03f4c0a7 in my_net_read () from /usr/lib/libmysqlclient_r.so.16
No symbol table info available.
#6 0x03f45a3f in cli_safe_read () from /usr/lib/libmysqlclient_r.so.16
No symbol table info available.
#7 0x03f46185 in ?? () from /usr/lib/libmysqlclient_r.so.16
No symbol table info available.
#8 0x03f152a6 in cli_stmt_execute () from /usr/lib/libmysqlclient_r.so.16
No symbol table info available.
#9 0x03f12a9f in mysql_stmt_execute () from /usr/lib/libmysqlclient_r.so.16
No symbol table info available.
#10 0x0280dba2 in QMYSQLResult::exec (this=0xa682ce58) at
../../../sql/drivers/mysql/qsql_mysql.cpp:1014
timeVector = {{d = 0xa683c2b8, p = 0xa683c2b8}}
stringVector = warning: can't find linker symbol for virtual
table for `QVector<QByteArray>' value
warning: found `QString::shared_empty' instead
{{d = 0x3e8a490, p = 0x3e8a490}}
nullVector = {{d = 0xa68251c0, p = 0xa68251c0}}
values = {{d = 0xa6827d68, p = 0xa6827d68}}
r = <value optimized out>
currBind = 0xa6850e70
#11 0x00dd442c in QSqlQuery::exec (this=0xaebdf9b8) at
kernel/qsqlquery.cpp:939
No locals.
#12 0x00c5f1f3 in MSqlQuery::exec (this=0xaebdf9b8) at mythdbcon.cpp:504
result = 3
#13 0x088c4096 in ProgramInfo::LoadProgramFromRecorded (this=0xa6828038,
_chanid=1019, _recstartts=...) at programinfo.cpp:1574
query = {<QSqlQuery> = {d = 0xa68533c0}, m_db = 0x9c366e8,
m_isConnected = true, m_returnConnection = true, m_last_prepared_query =
{static null = {<No data fields>}, static shared_null = {ref = {_q_value
= 3812}, alloc = 0, size = 0, data = 0x3e8a47a, clean = 0, simpletext =
0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array =
{0}}, static shared_empty = {ref = {_q_value = 632}, alloc = 0, size =
0, data = 0x3e8a48e, clean = 0, simpletext = 0, righttoleft = 0,
asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d =
0xa6844a50, static codecForCStrings = 0x0}}
is_reload = 8
new_basename = {static null = {<No data fields>}, static
shared_null = {ref = {_q_value = 3812}, alloc = 0, size = 0, data =
0x3e8a47a, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0,
capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref =
{_q_value = 632}, alloc = 0, size = 0, data = 0x3e8a48e, clean = 0,
simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved
= 0, array = {0}}, d = 0xa6800010, static codecForCStrings = 0x0}
#14 0x088abe28 in ProgramInfo (this=0xa6828038, _chanid=1019,
_recstartts=...) at programinfo.cpp:234
No locals.
#15 0x08078ff6 in AutoExpire::FillDBOrdered (this=0x993ada8,
expireList=..., expMethod=2) at autoexpire.cpp:980
pginfo = 0xa683ada0
chanid = 1019
recstartts = {d = {d = 0xa6824850}}
querystr = {static null = {<No data fields>}, static shared_null
= {ref = {_q_value = 3812}, alloc = 0, size = 0, data = 0x3e8a47a, clean
= 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0,
reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value =
632}, alloc = 0, size = 0, data = 0x3e8a48e, clean = 0, simpletext = 0,
righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array =
{0}}, d = 0xa68513b8, static codecForCStrings = 0x0}
where = {static null = {<No data fields>}, static shared_null =
{ref = {_q_value = 3812}, alloc = 0, size = 0, data = 0x3e8a47a, clean =
0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0,
reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value =
632}, alloc = 0, size = 0, data = 0x3e8a48e, clean = 0, simpletext = 0,
righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array =
{0}}, d = 0xa681c680, static codecForCStrings = 0x0}
orderby = {static null = {<No data fields>}, static shared_null
= {ref = {_q_value = 3812}, alloc = 0, size = 0, data = 0x3e8a47a, clean
= 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0,
reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value =
632}, alloc = 0, size = 0, data = 0x3e8a48e, clean = 0, simpletext = 0,
righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array =
{0}}, d = 0xa684b0f0, static codecForCStrings = 0x0}
msg = {static null = {<No data fields>}, static shared_null =
{ref = {_q_value = 3812}, alloc = 0, size = 0, data = 0x3e8a47a, clean =
0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0,
reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value =
632}, alloc = 0, size = 0, data = 0x3e8a48e, clean = 0, simpletext = 0,
righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array =
{0}}, d = 0xa684bd60, static codecForCStrings = 0x0}
maxAge = 65576948
query = {<QSqlQuery> = {d = 0xa681cc40}, m_db = 0xa68012f0,
m_isConnected = true, m_returnConnection = true, m_last_prepared_query =
{static null = {<No data fields>}, static shared_null = {ref = {_q_value
= 3812}, alloc = 0, size = 0, data = 0x3e8a47a, clean = 0, simpletext =
0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array =
{0}}, static shared_empty = {ref = {_q_value = 632}, alloc = 0, size =
0, data = 0x3e8a48e, clean = 0, simpletext = 0, righttoleft = 0,
asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d =
0xa68513b8, static codecForCStrings = 0x0}}
#16 0x08076b45 in AutoExpire::FillExpireList (this=0x993ada8,
expireList=...) at autoexpire.cpp:760
expMethod = 2
#17 0x0806f5b4 in AutoExpire::ExpireRecordings (this=0x993ada8) at
autoexpire.cpp:387
fsit = {_M_current = 0x0}
fsMap = {{d = 0xa681caa0, e = 0xa681caa0}}
expireList = {<std::_Vector_base<ProgramInfo*,
std::allocator<ProgramInfo*> >> = {_M_impl =
{<std::allocator<ProgramInfo*>> =
{<__gnu_cxx::new_allocator<ProgramInfo*>> = {<No data fields>}, <No data
fields>}, _M_start = 0xa6846f00, _M_finish = 0xa6847158,
_M_end_of_storage = 0xa6847300}}, <No data fields>}
deleteList = {<std::_Vector_base<ProgramInfo*,
std::allocator<ProgramInfo*> >> = {_M_impl =
{<std::allocator<ProgramInfo*>> =
{<__gnu_cxx::new_allocator<ProgramInfo*>> = {<No data fields>}, <No data
fields>}, _M_start = 0x0, _M_finish = 0x0, _M_end_of_storage = 0x0}},
<No data fields>}
fsInfos = {<std::_Vector_base<FileSystemInfo,
std::allocator<FileSystemInfo> >> = {_M_impl =
{<std::allocator<FileSystemInfo>> =
{<__gnu_cxx::new_allocator<FileSystemInfo>> = {<No data fields>}, <No
data fields>}, _M_start = 0xa681c180, _M_finish = 0xa681c1e8,
_M_end_of_storage = 0xa681c1e8}}, <No data fields>}
truncateMap = {{d = 0x1dcdff4, e = 0x1dcdff4}}
query = {<QSqlQuery> = {d = 0xaebdffa8}, m_db = 0x81b6ff4,
m_isConnected = 156, m_returnConnection = 96, m_last_prepared_query =
{static null = {<No data fields>}, static shared_null = {ref = {_q_value
= 3812}, alloc = 0, size = 0, data = 0x3e8a47a, clean = 0, simpletext =
0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array =
{0}}, static shared_empty = {ref = {_q_value = 632}, alloc = 0, size =
0, data = 0x3e8a48e, clean = 0, simpletext = 0, righttoleft = 0,
asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x3d0f00,
static codecForCStrings = 0x0}}
#18 0x0806e835 in AutoExpire::RunExpirer (this=0x993ada8) at
autoexpire.cpp:310
timer = {mds = 58394290}
curTime = {d = {d = 0xa6822788}}
next_expire = {d = {d = 0xa68fe500}}
#19 0x0807452b in AutoExpire::ExpirerThread (param=0x993ada8) at
autoexpire.cpp:617
expirer = 0x993ada8
#20 0x00ac396e in start_thread (arg=0xaebe0b70) at pthread_create.c:300
__res = <value optimized out>
__ignore1 = <value optimized out>
__ignore2 = <value optimized out>
pd = 0xaebe0b70
now = <value optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {11354100, 0,
4001536, -1363278808, 703299828, 228556200}, mask_was_saved = 0}}, priv
= {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0,
canceltype = 0}}}
not_first_call = <value optimized out>
robust = <value optimized out>
freesize = <value optimized out>
__PRETTY_FUNCTION__ = "start_thread"
#21 0x01d45a4e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
So, looks like this latest mysql patch is not fixing the problem.
Cheers,
b.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
Url : http://www.mythtv.org/pipermail/mythtv-users/attachments/20110805/2ac8e47d/attachment.bin
More information about the mythtv-users
mailing list