mirror of
https://github.com/torrentpier/torrentpier
synced 2025-08-14 10:37:30 -07:00
Перенос файлов движка в корень
This commit is contained in:
parent
584f692288
commit
f94c0dd2ee
585 changed files with 14 additions and 14 deletions
129
library/includes/cron/cron_run.php
Normal file
129
library/includes/cron/cron_run.php
Normal file
|
@ -0,0 +1,129 @@
|
|||
<?php
|
||||
|
||||
if (!defined('BB_ROOT')) die(basename(__FILE__));
|
||||
|
||||
define('IN_CRON', true);
|
||||
|
||||
// Set SESSION vars
|
||||
DB()->query("
|
||||
SET SESSION
|
||||
myisam_sort_buffer_size = 16*1024*1024
|
||||
, bulk_insert_buffer_size = 8*1024*1024
|
||||
, join_buffer_size = 4*1024*1024
|
||||
, read_buffer_size = 4*1024*1024
|
||||
, read_rnd_buffer_size = 8*1024*1024
|
||||
, sort_buffer_size = 4*1024*1024
|
||||
, tmp_table_size = 80*1024*1024
|
||||
, group_concat_max_len = 1*1024*1024
|
||||
");
|
||||
|
||||
// Restore vars at shutdown
|
||||
DB()->add_shutdown_query("
|
||||
SET SESSION
|
||||
myisam_sort_buffer_size = DEFAULT
|
||||
, bulk_insert_buffer_size = DEFAULT
|
||||
, join_buffer_size = DEFAULT
|
||||
, read_buffer_size = DEFAULT
|
||||
, read_rnd_buffer_size = DEFAULT
|
||||
, sort_buffer_size = DEFAULT
|
||||
, tmp_table_size = DEFAULT
|
||||
, group_concat_max_len = DEFAULT
|
||||
");
|
||||
|
||||
// $cron_jobs obtained in cron_check.php
|
||||
foreach ($cron_jobs as $job)
|
||||
{
|
||||
$job_script = CRON_JOB_DIR . basename($job['cron_script']);
|
||||
|
||||
if (file_exists($job_script))
|
||||
{
|
||||
$cron_start_time = utime();
|
||||
$cron_runtime_log = '';
|
||||
$cron_write_log = (CRON_LOG_ENABLED && (CRON_FORCE_LOG || $job['log_enabled'] >= 1));
|
||||
$cron_sql_log_file = CRON_LOG_DIR .'SQL-'. basename($job['cron_script']);
|
||||
|
||||
if ($cron_write_log)
|
||||
{
|
||||
$msg = array();
|
||||
$msg[] = 'start';
|
||||
$msg[] = date('m-d');
|
||||
$msg[] = date('H:i:s');
|
||||
$msg[] = sprintf('%-4s', round(sys('la'), 1));
|
||||
$msg[] = sprintf('%05d', getmypid());
|
||||
$msg[] = $job['cron_title'];
|
||||
$msg = join(LOG_SEPR, $msg);
|
||||
bb_log($msg . LOG_LF, CRON_LOG_DIR . CRON_LOG_FILE);
|
||||
}
|
||||
|
||||
if ($job['log_sql_queries'])
|
||||
{
|
||||
DB()->log_next_query(100000, $cron_sql_log_file);
|
||||
}
|
||||
|
||||
set_time_limit(600);
|
||||
require($job_script);
|
||||
|
||||
if ($job['log_sql_queries'])
|
||||
{
|
||||
DB()->log_next_query(0);
|
||||
bb_log(LOG_LF, $cron_sql_log_file);
|
||||
}
|
||||
|
||||
if ($cron_write_log)
|
||||
{
|
||||
$msg = array();
|
||||
$msg[] = ' end';
|
||||
$msg[] = date('m-d');
|
||||
$msg[] = date('H:i:s');
|
||||
$msg[] = sprintf('%-4s', round(sys('la'), 1));
|
||||
$msg[] = sprintf('%05d', getmypid());
|
||||
$msg[] = round(utime() - $cron_start_time) .'/'. round(utime() - TIMESTART) . ' sec';
|
||||
$msg = join(LOG_SEPR, $msg);
|
||||
$msg .= LOG_LF .'------=-------=----------=------=-------=----------';
|
||||
bb_log($msg . LOG_LF, CRON_LOG_DIR . CRON_LOG_FILE);
|
||||
|
||||
if ($cron_runtime_log)
|
||||
{
|
||||
$runtime_log_file = ($job['log_file']) ? $job['log_file'] : $job['cron_script'];
|
||||
bb_log($cron_runtime_log . LOG_LF, CRON_LOG_DIR . basename($runtime_log_file));
|
||||
}
|
||||
}
|
||||
|
||||
DB()->query("
|
||||
UPDATE ". BB_CRON ." SET
|
||||
last_run = NOW(),
|
||||
run_counter = run_counter + 1,
|
||||
next_run =
|
||||
CASE
|
||||
WHEN schedule = 'hourly' THEN
|
||||
DATE_ADD(NOW(), INTERVAL 1 HOUR)
|
||||
WHEN schedule = 'daily' THEN
|
||||
DATE_ADD(DATE_ADD(CURDATE(), INTERVAL 1 DAY), INTERVAL TIME_TO_SEC(run_time) SECOND)
|
||||
WHEN schedule = 'weekly' THEN
|
||||
DATE_ADD(
|
||||
DATE_ADD(DATE_SUB(CURDATE(), INTERVAL WEEKDAY(NOW()) DAY), INTERVAL 7 DAY),
|
||||
INTERVAL CONCAT(ROUND(run_day-1), ' ', run_time) DAY_SECOND)
|
||||
WHEN schedule = 'monthly' THEN
|
||||
DATE_ADD(
|
||||
DATE_ADD(DATE_SUB(CURDATE(), INTERVAL DAYOFMONTH(NOW())-1 DAY), INTERVAL 1 MONTH),
|
||||
INTERVAL CONCAT(ROUND(run_day-1), ' ', run_time) DAY_SECOND)
|
||||
ELSE
|
||||
DATE_ADD(NOW(), INTERVAL TIME_TO_SEC(run_interval) SECOND)
|
||||
END
|
||||
WHERE cron_id = {$job['cron_id']}
|
||||
LIMIT 1
|
||||
");
|
||||
|
||||
sleep(1);
|
||||
|
||||
if (utime() - TIMESTART > 600)
|
||||
{
|
||||
return; // чтобы daily скрипты не блокировали надолго interval'ные
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$cron_err_msg = "Can not run \"{$job['cron_title']}\" : file \"$job_script\" not found". LOG_LF;
|
||||
bb_log($cron_err_msg, 'cron_error');
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue