|
also segfaults when dbrm/tablelocks doesn't exist
openat(AT_FDCWD, "/var/lib/columnstore/data1/systemFiles/dbrm/oidbitmap", O_RDWR) = 3
|
fstat(3, {st_mode=S_IFREG|0664, st_size=2099202, ...}) = 0
|
_llseek(3, 2097152, [2097152], SEEK_SET) = 0
|
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 2048) = 2048
|
read(3, "\0\0", 4096) = 2
|
stat("/etc/columnstore/Columnstore.xml", {st_mode=S_IFREG|0644, st_size=19465, ...}) = 0
|
openat(AT_FDCWD, "/var/lib/columnstore/data1/systemFiles/dbrm/tablelocks", O_RDONLY) = -1 ENOENT (No such file or directory)
|
futex(0x7fff8ff20218, FUTEX_WAKE_PRIVATE, 2147483647) = 0
|
futex(0x7fff9127120c, FUTEX_WAKE_PRIVATE, 2147483647) = 0
|
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_BNDERR, si_addr=0x474e5543432b2b18} ---
|
(gdb) bt full
|
#0 0x00007ffff6cd3478 in BRM::TableLockServer::load (this=0x100122d50) at ./storage/columnstore/columnstore/versioning/BRM/tablelockserver.cpp:108
|
size = 1
|
i = 0
|
tli = {<messageqcpp::Serializeable> = {_vptr.Serializeable = 0x7ffff6d2e068 <vtable for BRM::TableLockInfo+16>}, id = 140737488349536, tableOID = 69,
|
ownerName = "", ownerPID = 1267969, ownerSessionID = 1, ownerTxnID = 1275056, state = BRM::CLEANUP, creationTime = 140737322703104,
|
dbrootList = std::vector of length 0, capacity 0}
|
filename_p = <optimised out>
|
in = {px = 0x100139cf0}
|
#1 0x00007ffff6cd42f8 in BRM::TableLockServer::TableLockServer (this=0x100122d50, sm=<optimised out>)
|
at ./storage/columnstore/columnstore/versioning/BRM/tablelockserver.cpp:51
|
lk = <optimised out>
|
config = 0x100113730
|
lk = <optimised out>
|
config = <optimised out>
|
#2 0x000000010002bf20 in BRM::MasterDBRMNode::MasterDBRMNode (this=0x100113d00) at ./storage/columnstore/columnstore/versioning/BRM/masterdbrmnode.cpp:111
|
config = 0x100113730
|
retStr = ""
|
secondsToWait = <optimised out>
|
config = <optimised out>
|
retStr = <optimised out>
|
secondsToWait = <optimised out>
|
#3 0x0000000100011e68 in main (argc=<optimised out>, argv=<optimised out>) at ./storage/columnstore/columnstore/versioning/BRM/masternode.cpp:161
|
retries = 0
|
err = <optimised out>
|
arg = "fg"
|
ign = {__sigaction_handler = {sa_handler = 0x100035f80 <fatalHandler(int)>, sa_sigaction = 0x100035f80 <fatalHandler(int)>}, sa_mask = {__val = {
|
0 <repeats 16 times>}}, sa_flags = 0, sa_restorer = 0x0}
|
(gdb) p *this
|
$1 = {_vptr.TableLockServer = 0x7ffff6d2e608 <vtable for BRM::TableLockServer+16>, mutex = {m = pthread_mutex_t = {Type = Normal,
|
Status = Acquired, possibly with no waiters, Owner ID = 58439, Robust = No, Shared = No, Protocol = None}}, locks = std::map with 0 elements,
|
filename = "/var/lib/columnstore/data1/systemFiles/dbrm/tablelocks", sms = 0x100113d00}
|
(gdb) list
|
103 return;
|
104 }
|
105
|
106 try
|
107 {
|
108 in->read((char*) &size, 4);
|
109
|
110 for (i = 0; i < size; i++)
|
111 {
|
112 tli.deserialize(in.get());
|
(gdb) p size
|
$2 = 1
|
(gdb) p *in
|
Attempt to take address of value not located in memory.
|
(gdb) p in
|
$3 = {px = 0x100139cf0}
|
(gdb) p in->px
|
Attempt to take address of value not located in memory.
|
(gdb) p *in->px
|
Attempt to take address of value not located in memory.
|
|