Store spooled data
This commit is contained in:
parent
c5d571287c
commit
6845775ff9
3 changed files with 9 additions and 3 deletions
|
@ -846,7 +846,6 @@ function item_store($arr,$force_parent = false, $notify = false, $dontcache = fa
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// This can happen - for example - if there are locking timeouts.
|
// This can happen - for example - if there are locking timeouts.
|
||||||
logger("Item wasn't stored - we quit here.");
|
|
||||||
q("ROLLBACK");
|
q("ROLLBACK");
|
||||||
|
|
||||||
// Store the data into a spool file so that we can try again later.
|
// Store the data into a spool file so that we can try again later.
|
||||||
|
@ -856,8 +855,10 @@ function item_store($arr,$force_parent = false, $notify = false, $dontcache = fa
|
||||||
$arr['dsprsig'] = $encoded_signature;
|
$arr['dsprsig'] = $encoded_signature;
|
||||||
|
|
||||||
// Now we store the data in the spool directory
|
// Now we store the data in the spool directory
|
||||||
$spool = get_spoolpath().'/'.round(microtime(true) * 10000).".msg";
|
$file = 'item-'.round(microtime(true) * 10000).".msg";
|
||||||
|
$spool = get_spoolpath().'/'.$file;
|
||||||
file_put_contents($spool, json_encode($arr));
|
file_put_contents($spool, json_encode($arr));
|
||||||
|
logger("Item wasn't stored - Item was spooled into file ".$file, LOGGER_DEBUG);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -556,6 +556,9 @@ function clear_worker_processes() {
|
||||||
function poller_run_cron() {
|
function poller_run_cron() {
|
||||||
logger('Add cron entries', LOGGER_DEBUG);
|
logger('Add cron entries', LOGGER_DEBUG);
|
||||||
|
|
||||||
|
// Check for spooled items
|
||||||
|
proc_run(PRIORITY_HIGH, "include/spool_post.php");
|
||||||
|
|
||||||
// Run the cron job that calls all other jobs
|
// Run the cron job that calls all other jobs
|
||||||
proc_run(PRIORITY_MEDIUM, "include/cron.php");
|
proc_run(PRIORITY_MEDIUM, "include/cron.php");
|
||||||
|
|
||||||
|
|
|
@ -14,8 +14,10 @@ function worker_init($a){
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// We don't need the following lines if we can execute background jobs
|
// We don't need the following lines if we can execute background jobs.
|
||||||
|
// So we just wake up the worker if it sleeps.
|
||||||
if (function_exists("proc_open")) {
|
if (function_exists("proc_open")) {
|
||||||
|
call_worker_if_idle();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue