sqlite runtime error: Inconsistency detected by ld.so
lqs4188980 opened this issue · 0 comments
Error Information:
Inconsistency detected by ld.so: dl-open.c: 623: _dl_open: Assertion `_dl_debug_initialize (0, args.nsid)->r_state == RT_CONSISTENT' failed!
When debug using gdb, the program stopped when made a call to 'getpwuid(uid)'. It was happened directly after opening and reading '/etc/nsswitch.conf'.
Below is the strace output of sqlite running at local operating system:
execve("./sqlite3", ["./sqlite3"], [/* 46 vars _/]) = 0
brk(0) = 0x178e000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3972803000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/tls/x86_64/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/tls/x86_64", 0x7fff3c500ad0) = -1 ENOENT (No such file or directory)
open("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/tls/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/tls", 0x7fff3c500ad0) = -1 ENOENT (No such file or directory)
open("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/x86_64/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/x86_64", 0x7fff3c500ad0) = -1 ENOENT (No such file or directory)
open("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300\255\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=3660335, ...}) = 0
mmap(NULL, 2848744, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f397232b000
mprotect(0x7f39723de000, 2097152, PROT_NONE) = 0
mmap(0x7f39725de000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xb3000) = 0x7f39725de000
close(3) = 0
open("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=122469, ...}) = 0
mmap(NULL, 122469, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f39727e5000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\37\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1852120, ...}) = 0
mmap(NULL, 3966008, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3971f62000
mprotect(0x7f3972121000, 2093056, PROT_NONE) = 0
mmap(0x7f3972320000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1be000) = 0x7f3972320000
mmap(0x7f3972326000, 17464, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f3972326000
close(3) = 0
open("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\16\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14664, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f39727e4000
mmap(NULL, 2109736, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3971d5e000
mprotect(0x7f3971d61000, 2093056, PROT_NONE) = 0
mmap(0x7f3971f60000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f3971f60000
close(3) = 0
open("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20m\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=135175, ...}) = 0
mmap(NULL, 2212936, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3971b41000
mprotect(0x7f3971b59000, 2093056, PROT_NONE) = 0
mmap(0x7f3971d58000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7f3971d58000
mmap(0x7f3971d5a000, 13384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f3971d5a000
close(3) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f39727e3000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f39727e1000
arch_prctl(ARCH_SET_FS, 0x7f39727e1740) = 0
mprotect(0x7f3972320000, 16384, PROT_READ) = 0
mprotect(0x7f3971d58000, 4096, PROT_READ) = 0
mprotect(0x7f3971f60000, 4096, PROT_READ) = 0
mprotect(0x7f39725de000, 8192, PROT_READ) = 0
mprotect(0x60d000, 4096, PROT_READ) = 0
mprotect(0x7f3972805000, 4096, PROT_READ) = 0
munmap(0x7f39727e5000, 122469) = 0
set_tid_address(0x7f39727e1a10) = 2991
set_robust_list(0x7f39727e1a20, 0x18) = 0
futex(0x7fff3c5012bc, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 1, NULL, 7f39727e1740) = -1 EAGAIN (Resource temporarily unavailable)
rt_sigaction(SIGRTMIN, {0x7f3971b47800, [], SA_RESTORER|SA_SIGINFO, 0x7f3971b50bd0}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x7f3971b47880, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7f3971b50bd0}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192_1024, rlim_max=RLIM_INFINITY}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
rt_sigaction(SIGINT, {0x404a80, [INT], SA_RESTORER|SA_RESTART, 0x7f3971f990b0}, {SIG_DFL, [], 0}, 8) = 0
access(":memory:", F_OK) = -1 ENOENT (No such file or directory)
getuid() = 1000
brk(0) = 0x178e000
brk(0x17af000) = 0x17af000
socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
close(3) = 0
socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
close(3) = 0
open("/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=513, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3972802000
read(3, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 513
read(3, "", 4096) = 0
close(3) = 0
munmap(0x7f3972802000, 4096) = 0
open("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/libnss_compat.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=122469, ...}) = 0
mmap(NULL, 122469, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f39727e5000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libnss_compat.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\23\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=35728, ...}) = 0
mmap(NULL, 2131288, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3971938000
mprotect(0x7f3971940000, 2093056, PROT_NONE) = 0
mmap(0x7f3971b3f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f3971b3f000
close(3) = 0
open("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/libnsl.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libnsl.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`A\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=97296, ...}) = 0
mmap(NULL, 2202360, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f397171e000
mprotect(0x7f3971735000, 2093056, PROT_NONE) = 0
mmap(0x7f3971934000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x7f3971934000
mmap(0x7f3971936000, 6904, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f3971936000
close(3) = 0
mprotect(0x7f3971934000, 4096, PROT_READ) = 0
mprotect(0x7f3971b3f000, 4096, PROT_READ) = 0
munmap(0x7f39727e5000, 122469) = 0
open("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/libnss_nis.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=122469, ...}) = 0
mmap(NULL, 122469, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f39727e5000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libnss_nis.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240!\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=47760, ...}) = 0
mmap(NULL, 2143616, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3971512000
mprotect(0x7f397151d000, 2093056, PROT_NONE) = 0
mmap(0x7f397171c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa000) = 0x7f397171c000
close(3) = 0
open("/home/qishen/code/LIND/LIND_SRC/sqlite/lib/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@"\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=52168, ...}) = 0
mmap(NULL, 2148504, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f3971305000
mprotect(0x7f3971311000, 2093056, PROT_NONE) = 0
mmap(0x7f3971510000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xb000) = 0x7f3971510000
close(3) = 0
mprotect(0x7f3971510000, 4096, PROT_READ) = 0
mprotect(0x7f397171c000, 4096, PROT_READ) = 0
munmap(0x7f39727e5000, 122469) = 0
open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
lseek(3, 0, SEEK_CUR) = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=1717, ...}) = 0
mmap(NULL, 1717, PROT_READ, MAP_SHARED, 3, 0) = 0x7f3972802000
lseek(3, 1717, SEEK_SET) = 1717
munmap(0x7f3972802000, 1717) = 0
close(3) = 0
open("/home/qishen/.sqliterc", O_RDONLY) = -1 ENOENT (No such file or directory)
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 2), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3972802000
write(1, "SQLite version 3.8.4.3 2014-04-0"..., 74SQLite version 3.8.4.3 2014-04-03 16:53:12
Enter ".help" for usage hints.
) = 74
write(1, "Connected to a \33[1mtransient in-"..., 53Connected to a transient in-memory database.
) = 53
write(1, "Use ".open FILENAME" to reopen o"..., 57Use ".open FILENAME" to reopen on a persistent database.
) = 57
write(1, "sqlite> ", 8sqlite> ) = 8
fstat(0, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 2), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f3972801000
read(0,