summaryrefslogtreecommitdiff
path: root/database/updates.inc
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2006-05-16 09:22:36 +0000
committerDries Buytaert <dries@buytaert.net>2006-05-16 09:22:36 +0000
commit3d38b57220a6302f34d31b332c1b680569493ab9 (patch)
tree7c35a1a4d40bfeec3569d4ca3efbd47e854924b4 /database/updates.inc
parent2d9eaf01cf87f56f5b159ac25c588097316dd74f (diff)
downloadbrdo-3d38b57220a6302f34d31b332c1b680569493ab9.tar.gz
brdo-3d38b57220a6302f34d31b332c1b680569493ab9.tar.bz2
- Patch #41481 by Zen, Cvbge, sun et al: bugfix: duplicate key error while editing locale strings.
Diffstat (limited to 'database/updates.inc')
-rw-r--r--database/updates.inc16
1 files changed, 15 insertions, 1 deletions
diff --git a/database/updates.inc b/database/updates.inc
index a854e97ce..e6c1874aa 100644
--- a/database/updates.inc
+++ b/database/updates.inc
@@ -1218,7 +1218,7 @@ function system_update_159() {
case 'mysql':
$ret[] = update_sql("UPDATE {sequences} SET id = $vid WHERE name = '{node_revisions}_vid'");
break;
-
+
case 'pgsql':
$ret[] = update_sql("SELECT setval('{node_revisions}_vid_seq', $vid)");
break;
@@ -1993,3 +1993,17 @@ function system_update_181() {
}
return $ret;
}
+
+/**
+ * The lid field in pgSQL should not be UNIQUE, but an INDEX.
+ */
+function system_update_182() {
+ $ret = array();
+
+ if ($GLOBALS['db_type'] == 'pgsql') {
+ $ret[] = update_sql('ALTER TABLE {locales_target} DROP CONSTRAINT {locales_target}_lid_idx');
+ $ret[] = update_sql('CREATE INDEX {locales_target}_lid_idx ON {locales_target} (lid)');
+ }
+
+ return $ret;
+}