-
Type: Task
-
Resolution: Done
-
Affects Version/s: None
-
Component/s: None
-
None
Something in the recent changes to __clsm_open_cursors is now causing riak to segv.
(gdb) bt
#0 0x00007fba3e886a8f in __clsm_open_cursors (clsm=0x7fb978003b40, update=0,
start_chunk=0, start_id=0) at ../src/lsm/lsm_cursor.c:324
WT-1 0x00007fba3e88601a in __clsm_enter (clsm=0x7fb978003b40, update=0)
at ../src/lsm/lsm_cursor.c:93
WT-2 0x00007fba3e887fb2 in __clsm_search (cursor=0x7fb978003b40)
at ../src/lsm/lsm_cursor.c:686
WT-3 0x00007fba3eae3bc3 in fn_work_wterl_get (env=0x14ba480,
ref=140434394847234, pid=0x7fb95c0008d0, worker_id=1, args=0x7fb964000900)
at c_src/wterl.c:1375
WT-4 0x00007fba3eadd999 in async_nif_worker_fn (arg=0x7fb9e00009a0)
at c_src/async_nif.h:426
WT-5 0x00000000005939e0 in thr_wrapper (vtwd=0x7fba47f1fa60)
at pthread/ethread.c:106
WT-6 0x00007fba4d4efc6b in start_thread () from /lib64/libpthread.so.0
WT-7 0x00007fba4d0365ed in clone () from /lib64/libc.so.6
The failing line is:
324 clsm->txnid_max[i] = chunk->txnid_max;
And it is failing because clsm->txnid_max is NULL.
(gdb) p/x *clsm
$7 = {iface = {session = 0x7fba3cedd4a0, uri = 0x7fb9a4003560,
key_format = 0x7fb9a40035a0, value_format = 0x7fb9a40035c0,
get_key = 0x7fba3e87db78, get_value = 0x7fba3e87e746,
set_key = 0x7fba3e87dc3b, set_value = 0x7fba3e87eab6,
compare = 0x7fba3e88704f, next = 0x7fba3e887431, prev = 0x7fba3e887901,
reset = 0x7fba3e887db6, search = 0x7fba3e887ef2,
search_near = 0x7fba3e8884ab, insert = 0x7fba3e8892d5,
update = 0x7fba3e8897f1, remove = 0x7fba3e889cf5, close = 0x7fba3e88a092,
q =
, recno = 0x0,
raw_recno_buf =
, key =
{ data = 0x1409040, size = 0x15, flags = 0x0, mem = 0x0, memsize = 0x0},
value =
, saved_err = 0x0, flags = 0x3a0},
lsm_tree = 0x7fb9a4002c80, dsk_gen = 0x1, nchunks = 0x2, nupdates = 0x1,
blooms = 0x7fb978003a40, bloom_alloc = 0x50, cursors = 0x7fb9780051d0,
cursor_alloc = 0x50, current = 0x0, primary_chunk = 0x0, txnid_max = 0x0,
txnid_alloc = 0x0, flags = 0x60}
I'll investigate more and post an update when I have one.
- related to
-
WT-1 placeholder WT-1
- Closed
-
WT-2 What does metadata look like?
- Closed
-
WT-3 What file formats are required?
- Closed
-
WT-4 Flexible cursor traversals
- Closed
-
WT-5 How does pget work: is it necessary?
- Closed
-
WT-6 Complex schema example
- Closed
-
WT-7 Do we need the handle->err/errx methods?
- Closed
-
WT-652 Loosen the conditional to allocate txnid_max array.
- Closed