[RHGS] Changelog_rollover breaks when number of fds opened is more than 1024
Issue
Changelog_rollover fails when more than 1024 files are opened and changelog is subsequently enabled. This can cause a crash with a backtrace like the following:
2017-06-19 10:03:38.621628] I [MSGID: 0] [gfdb_sqlite3.c:1356:gf_sqlite3_set_pragma] 0-sqlite3: Value set on DB wal_autocheckpoint : 25000
[2017-06-19 10:03:38.642704] I [MSGID: 115034] [server.c:403:_check_for_auth_option] 0-/data/brick/shared: skip format check for non-addr auth option auth.login./data/brick/shared/shared.allow
[2017-06-19 10:03:38.642705] I [MSGID: 115034] [server.c:403:_check_for_auth_option] 0-/data/brick/shared: skip format check for non-addr auth option auth.login.5d4e27d3-0379-42d1-b04e-5d00
c11fb792.password
pending frames:
frame : type(0) op(0)
patchset: git://git.gluster.com/glusterfs.git
signal received: 6
time of crash:
2017-06-19 10:03:38
configuration details:
argp 1
backtrace 1
dlfcn 1
libpthread 1
llistxattr 1
setfsid 1
spinlock 1
epoll.h 1
xattr.h 1
st_atim.tv_nsec 1
package-string: glusterfs 3.7.5
/lib64/libglusterfs.so.0(_gf_msg_backtrace_nomem+0xb2)[0x7f5244326002]
/lib64/libglusterfs.so.0(gf_print_trace+0x31d)[0x7f524434248d]
/lib64/libc.so.6(+0x35250)[0x7f5242a11250]
/lib64/libc.so.6(gsignal+0x37)[0x7f5242a111d7]
/lib64/libc.so.6(abort+0x148)[0x7f5242a128c8]
/lib64/libc.so.6(+0x74f07)[0x7f5242a50f07]
/lib64/libc.so.6(__fortify_fail+0x37)[0x7f5242aeb047]
/lib64/libc.so.6(+0x10d200)[0x7f5242ae9200]
/lib64/libc.so.6(+0x10efb7)[0x7f5242aeafb7]
/usr/lib64/glusterfs/3.7.5/xlator/features/changelog.so(changelog_rollover+0xa9)[0x7f5235925a59]
/lib64/libpthread.so.0(+0x7dc5)[0x7f524318edc5]
/lib64/libc.so.6(clone+0x6d)[0x7f5242ad373d]
Environment
- RHGS 3.1.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.