A background saving child (BGSAVE) terminated its work. Handle this. * This function covers the case of RDB -> Slaves socket transfers for * diskless replication. */
| 2797 | * This function covers the case of RDB -> Slaves socket transfers for |
| 2798 | * diskless replication. */ |
| 2799 | static void backgroundSaveDoneHandlerSocket(int exitcode, int bysignal) { |
| 2800 | if (!bysignal && exitcode == 0) { |
| 2801 | serverLog(LL_NOTICE, |
| 2802 | "Background RDB transfer terminated with success"); |
| 2803 | } else if (!bysignal && exitcode != 0) { |
| 2804 | serverLog(LL_WARNING, "Background transfer error"); |
| 2805 | } else { |
| 2806 | serverLog(LL_WARNING, |
| 2807 | "Background transfer terminated by signal %d", bysignal); |
| 2808 | } |
| 2809 | if (server.rdb_child_exit_pipe!=-1) |
| 2810 | close(server.rdb_child_exit_pipe); |
| 2811 | aeDeleteFileEvent(server.el, server.rdb_pipe_read, AE_READABLE); |
| 2812 | close(server.rdb_pipe_read); |
| 2813 | server.rdb_child_exit_pipe = -1; |
| 2814 | server.rdb_pipe_read = -1; |
| 2815 | zfree(server.rdb_pipe_conns); |
| 2816 | server.rdb_pipe_conns = NULL; |
| 2817 | server.rdb_pipe_numconns = 0; |
| 2818 | server.rdb_pipe_numconns_writing = 0; |
| 2819 | zfree(server.rdb_pipe_buff); |
| 2820 | server.rdb_pipe_buff = NULL; |
| 2821 | server.rdb_pipe_bufflen = 0; |
| 2822 | } |
| 2823 | |
| 2824 | /* When a background RDB saving/transfer terminates, call the right handler. */ |
| 2825 | void backgroundSaveDoneHandler(int exitcode, int bysignal) { |
no test coverage detected