Hide Forgot
without write-behind stripe runs well.
simple stripe set-up. performance translators on the client side are writ-behind and io-cache when dbench is run on this set-up it crashes with the following core. (gdb) bt #0 0x00002aaaac32cfd4 in __wb_collapse_write_bufs ( requests=0x2aaab40a44f8, page_size=131072) at write-behind.c:1354 #1 0x00002aaaac32dc68 in wb_process_queue (frame=0x69a4f0, file=0x2aaab40a44c0, flush_all=0 '\0') at write-behind.c:1435 #2 0x00002aaaac32e0b3 in wb_ffr_cbk (frame=0x69a4f0, cookie=<value optimized out>, this=<value optimized out>, op_ret=0, op_errno=0) at write-behind.c:1694 #3 0x00002aaaac1258a8 in stripe_stack_unwind_cbk (frame=0x69a580, cookie=0x6c6ca0, this=0x60f4c0, op_ret=0, op_errno=0) at stripe.c:231 #4 0x00002aaaabf06f67 in client_flush_cbk (frame=0x6c6ca0, hdr=0x2aaab4044440, hdrlen=<value optimized out>, iobuf=<value optimized out>) at client-protocol.c:4748 #5 0x00002aaaabf067da in protocol_client_pollin (this=0x60e010, trans=0x612c70) at client-protocol.c:6344 #6 0x00002aaaabf0d3a2 in notify (this=0x2aaab40a44f8, event=2, data=0x612c70) at client-protocol.c:6387 #7 0x00002aaaacd90d13 in socket_event_handler (fd=<value optimized out>, idx=0, data=0x612c70, poll_in=1, poll_out=0, poll_err=0) at socket.c:814 #8 0x00002aaaaacee2c5 in event_dispatch_epoll (event_pool=0x609840) at event.c:804 #9 0x0000000000403e0e in main (argc=6, argv=0x7fff0a37a0b8) at glusterfsd.c:1325 (gdb) fr 0 #0 0x00002aaaac32cfd4 in __wb_collapse_write_bufs ( requests=0x2aaab40a44f8, page_size=131072) at write-behind.c:1354 1354 if ((request->stub->fop != GF_FOP_WRITE) (gdb) p request->stub $4 = (call_stub_t *) 0x0 (gdb)
PATCH: http://patches.gluster.com/patch/1484 in master (performance/write-behind: Add a NULL check for request->stub before checking request->stub->fop.)
PATCH: http://patches.gluster.com/patch/1483 in release-2.0 (performance/write-behind: Add a NULL check for request->stub before checking request->stub->fop.)