Merged in victorsl/processmaker/PM-1903 (pull request #1827)
PM-1903 "0017014: ProcessMaker loses connection..." SOLVED
This commit is contained in:
28
gulliver/thirdparty/propel/Propel.php
vendored
28
gulliver/thirdparty/propel/Propel.php
vendored
@@ -596,16 +596,20 @@ class Propel {
|
|||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public static function close()
|
public static function close()
|
||||||
{
|
{
|
||||||
$last = '';
|
$lastQuery = "";
|
||||||
foreach(self::$connectionMap as $conn) {
|
|
||||||
if ($last != $conn->lastQuery) {
|
foreach (self::$connectionMap as $cnn) {
|
||||||
$conn->close();
|
if (!($cnn instanceof DBArrayConnection)) {
|
||||||
}
|
if (gettype($cnn->getResource()) == "resource" && $cnn->isConnected() && $cnn->lastQuery != $lastQuery) {
|
||||||
$last = $conn->lastQuery;
|
$cnn->close();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
$lastQuery = $cnn->lastQuery;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param $name string The connection name
|
* @param $name string The connection name
|
||||||
@@ -622,7 +626,7 @@ class Propel {
|
|||||||
/*----------------------------------********---------------------------------*/
|
/*----------------------------------********---------------------------------*/
|
||||||
}
|
}
|
||||||
/*----------------------------------********---------------------------------*/
|
/*----------------------------------********---------------------------------*/
|
||||||
|
|
||||||
if (! empty(self::$configuration['datasources'][$name]['connection'])) {
|
if (! empty(self::$configuration['datasources'][$name]['connection'])) {
|
||||||
return self::getConnection($name);
|
return self::getConnection($name);
|
||||||
}
|
}
|
||||||
@@ -630,7 +634,7 @@ class Propel {
|
|||||||
// the connection names always should be have a underscore like: workflow_ro, rbac_rw
|
// the connection names always should be have a underscore like: workflow_ro, rbac_rw
|
||||||
// on fallback, we will try found a connection named: "workflow" if "workflow_ro" does not exist.
|
// on fallback, we will try found a connection named: "workflow" if "workflow_ro" does not exist.
|
||||||
// the name without the "_ro" part.
|
// the name without the "_ro" part.
|
||||||
|
|
||||||
$defaultDbName = substr($name, 0, strrpos($name, '_'));
|
$defaultDbName = substr($name, 0, strrpos($name, '_'));
|
||||||
|
|
||||||
if (! empty(self::$configuration['datasources'][$defaultDbName]['connection'])) {
|
if (! empty(self::$configuration['datasources'][$defaultDbName]['connection'])) {
|
||||||
|
|||||||
@@ -1,4 +1,15 @@
|
|||||||
<?php
|
<?php
|
||||||
|
register_shutdown_function(
|
||||||
|
create_function(
|
||||||
|
"",
|
||||||
|
"
|
||||||
|
if (class_exists(\"Propel\")) {
|
||||||
|
Propel::close();
|
||||||
|
}
|
||||||
|
"
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* cron_single.php
|
* cron_single.php
|
||||||
* @package workflow-engine-bin
|
* @package workflow-engine-bin
|
||||||
|
|||||||
@@ -1,4 +1,15 @@
|
|||||||
<?php
|
<?php
|
||||||
|
register_shutdown_function(
|
||||||
|
create_function(
|
||||||
|
"",
|
||||||
|
"
|
||||||
|
if (class_exists(\"Propel\")) {
|
||||||
|
Propel::close();
|
||||||
|
}
|
||||||
|
"
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
ini_set("memory_limit", "512M");
|
ini_set("memory_limit", "512M");
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|||||||
@@ -1,4 +1,15 @@
|
|||||||
<?php
|
<?php
|
||||||
|
register_shutdown_function(
|
||||||
|
create_function(
|
||||||
|
"",
|
||||||
|
"
|
||||||
|
if (class_exists(\"Propel\")) {
|
||||||
|
Propel::close();
|
||||||
|
}
|
||||||
|
"
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ProcessMaker Web Application Bootstrap
|
* ProcessMaker Web Application Bootstrap
|
||||||
*/
|
*/
|
||||||
@@ -30,7 +41,7 @@ try {
|
|||||||
}
|
}
|
||||||
$loader->add($rootDir . 'workflow/engine/src/', "ProcessMaker");
|
$loader->add($rootDir . 'workflow/engine/src/', "ProcessMaker");
|
||||||
$loader->add($rootDir . 'workflow/engine/src/');
|
$loader->add($rootDir . 'workflow/engine/src/');
|
||||||
|
|
||||||
// add vendors to autoloader
|
// add vendors to autoloader
|
||||||
$loader->add($rootDir . 'vendor/luracast/restler/vendor', "Luracast");
|
$loader->add($rootDir . 'vendor/luracast/restler/vendor', "Luracast");
|
||||||
$loader->add($rootDir . 'vendor/bshaffer/oauth2-server-php/src/', "OAuth2");
|
$loader->add($rootDir . 'vendor/bshaffer/oauth2-server-php/src/', "OAuth2");
|
||||||
|
|||||||
Reference in New Issue
Block a user