summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBharat Mediratta <bharat@menalto.com>2012-11-15 01:40:53 -0800
committerBharat Mediratta <bharat@menalto.com>2012-11-15 01:40:53 -0800
commitbcdf2b56c62c63644cc6fa6796def559d7b18be8 (patch)
treec192f93f286fb0ca09b15a70f99b2b35833dc520
parent1ac8c883ab0db973659228f351d5b608200e6a56 (diff)
parentce9199a955c6f3446de6892f5dfed0035d326123 (diff)
Merge pull request #75 from chalbertgit/master
Ticket #1907, Add lock timeout as an editable variable in admin=>settings=>advanced
-rw-r--r--installer/install.sql1
-rw-r--r--modules/gallery/helpers/gallery_installer.php11
-rw-r--r--modules/gallery/libraries/ORM_MPTT.php3
-rw-r--r--modules/gallery/module.info2
4 files changed, 14 insertions, 3 deletions
diff --git a/installer/install.sql b/installer/install.sql
index aee0900c..0156b9db 100644
--- a/installer/install.sql
+++ b/installer/install.sql
@@ -411,6 +411,7 @@ INSERT INTO {vars} VALUES (NULL,'gallery','email_from','unknown@unknown.com');
INSERT INTO {vars} VALUES (NULL,'gallery','email_reply_to','unknown@unknown.com');
INSERT INTO {vars} VALUES (NULL,'gallery','email_line_length','70');
INSERT INTO {vars} VALUES (NULL,'gallery','email_header_separator','s:1:\"\n\";');
+INSERT INTO {vars} VALUES (NULL,'gallery','lock_timeout','1');
INSERT INTO {vars} VALUES (NULL,'gallery','show_user_profiles_to','registered_users');
INSERT INTO {vars} VALUES (NULL,'gallery','extra_binary_paths','/usr/local/bin:/opt/local/bin:/opt/bin');
INSERT INTO {vars} VALUES (NULL,'gallery','timezone',NULL);
diff --git a/modules/gallery/helpers/gallery_installer.php b/modules/gallery/helpers/gallery_installer.php
index e556b49a..99bc3726 100644
--- a/modules/gallery/helpers/gallery_installer.php
+++ b/modules/gallery/helpers/gallery_installer.php
@@ -312,8 +312,9 @@ class gallery_installer {
module::set_var("gallery", "show_user_profiles_to", "registered_users");
module::set_var("gallery", "extra_binary_paths", "/usr/local/bin:/opt/local/bin:/opt/bin");
module::set_var("gallery", "timezone", null);
+ module::set_var("gallery", "lock_timeout", 1);
- module::set_version("gallery", 50);
+ module::set_version("gallery", 51);
}
static function upgrade($version) {
@@ -713,6 +714,14 @@ class gallery_installer {
}
module::set_version("gallery", $version = 50);
}
+
+ if ($version == 50) {
+ // In v50, a lock_timeout variable was added so that administrators could edit the time out
+ // from 1 second to a higher variable if their system runs concurrent parallel uploads for
+ // instance.
+ module::set_var("gallery", "lock_timeout", 1);
+ module::set_version("gallery", $version = 51);
+ }
}
static function uninstall() {
diff --git a/modules/gallery/libraries/ORM_MPTT.php b/modules/gallery/libraries/ORM_MPTT.php
index 534dd13b..ce0b102c 100644
--- a/modules/gallery/libraries/ORM_MPTT.php
+++ b/modules/gallery/libraries/ORM_MPTT.php
@@ -324,7 +324,8 @@ class ORM_MPTT_Core extends ORM {
* Lock the tree to prevent concurrent modification.
*/
protected function lock() {
- $result = $this->db->query("SELECT GET_LOCK('{$this->table_name}', 1) AS l")->current();
+ $timeout = module::get_var("gallery", "lock_timeout");
+ $result = $this->db->query("SELECT GET_LOCK('{$this->table_name}', $timeout) AS l")->current();
if (empty($result->l)) {
throw new Exception("@todo UNABLE_TO_LOCK_EXCEPTION");
}
diff --git a/modules/gallery/module.info b/modules/gallery/module.info
index a905a241..424c0c2d 100644
--- a/modules/gallery/module.info
+++ b/modules/gallery/module.info
@@ -1,6 +1,6 @@
name = "Gallery 3"
description = "Gallery core application"
-version = 50
+version = 51
author_name = "Gallery Team"
author_url = "http://codex.gallery2.org/Gallery:Team"
info_url = "http://codex.gallery2.org/Gallery3:Modules:gallery"