mirror of
https://github.com/silverstripe/silverstripe-reports
synced 2024-10-22 11:05:53 +02:00
MINOR added locking to static publisher to avoid two queues running at the same time. (from r87792)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/cms/branches/2.4@98164 467b73ca-7a2a-4603-9d3b-597d59a354a9
This commit is contained in:
parent
7514bdcd6b
commit
0fc5b63270
@ -86,9 +86,11 @@ SideReportRecord.prototype = {
|
||||
},
|
||||
|
||||
onclick : function(event) {
|
||||
if (!this.getAttribute('reloadCMS')) {
|
||||
Event.stop(event);
|
||||
$('sitetree').loadingNode = $('sitetree').getTreeNodeByIdx( this.getID() );
|
||||
$('Form_EditForm').getPageFromServer(this.getID());
|
||||
}
|
||||
},
|
||||
getID : function() {
|
||||
if(this.href.match(/\/([^\/]+)$/)) return parseInt(RegExp.$1);
|
||||
|
@ -44,6 +44,11 @@ class RebuildStaticCacheTask extends Controller {
|
||||
echo "Rebuilding cache.\nNOTE: Please ensure that this page ends with 'Done!' - if not, then something may have gone wrong.\n\n";
|
||||
|
||||
$page = singleton('Page');
|
||||
$cacheBaseDir = $page->getDestDir();
|
||||
|
||||
if (file_exists($cacheBaseDir.'/lock') && !isset($_REQUEST['force'])) die("There already appears to be a publishing queue running. You can skip warning this by adding ?/&force to the URL.");
|
||||
|
||||
touch($cacheBaseDir.'/lock');
|
||||
|
||||
foreach($urls as $i => $url) {
|
||||
if($url && !is_string($url)) {
|
||||
@ -68,8 +73,6 @@ class RebuildStaticCacheTask extends Controller {
|
||||
if(!isset($_GET['urls']) && $start == 0 && file_exists("../cache")) {
|
||||
echo "Removing stale cache files... \n";
|
||||
flush();
|
||||
$cacheBaseDir = $page->getDestDir();
|
||||
|
||||
if (FilesystemPublisher::$domain_based_caching) {
|
||||
// Glob each dir, then glob each one of those
|
||||
foreach(glob(BASE_PATH . '/cache/*', GLOB_ONLYDIR) as $cacheDir) {
|
||||
@ -89,6 +92,9 @@ class RebuildStaticCacheTask extends Controller {
|
||||
}
|
||||
echo "Rebuilding cache from " . sizeof($mappedUrls) . " urls...\n\n";
|
||||
$page->extend('publishPages', $mappedUrls);
|
||||
|
||||
if (file_exists($cacheBaseDir.'/lock')) unlink($cacheBaseDir.'/lock');
|
||||
|
||||
echo "\n\n== Done! ==";
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user