[Rt-commit] rt branch 4.4/create-index-on-objectcustomfields-objectid created. rt-4.4.5-7-gd047b1c3e2
BPS Git Server
git at git.bestpractical.com
Wed Dec 22 21:21:54 UTC 2021
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "rt".
The branch, 4.4/create-index-on-objectcustomfields-objectid has been created
at d047b1c3e2d1db9c2c0b18a4de1a6e2bc78848b0 (commit)
- Log -----------------------------------------------------------------
commit d047b1c3e2d1db9c2c0b18a4de1a6e2bc78848b0
Author: Brian Conry <bconry at bestpractical.com>
Date: Wed Dec 22 08:39:00 2021 -0600
Add index on ObjectCustomFields.ObjectId
Enhance performance of queries looking for custom fields by the specific
objects that they are applied to, e.g. RT::Queue->TicketCustomFields to
find the custom fields for tickets in a particular queue.
Primarily benefits installations with a very large number of custom
fields.
diff --git a/etc/schema.Oracle b/etc/schema.Oracle
index b3e677b827..92248d2e65 100644
--- a/etc/schema.Oracle
+++ b/etc/schema.Oracle
@@ -320,6 +320,8 @@ CREATE TABLE ObjectCustomFields (
LastUpdated DATE
);
+CREATE INDEX ObjectCustomFields1 ON ObjectCustomFields (ObjectId);
+
CREATE SEQUENCE OBJECTCUSTOMFIELDVALUES_seq;
CREATE TABLE ObjectCustomFieldValues (
diff --git a/etc/schema.Pg b/etc/schema.Pg
index aa4b437e0a..1eeda6355c 100644
--- a/etc/schema.Pg
+++ b/etc/schema.Pg
@@ -574,6 +574,8 @@ CREATE TABLE ObjectCustomFields (
);
+CREATE INDEX ObjectCustomFields1 ON ObjectCustomFields (ObjectId);
+
diff --git a/etc/schema.SQLite b/etc/schema.SQLite
index f8e6ae9327..4d48e2b800 100644
--- a/etc/schema.SQLite
+++ b/etc/schema.SQLite
@@ -414,6 +414,8 @@ CREATE TABLE ObjectCustomFields (
PRIMARY KEY (id)
) ;
+CREATE INDEX ObjectCustomFields1 ON ObjectCustomFields (ObjectId);
+
CREATE TABLE CustomFieldValues (
diff --git a/etc/schema.mysql b/etc/schema.mysql
index eefc145ca4..21975aba55 100644
--- a/etc/schema.mysql
+++ b/etc/schema.mysql
@@ -386,6 +386,8 @@ CREATE TABLE ObjectCustomFields (
PRIMARY KEY (id)
) ENGINE=InnoDB CHARACTER SET utf8;
+CREATE INDEX ObjectCustomFields1 ON ObjectCustomFields (ObjectId);
+
CREATE TABLE CustomFieldValues (
diff --git a/etc/upgrade/4.4.6/indexes b/etc/upgrade/4.4.6/indexes
new file mode 100644
index 0000000000..1147a739a3
--- /dev/null
+++ b/etc/upgrade/4.4.6/indexes
@@ -0,0 +1,9 @@
+use strict;
+use warnings;
+
+$RT::Handle->MakeSureIndexExists(
+ Table => 'ObjectCustomFields',
+ Columns => ['ObjectId'],
+);
+
+1;
-----------------------------------------------------------------------
hooks/post-receive
--
rt
More information about the rt-commit
mailing list