pull/8/merge
agile6v 2015-05-26 06:06:23 +00:00
commit 195f6a92a0
3 changed files with 64 additions and 129 deletions

View File

@ -5,7 +5,7 @@ Public License V3, which may be found in the FastDFS source kit.
Please visit the FastDFS Home Page for more detail.
English language: http://english.csource.org/
Chinese language: http://www.csource.org/
Wiki: https://github.com/happyfish100/fastdfs/wiki
FastDFS is an open source high performance distributed file system. It's major
functions include: file storing, file syncing and file accessing (file uploading

View File

@ -167,7 +167,7 @@ int main(int argc, char *argv[])
log_destroy();
return result;
}
daemon_init(false);
umask(0);
if ((result=write_to_pid_file(pidFilename)) != 0)
@ -310,111 +310,67 @@ int main(int argc, char *argv[])
log_destroy();
return result;
}
scheduleArray.count = 0;
scheduleArray.entries = scheduleEntries;
memset(scheduleEntries, 0, sizeof(scheduleEntries));
scheduleEntries[0].id = 1;
scheduleEntries[0].time_base.hour = TIME_NONE;
scheduleEntries[0].time_base.minute = TIME_NONE;
scheduleEntries[0].interval = g_sync_log_buff_interval;
scheduleEntries[0].task_func = log_sync_func;
scheduleEntries[0].func_args = &g_log_context;
scheduleEntries[1].id = 2;
scheduleEntries[1].time_base.hour = TIME_NONE;
scheduleEntries[1].time_base.minute = TIME_NONE;
scheduleEntries[1].interval = g_sync_binlog_buff_interval;
scheduleEntries[1].task_func = fdfs_binlog_sync_func;
scheduleEntries[1].func_args = NULL;
scheduleEntries[2].id = 3;
scheduleEntries[2].time_base.hour = TIME_NONE;
scheduleEntries[2].time_base.minute = TIME_NONE;
scheduleEntries[2].interval = g_sync_stat_file_interval;
scheduleEntries[2].task_func = fdfs_stat_file_sync_func;
scheduleEntries[2].func_args = NULL;
scheduleArray.count = 3;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 1, TIME_NONE, TIME_NONE,
g_sync_log_buff_interval, log_sync_func, &g_log_context);
scheduleArray.count++;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 2, TIME_NONE, TIME_NONE,
g_sync_binlog_buff_interval, fdfs_binlog_sync_func, NULL);
scheduleArray.count++;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 3, TIME_NONE, TIME_NONE,
g_sync_stat_file_interval, fdfs_stat_file_sync_func, NULL);
scheduleArray.count++;
if (g_if_use_trunk_file)
{
scheduleEntries[scheduleArray.count].id = 4;
scheduleEntries[scheduleArray.count].time_base.hour = TIME_NONE;
scheduleEntries[scheduleArray.count].time_base.minute=TIME_NONE;
scheduleEntries[scheduleArray.count].interval = 1;
scheduleEntries[scheduleArray.count].task_func = \
trunk_binlog_sync_func;
scheduleEntries[scheduleArray.count].func_args = NULL;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 4, TIME_NONE, TIME_NONE,
1, trunk_binlog_sync_func, NULL);
scheduleArray.count++;
}
if (g_use_access_log)
{
scheduleEntries[scheduleArray.count].id = 5;
scheduleEntries[scheduleArray.count].time_base.hour = TIME_NONE;
scheduleEntries[scheduleArray.count].time_base.minute=TIME_NONE;
scheduleEntries[scheduleArray.count].interval = \
g_sync_log_buff_interval;
scheduleEntries[scheduleArray.count].task_func = log_sync_func;
scheduleEntries[scheduleArray.count].func_args = \
&g_access_log_context;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 5, TIME_NONE, TIME_NONE,
g_sync_log_buff_interval, log_sync_func, &g_access_log_context);
scheduleArray.count++;
if (g_rotate_access_log)
{
scheduleEntries[scheduleArray.count].id = 6;
scheduleEntries[scheduleArray.count].time_base = \
g_access_log_rotate_time;
scheduleEntries[scheduleArray.count].interval = \
24 * 3600;
scheduleEntries[scheduleArray.count].task_func = \
log_notify_rotate;
scheduleEntries[scheduleArray.count].func_args = \
&g_access_log_context;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 6, g_access_log_rotate_time.hour,
g_access_log_rotate_time.minute, 24 * 3600, log_notify_rotate, &g_access_log_context);
scheduleArray.count++;
if (g_log_file_keep_days > 0)
{
log_set_keep_days(&g_access_log_context,
g_log_file_keep_days);
scheduleEntries[scheduleArray.count].id = 7;
scheduleEntries[scheduleArray.count].time_base.hour = 1;
scheduleEntries[scheduleArray.count].time_base.minute = 0;
scheduleEntries[scheduleArray.count].interval = 24 * 3600;
scheduleEntries[scheduleArray.count].task_func =
log_delete_old_files;
scheduleEntries[scheduleArray.count].func_args =
&g_access_log_context;
scheduleArray.count++;
}
}
if (g_log_file_keep_days > 0)
{
log_set_keep_days(&g_access_log_context,
g_log_file_keep_days);
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 7, 1, 0,
24 * 3600, log_delete_old_files, &g_access_log_context);
scheduleArray.count++;
}
}
}
if (g_rotate_error_log)
{
scheduleEntries[scheduleArray.count].id = 8;
scheduleEntries[scheduleArray.count].time_base = \
g_error_log_rotate_time;
scheduleEntries[scheduleArray.count].interval = \
24 * 3600;
scheduleEntries[scheduleArray.count].task_func = \
log_notify_rotate;
scheduleEntries[scheduleArray.count].func_args = \
&g_log_context;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 8, g_error_log_rotate_time.hour,
g_error_log_rotate_time.minute, 24 * 3600, log_notify_rotate, &g_log_context);
scheduleArray.count++;
if (g_log_file_keep_days > 0)
{
log_set_keep_days(&g_log_context, g_log_file_keep_days);
scheduleEntries[scheduleArray.count].id = 9;
scheduleEntries[scheduleArray.count].time_base.hour = 1;
scheduleEntries[scheduleArray.count].time_base.minute = 0;
scheduleEntries[scheduleArray.count].interval = 24 * 3600;
scheduleEntries[scheduleArray.count].task_func =
log_delete_old_files;
scheduleEntries[scheduleArray.count].func_args =
&g_log_context;
scheduleArray.count++;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 9, 1, 0,
24 * 3600, log_delete_old_files, &g_log_context);
scheduleArray.count++;
}
}

View File

@ -311,57 +311,36 @@ int main(int argc, char *argv[])
log_destroy();
return result;
}
scheduleArray.count = 0;
scheduleArray.entries = scheduleEntries;
memset(scheduleEntries, 0, sizeof(scheduleEntries));
scheduleEntries[0].id = 1;
scheduleEntries[0].time_base.hour = TIME_NONE;
scheduleEntries[0].time_base.minute = TIME_NONE;
scheduleEntries[0].interval = g_sync_log_buff_interval;
scheduleEntries[0].task_func = log_sync_func;
scheduleEntries[0].func_args = &g_log_context;
scheduleEntries[1].id = 2;
scheduleEntries[1].time_base.hour = TIME_NONE;
scheduleEntries[1].time_base.minute = TIME_NONE;
scheduleEntries[1].interval = g_check_active_interval;
scheduleEntries[1].task_func = tracker_mem_check_alive;
scheduleEntries[1].func_args = NULL;
scheduleEntries[2].id = 3;
scheduleEntries[2].time_base.hour = 0;
scheduleEntries[2].time_base.minute = 0;
scheduleEntries[2].interval = TRACKER_SYNC_STATUS_FILE_INTERVAL;
scheduleEntries[2].task_func = tracker_write_status_to_file;
scheduleEntries[2].func_args = NULL;
scheduleArray.count = 3;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 1, TIME_NONE, TIME_NONE,
g_sync_log_buff_interval, log_sync_func, &g_log_context);
scheduleArray.count++;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 2, TIME_NONE, TIME_NONE,
g_check_active_interval, tracker_mem_check_alive, NULL);
scheduleArray.count++;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 3, 0, 0,
TRACKER_SYNC_STATUS_FILE_INTERVAL, tracker_write_status_to_file, NULL);
scheduleArray.count++;
if (g_rotate_error_log)
{
scheduleEntries[scheduleArray.count].id = 4;
scheduleEntries[scheduleArray.count].time_base = \
g_error_log_rotate_time;
scheduleEntries[scheduleArray.count].interval = \
24 * 3600;
scheduleEntries[scheduleArray.count].task_func = \
log_notify_rotate;
scheduleEntries[scheduleArray.count].func_args = \
&g_log_context;
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 4, g_error_log_rotate_time.hour,
g_error_log_rotate_time.minute, 24 * 3600, log_notify_rotate, &g_log_context);
scheduleArray.count++;
if (g_log_file_keep_days > 0)
{
log_set_keep_days(&g_log_context, g_log_file_keep_days);
scheduleEntries[scheduleArray.count].id = 5;
scheduleEntries[scheduleArray.count].time_base.hour = 1;
scheduleEntries[scheduleArray.count].time_base.minute = 0;
scheduleEntries[scheduleArray.count].interval = 24 * 3600;
scheduleEntries[scheduleArray.count].task_func =
log_delete_old_files;
scheduleEntries[scheduleArray.count].func_args =
&g_log_context;
scheduleArray.count++;
log_set_keep_days(&g_log_context, g_log_file_keep_days);
INIT_SCHEDULE_ENTRY(scheduleEntries[scheduleArray.count], 5, 1, 0,
24 * 3600, log_delete_old_files, &g_log_context);
scheduleArray.count++;
}
}