Re: [PATCH] Cache messaging dgm connections

Garming Sam garming at catalyst.net.nz
Wed Sep 14 23:36:55 UTC 2016


Hi Ralph,

Seen some flapping tests in autobuild, and it looks like it's related to
the dgram changes. I originally thought it was another replication
issue, because of an IO timeout, but apparently not.

I'm not sure if it's the callers fault here, but I thought it would be
easier if you could take a look and give some advice.

https://git.samba.org/autobuild.flakey.sn-devel-144/2016-09-14-1112/samba.stderr


Cheers,

Garming


On 12/09/16 02:07, Ralph Böhme wrote:
> Hi!
>
> Attached is a performance improvement for our dgram messaging.
>
> In most cases, the current code opens a new connection to peers for
> every message and closes it when done. This patchset adds caching of
> connections to peers.
>
> Please review & push if ok.
>
> Cheerio!
> -slow

===============================================================
INTERNAL ERROR: Signal 11 in pid 503067 (4.6.0pre1-DEVELOPERBUILD)
Please read the Trouble-Shooting section of the Samba HOWTO
===============================================================
smb_panic(): calling panic action [/memdisk/autobuild/fl/b646594/samba/selftest/gdb_backtrace 503067]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00002af882c08a0c in __libc_waitpid (pid=238727, stat_loc=stat_loc at entry=0x7ffdddf18da0, options=options at entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:31
31	../sysdeps/unix/sysv/linux/waitpid.c: No such file or directory.
#0  0x00002af882c08a0c in __libc_waitpid (pid=238727, stat_loc=stat_loc at entry=0x7ffdddf18da0, options=options at entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:31
        resultvar = 18446744073709551104
        oldtype = -2098166048
#1  0x00002af882b8e232 in do_system (line=<optimized out>) at ../sysdeps/posix/system.c:148
        __result = <optimized out>
        _buffer = {__routine = 0x2af882b8e4d0 <cancel_handler>, __arg = 0x7ffdddf18d70, __canceltype = 0, __prev = 0x0}
        _avail = 1
        status = -571372080
        save = <optimized out>
        pid = 238727
        sa = {__sigaction_handler = {sa_handler = 0x1, sa_sigaction = 0x1}, sa_mask = {__val = {65536, 0 <repeats 15 times>}}, sa_flags = 0, sa_restorer = 0x7ffdddf18f40}
        omask = {__val = {7808, 0, 47246833152840, 47246824375528, 140728327048744, 47246823373152, 438105541632, 0, 140728327048944, 47246824184635, 0, 47246823373152, 72104841050295168, 206158430224, 140728327048960, 47246829027456}}
#2  0x00002af8821aabbc in smb_panic_default (why=0x2af8821fb935 "internal error") at ../lib/util/fault.c:141
        result = 11000
        pidstr = "503067\000\000(\270\037\202\370*\000\000\060\352\204\001"
        cmdstring = "/memdisk/autobuild/fl/b646594/samba/selftest/gdb_backtrace 503067", '\000' <repeats 15 times>, "\036\271\037\202\370*\000\000\063\272\037\202\370*\000\000\260\070\252\214\370*\000\000S", '\000' <repeats 15 times>, " \376\232\210\370*\000\000\000\217ߎ\370*\000\000\240\216ߎ\370*\000\000\000\000\000\000\000\000\000\000\240\220\361\335\375\177\000\000V\355\330W\000\000\000\000\260\255\361\335\375\177\000\000\000\000\000\000\000\000\000\000i\277'\202\370*\000\000 \376\232\210\370*\000"
        __FUNCTION__ = "smb_panic_default"
#3  0x00002af8821aad4d in smb_panic (why=0x2af8821fb935 "internal error") at ../lib/util/fault.c:169
No locals.
#4  0x00002af8821aaa0f in fault_report (sig=11) at ../lib/util/fault.c:83
        counter = 1
        __FUNCTION__ = "fault_report"
#5  0x00002af8821aaa24 in sig_fault (sig=11) at ../lib/util/fault.c:94
No locals.
#6  <signal handler called>
No locals.
#7  0x00002af88cae9aa0 in ?? ()
No symbol table info available.
#8  0x00002af882244a5b in tevent_debug (ev=0x2af88d09ab10, level=TEVENT_DEBUG_TRACE, fmt=0x2af88224f648 "Destroying timer event %p \"%s\"\n") at ../lib/tevent/tevent_debug.c:93
        ap = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7ffdddf195f0, reg_save_area = 0x7ffdddf19530}}
#9  0x00002af88224ba1d in tevent_common_timed_destructor (te=0x2af88c8a4b70) at ../lib/tevent/tevent_timed.c:140
No locals.
#10 0x00002af88227bb6a in _tc_free_internal (tc=0x2af88c8a4b10, location=0x2af8840eede8 "../lib/poll_funcs/poll_funcs_tevent.c:662") at ../lib/talloc/talloc.c:1055
        d = 0x2af88224b9c7 <tevent_common_timed_destructor>
        ptr_to_free = 0x2af889559da0
        ptr = 0x2af88c8a4b70
#11 0x00002af88227ceb1 in _tc_free_children_internal (tc=0x2af88c5a7160, ptr=0x2af88c5a71c0, location=0x2af8840eede8 "../lib/poll_funcs/poll_funcs_tevent.c:662") at ../lib/talloc/talloc.c:1570
        child = 0x2af88c8a4b70
        new_parent = 0x2af88582a120
#12 0x00002af88227bd9b in _tc_free_internal (tc=0x2af88c5a7160, location=0x2af8840eede8 "../lib/poll_funcs/poll_funcs_tevent.c:662") at ../lib/talloc/talloc.c:1081
        ptr_to_free = 0x70
        ptr = 0x2af88c5a71c0
#13 0x00002af88227ceb1 in _tc_free_children_internal (tc=0x2af88d5c0da0, ptr=0x2af88d5c0e00, location=0x2af8840eede8 "../lib/poll_funcs/poll_funcs_tevent.c:662") at ../lib/talloc/talloc.c:1570
        child = 0x2af88c5a71c0
        new_parent = 0x2af88582a120
#14 0x00002af88227bd9b in _tc_free_internal (tc=0x2af88d5c0da0, location=0x2af8840eede8 "../lib/poll_funcs/poll_funcs_tevent.c:662") at ../lib/talloc/talloc.c:1081
        ptr_to_free = 0x2af88ccf4b90
        ptr = 0x2af88d5c0e00
#15 0x00002af88227c015 in _talloc_free_internal (ptr=0x2af88d5c0e00, location=0x2af8840eede8 "../lib/poll_funcs/poll_funcs_tevent.c:662") at ../lib/talloc/talloc.c:1151
        tc = 0x2af88d5c0da0
#16 0x00002af88227d2d0 in _talloc_free (ptr=0x2af88d5c0e00, location=0x2af8840eede8 "../lib/poll_funcs/poll_funcs_tevent.c:662") at ../lib/talloc/talloc.c:1693
        tc = 0x2af88d5c0da0
#17 0x00002af8840ec7ca in poll_funcs_tevent_handle_destructor (handle=0x2af88db06fa0) at ../lib/poll_funcs/poll_funcs_tevent.c:662
No locals.
#18 0x00002af88227bb6a in _tc_free_internal (tc=0x2af88db06f40, location=0x2af8840ef530 "../source3/lib/messages_dgm_ref.c:140") at ../lib/talloc/talloc.c:1055
        d = 0x2af8840ec663 <poll_funcs_tevent_handle_destructor>
        ptr_to_free = 0x0
        ptr = 0x2af88db06fa0
#19 0x00002af88227c015 in _talloc_free_internal (ptr=0x2af88db06fa0, location=0x2af8840ef530 "../source3/lib/messages_dgm_ref.c:140") at ../lib/talloc/talloc.c:1151
        tc = 0x2af88db06f40
#20 0x00002af88227d2d0 in _talloc_free (ptr=0x2af88db06fa0, location=0x2af8840ef530 "../source3/lib/messages_dgm_ref.c:140") at ../lib/talloc/talloc.c:1693
        tc = 0x2af88db06f40
#21 0x00002af8840ee272 in msg_dgm_ref_destructor (r=0x2af8858a2950) at ../source3/lib/messages_dgm_ref.c:140
        __func__ = "msg_dgm_ref_destructor"
#22 0x00002af88227bb6a in _tc_free_internal (tc=0x2af8858a28f0, location=0x2af8894c18d0 "../source4/dsdb/samdb/ldb_modules/dns_notify.c:72") at ../lib/talloc/talloc.c:1055
        d = 0x2af8840ee151 <msg_dgm_ref_destructor>
        ptr_to_free = 0x2af88cd2c0f0
        ptr = 0x2af8858a2950
#23 0x00002af88227ceb1 in _tc_free_children_internal (tc=0x2af88c2985a0, ptr=0x2af88c298600, location=0x2af8894c18d0 "../source4/dsdb/samdb/ldb_modules/dns_notify.c:72") at ../lib/talloc/talloc.c:1570
        child = 0x2af8858a2950
        new_parent = 0x2af88582a120
#24 0x00002af88227bd9b in _tc_free_internal (tc=0x2af88c2985a0, location=0x2af8894c18d0 "../source4/dsdb/samdb/ldb_modules/dns_notify.c:72") at ../lib/talloc/talloc.c:1081
        ptr_to_free = 0x2af8956a75b0
        ptr = 0x2af88c298600
#25 0x00002af88227ceb1 in _tc_free_children_internal (tc=0x2af88c3da760, ptr=0x2af88c3da7c0, location=0x2af8894c18d0 "../source4/dsdb/samdb/ldb_modules/dns_notify.c:72") at ../lib/talloc/talloc.c:1570
        child = 0x2af88c298600
        new_parent = 0x2af88582a120
#26 0x00002af88227bd9b in _tc_free_internal (tc=0x2af88c3da760, location=0x2af8894c18d0 "../source4/dsdb/samdb/ldb_modules/dns_notify.c:72") at ../lib/talloc/talloc.c:1081
        ptr_to_free = 0x2af892d1f0f0
        ptr = 0x2af88c3da7c0
#27 0x00002af88227c015 in _talloc_free_internal (ptr=0x2af88c3da7c0, location=0x2af8894c18d0 "../source4/dsdb/samdb/ldb_modules/dns_notify.c:72") at ../lib/talloc/talloc.c:1151
        tc = 0x2af88c3da760
#28 0x00002af88227d2d0 in _talloc_free (ptr=0x2af88c3da7c0, location=0x2af8894c18d0 "../source4/dsdb/samdb/ldb_modules/dns_notify.c:72") at ../lib/talloc/talloc.c:1693
        tc = 0x2af88c3da760
#29 0x00002af8894bdd54 in dns_notify_dnssrv_done (req=0x2af892d1f170) at ../source4/dsdb/samdb/ldb_modules/dns_notify.c:72
        status = {v = 0}





More information about the samba-technical mailing list