Lines Matching refs:server
71 if (server.aof_rewrite_buf_blocks) in aofRewriteBufferReset()
72 listRelease(server.aof_rewrite_buf_blocks); in aofRewriteBufferReset()
74 server.aof_rewrite_buf_blocks = listCreate(); in aofRewriteBufferReset()
75 listSetFreeMethod(server.aof_rewrite_buf_blocks,zfree); in aofRewriteBufferReset()
84 listRewind(server.aof_rewrite_buf_blocks,&li); in aofRewriteBufferSize()
105 ln = listFirst(server.aof_rewrite_buf_blocks); in aofChildWriteDiffData()
107 if (server.aof_stop_sending_diff || !block) { in aofChildWriteDiffData()
108 aeDeleteFileEvent(server.el,server.aof_pipe_write_data_to_child, in aofChildWriteDiffData()
113 nwritten = write(server.aof_pipe_write_data_to_child, in aofChildWriteDiffData()
120 if (block->used == 0) listDelNode(server.aof_rewrite_buf_blocks,ln); in aofChildWriteDiffData()
126 listNode *ln = listLast(server.aof_rewrite_buf_blocks); in aofRewriteBufferAppend()
149 listAddNodeTail(server.aof_rewrite_buf_blocks,block); in aofRewriteBufferAppend()
153 numblocks = listLength(server.aof_rewrite_buf_blocks); in aofRewriteBufferAppend()
165 if (aeGetFileEvents(server.el,server.aof_pipe_write_data_to_child) == 0) { in aofRewriteBufferAppend()
166 aeCreateFileEvent(server.el, server.aof_pipe_write_data_to_child, in aofRewriteBufferAppend()
179 listRewind(server.aof_rewrite_buf_blocks,&li); in aofRewriteBufferWrite()
216 if (server.aof_child_pid == -1) return; in killAppendOnlyChild()
219 (long) server.aof_child_pid); in killAppendOnlyChild()
220 if (kill(server.aof_child_pid,SIGUSR1) != -1) { in killAppendOnlyChild()
221 while(wait3(&statloc,0,NULL) != server.aof_child_pid); in killAppendOnlyChild()
225 aofRemoveTempFile(server.aof_child_pid); in killAppendOnlyChild()
226 server.aof_child_pid = -1; in killAppendOnlyChild()
227 server.aof_rewrite_time_start = -1; in killAppendOnlyChild()
235 serverAssert(server.aof_state != AOF_OFF); in stopAppendOnly()
237 redis_fsync(server.aof_fd); in stopAppendOnly()
238 close(server.aof_fd); in stopAppendOnly()
240 server.aof_fd = -1; in stopAppendOnly()
241 server.aof_selected_db = -1; in stopAppendOnly()
242 server.aof_state = AOF_OFF; in stopAppendOnly()
252 newfd = open(server.aof_filename,O_WRONLY|O_APPEND|O_CREAT,0644); in startAppendOnly()
253 serverAssert(server.aof_state == AOF_OFF); in startAppendOnly()
260 server.aof_filename, in startAppendOnly()
265 if (server.rdb_child_pid != -1) { in startAppendOnly()
266 server.aof_rewrite_scheduled = 1; in startAppendOnly()
272 if (server.aof_child_pid != -1) { in startAppendOnly()
284 server.aof_state = AOF_WAIT_REWRITE; in startAppendOnly()
285 server.aof_last_fsync = server.unixtime; in startAppendOnly()
286 server.aof_fd = newfd; in startAppendOnly()
342 if (sdslen(server.aof_buf) == 0) { in flushAppendOnlyFile()
348 if (server.aof_fsync == AOF_FSYNC_EVERYSEC && in flushAppendOnlyFile()
349 server.aof_fsync_offset != server.aof_current_size && in flushAppendOnlyFile()
350 server.unixtime > server.aof_last_fsync && in flushAppendOnlyFile()
358 if (server.aof_fsync == AOF_FSYNC_EVERYSEC) in flushAppendOnlyFile()
361 if (server.aof_fsync == AOF_FSYNC_EVERYSEC && !force) { in flushAppendOnlyFile()
366 if (server.aof_flush_postponed_start == 0) { in flushAppendOnlyFile()
369 server.aof_flush_postponed_start = server.unixtime; in flushAppendOnlyFile()
371 } else if (server.unixtime - server.aof_flush_postponed_start < 2) { in flushAppendOnlyFile()
378 server.aof_delayed_fsync++; in flushAppendOnlyFile()
389 nwritten = aofWrite(server.aof_fd,server.aof_buf,sdslen(server.aof_buf)); in flushAppendOnlyFile()
398 } else if (server.aof_child_pid != -1 || server.rdb_child_pid != -1) { in flushAppendOnlyFile()
406 server.aof_flush_postponed_start = 0; in flushAppendOnlyFile()
408 if (nwritten != (ssize_t)sdslen(server.aof_buf)) { in flushAppendOnlyFile()
413 if ((server.unixtime - last_write_error_log) > AOF_WRITE_LOG_ERROR_RATE) { in flushAppendOnlyFile()
415 last_write_error_log = server.unixtime; in flushAppendOnlyFile()
423 server.aof_last_write_errno = errno; in flushAppendOnlyFile()
431 (long long)sdslen(server.aof_buf)); in flushAppendOnlyFile()
434 if (ftruncate(server.aof_fd, server.aof_current_size) == -1) { in flushAppendOnlyFile()
446 server.aof_last_write_errno = ENOSPC; in flushAppendOnlyFile()
450 if (server.aof_fsync == AOF_FSYNC_ALWAYS) { in flushAppendOnlyFile()
461 server.aof_last_write_status = C_ERR; in flushAppendOnlyFile()
466 server.aof_current_size += nwritten; in flushAppendOnlyFile()
467 sdsrange(server.aof_buf,nwritten,-1); in flushAppendOnlyFile()
474 if (server.aof_last_write_status == C_ERR) { in flushAppendOnlyFile()
477 server.aof_last_write_status = C_OK; in flushAppendOnlyFile()
480 server.aof_current_size += nwritten; in flushAppendOnlyFile()
484 if ((sdslen(server.aof_buf)+sdsavail(server.aof_buf)) < 4000) { in flushAppendOnlyFile()
485 sdsclear(server.aof_buf); in flushAppendOnlyFile()
487 sdsfree(server.aof_buf); in flushAppendOnlyFile()
488 server.aof_buf = sdsempty(); in flushAppendOnlyFile()
494 if (server.aof_no_fsync_on_rewrite && in flushAppendOnlyFile()
495 (server.aof_child_pid != -1 || server.rdb_child_pid != -1)) in flushAppendOnlyFile()
499 if (server.aof_fsync == AOF_FSYNC_ALWAYS) { in flushAppendOnlyFile()
503 redis_fsync(server.aof_fd); /* Let's try to get this data on the disk */ in flushAppendOnlyFile()
506 server.aof_fsync_offset = server.aof_current_size; in flushAppendOnlyFile()
507 server.aof_last_fsync = server.unixtime; in flushAppendOnlyFile()
508 } else if ((server.aof_fsync == AOF_FSYNC_EVERYSEC && in flushAppendOnlyFile()
509 server.unixtime > server.aof_last_fsync)) { in flushAppendOnlyFile()
511 aof_background_fsync(server.aof_fd); in flushAppendOnlyFile()
512 server.aof_fsync_offset = server.aof_current_size; in flushAppendOnlyFile()
514 server.aof_last_fsync = server.unixtime; in flushAppendOnlyFile()
586 if (dictid != server.aof_selected_db) { in feedAppendOnlyFile()
592 server.aof_selected_db = dictid; in feedAppendOnlyFile()
618 buf = catAppendOnlyExpireAtCommand(buf,server.expireCommand,argv[1], in feedAppendOnlyFile()
621 buf = catAppendOnlyExpireAtCommand(buf,server.pexpireCommand,argv[1], in feedAppendOnlyFile()
633 if (server.aof_state == AOF_ON) in feedAppendOnlyFile()
634 server.aof_buf = sdscatlen(server.aof_buf,buf,sdslen(buf)); in feedAppendOnlyFile()
640 if (server.aof_child_pid != -1) in feedAppendOnlyFile()
702 int old_aof_state = server.aof_state; in loadAppendOnlyFile()
717 server.aof_current_size = 0; in loadAppendOnlyFile()
718 server.aof_fsync_offset = server.aof_current_size; in loadAppendOnlyFile()
725 server.aof_state = AOF_OFF; in loadAppendOnlyFile()
813 if (cmd == server.multiCommand) valid_before_multi = valid_up_to; in loadAppendOnlyFile()
836 if (server.aof_load_truncated) valid_up_to = ftello(fp); in loadAppendOnlyFile()
853 server.aof_state = old_aof_state; in loadAppendOnlyFile()
856 server.aof_rewrite_base_size = server.aof_current_size; in loadAppendOnlyFile()
857 server.aof_fsync_offset = server.aof_current_size; in loadAppendOnlyFile()
868 if (server.aof_load_truncated) { in loadAppendOnlyFile()
882 if (server.aof_fd != -1 && lseek(server.aof_fd,0,SEEK_END) == -1) { in loadAppendOnlyFile()
1282 read(server.aof_pipe_read_data_from_parent,buf,sizeof(buf))) > 0) { in aofReadDiffFromParent()
1283 server.aof_child_diff = sdscatlen(server.aof_child_diff,buf,nread); in aofReadDiffFromParent()
1295 for (j = 0; j < server.dbnum; j++) { in rewriteAppendOnlyFileRio()
1297 redisDb *db = server.db+j; in rewriteAppendOnlyFileRio()
1386 server.aof_child_diff = sdsempty(); in rewriteAppendOnlyFile()
1389 if (server.aof_rewrite_incremental_fsync) in rewriteAppendOnlyFile()
1392 if (server.aof_use_rdb_preamble) { in rewriteAppendOnlyFile()
1416 if (aeWait(server.aof_pipe_read_data_from_parent, AE_READABLE, 1) <= 0) in rewriteAppendOnlyFile()
1427 if (write(server.aof_pipe_write_ack_to_parent,"!",1) != 1) goto werr; in rewriteAppendOnlyFile()
1428 if (anetNonBlock(NULL,server.aof_pipe_read_ack_from_parent) != ANET_OK) in rewriteAppendOnlyFile()
1433 if (syncRead(server.aof_pipe_read_ack_from_parent,&byte,1,5000) != 1 || in rewriteAppendOnlyFile()
1443 (double) sdslen(server.aof_child_diff) / (1024*1024)); in rewriteAppendOnlyFile()
1444 if (rioWrite(&aof,server.aof_child_diff,sdslen(server.aof_child_diff)) == 0) in rewriteAppendOnlyFile()
1484 server.aof_stop_sending_diff = 1; in aofChildPipeReadable()
1485 if (write(server.aof_pipe_write_ack_to_child,"!",1) != 1) { in aofChildPipeReadable()
1496 aeDeleteFileEvent(server.el,server.aof_pipe_read_ack_from_child,AE_READABLE); in aofChildPipeReadable()
1514 …if (aeCreateFileEvent(server.el, fds[2], AE_READABLE, aofChildPipeReadable, NULL) == AE_ERR) goto … in aofCreatePipes()
1516 server.aof_pipe_write_data_to_child = fds[1]; in aofCreatePipes()
1517 server.aof_pipe_read_data_from_parent = fds[0]; in aofCreatePipes()
1518 server.aof_pipe_write_ack_to_parent = fds[3]; in aofCreatePipes()
1519 server.aof_pipe_read_ack_from_child = fds[2]; in aofCreatePipes()
1520 server.aof_pipe_write_ack_to_child = fds[5]; in aofCreatePipes()
1521 server.aof_pipe_read_ack_from_parent = fds[4]; in aofCreatePipes()
1522 server.aof_stop_sending_diff = 0; in aofCreatePipes()
1533 aeDeleteFileEvent(server.el,server.aof_pipe_read_ack_from_child,AE_READABLE); in aofClosePipes()
1534 aeDeleteFileEvent(server.el,server.aof_pipe_write_data_to_child,AE_WRITABLE); in aofClosePipes()
1535 close(server.aof_pipe_write_data_to_child); in aofClosePipes()
1536 close(server.aof_pipe_read_data_from_parent); in aofClosePipes()
1537 close(server.aof_pipe_write_ack_to_parent); in aofClosePipes()
1538 close(server.aof_pipe_read_ack_from_child); in aofClosePipes()
1539 close(server.aof_pipe_write_ack_to_child); in aofClosePipes()
1540 close(server.aof_pipe_read_ack_from_parent); in aofClosePipes()
1563 if (server.aof_child_pid != -1 || server.rdb_child_pid != -1) return C_ERR; in rewriteAppendOnlyFileBackground()
1584 server.child_info_data.cow_size = private_dirty; in rewriteAppendOnlyFileBackground()
1592 server.stat_fork_time = ustime()-start; in rewriteAppendOnlyFileBackground()
1593 …server.stat_fork_rate = (double) zmalloc_used_memory() * 1000000 / server.stat_fork_time / (1024*1… in rewriteAppendOnlyFileBackground()
1594 latencyAddSampleIfNeeded("fork",server.stat_fork_time/1000); in rewriteAppendOnlyFileBackground()
1605 server.aof_rewrite_scheduled = 0; in rewriteAppendOnlyFileBackground()
1606 server.aof_rewrite_time_start = time(NULL); in rewriteAppendOnlyFileBackground()
1607 server.aof_child_pid = childpid; in rewriteAppendOnlyFileBackground()
1613 server.aof_selected_db = -1; in rewriteAppendOnlyFileBackground()
1621 if (server.aof_child_pid != -1) { in bgrewriteaofCommand()
1623 } else if (server.rdb_child_pid != -1) { in bgrewriteaofCommand()
1624 server.aof_rewrite_scheduled = 1; in bgrewriteaofCommand()
1649 if (redis_fstat(server.aof_fd,&sb) == -1) { in aofUpdateCurrentSize()
1653 server.aof_current_size = sb.st_size; in aofUpdateCurrentSize()
1675 (int)server.aof_child_pid); in backgroundRewriteDoneHandler()
1722 if (server.aof_fd == -1) { in backgroundRewriteDoneHandler()
1728 oldfd = open(server.aof_filename,O_RDONLY|O_NONBLOCK); in backgroundRewriteDoneHandler()
1737 if (rename(tmpfile,server.aof_filename) == -1) { in backgroundRewriteDoneHandler()
1741 server.aof_filename, in backgroundRewriteDoneHandler()
1750 if (server.aof_fd == -1) { in backgroundRewriteDoneHandler()
1756 oldfd = server.aof_fd; in backgroundRewriteDoneHandler()
1757 server.aof_fd = newfd; in backgroundRewriteDoneHandler()
1758 if (server.aof_fsync == AOF_FSYNC_ALWAYS) in backgroundRewriteDoneHandler()
1760 else if (server.aof_fsync == AOF_FSYNC_EVERYSEC) in backgroundRewriteDoneHandler()
1762 server.aof_selected_db = -1; /* Make sure SELECT is re-issued */ in backgroundRewriteDoneHandler()
1764 server.aof_rewrite_base_size = server.aof_current_size; in backgroundRewriteDoneHandler()
1765 server.aof_current_size = server.aof_current_size; in backgroundRewriteDoneHandler()
1769 sdsfree(server.aof_buf); in backgroundRewriteDoneHandler()
1770 server.aof_buf = sdsempty(); in backgroundRewriteDoneHandler()
1773 server.aof_lastbgrewrite_status = C_OK; in backgroundRewriteDoneHandler()
1777 if (server.aof_state == AOF_WAIT_REWRITE) in backgroundRewriteDoneHandler()
1778 server.aof_state = AOF_ON; in backgroundRewriteDoneHandler()
1789 server.aof_lastbgrewrite_status = C_ERR; in backgroundRewriteDoneHandler()
1793 server.aof_lastbgrewrite_status = C_ERR; in backgroundRewriteDoneHandler()
1802 aofRemoveTempFile(server.aof_child_pid); in backgroundRewriteDoneHandler()
1803 server.aof_child_pid = -1; in backgroundRewriteDoneHandler()
1804 server.aof_rewrite_time_last = time(NULL)-server.aof_rewrite_time_start; in backgroundRewriteDoneHandler()
1805 server.aof_rewrite_time_start = -1; in backgroundRewriteDoneHandler()
1807 if (server.aof_state == AOF_WAIT_REWRITE) in backgroundRewriteDoneHandler()
1808 server.aof_rewrite_scheduled = 1; in backgroundRewriteDoneHandler()