From 30aa8c72ef8604d1ecd3e0f884ed2b45c617b5d7 Mon Sep 17 00:00:00 2001 From: Tom Needham Date: Fri, 19 May 2017 10:39:51 +0100 Subject: [PATCH] [stable10] Add index to oc_cards to assist with searching large number of rows --- .../Migrations/Version20170519091921.php | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 apps/dav/appinfo/Migrations/Version20170519091921.php diff --git a/apps/dav/appinfo/Migrations/Version20170519091921.php b/apps/dav/appinfo/Migrations/Version20170519091921.php new file mode 100644 index 000000000000..30b51f92765c --- /dev/null +++ b/apps/dav/appinfo/Migrations/Version20170519091921.php @@ -0,0 +1,27 @@ +getTable("${prefix}cards"); + // Check for existing index spanning these columns + foreach ($table->getIndexes() as $index) { + // Check if we have a matching index already + if(empty(array_diff($index->getColumns(), ['uri', 'addressbookid']))) { + return; + } + + } + // Add the index if we dont have one spanning this column already + $table->addIndex(['addressbookid', 'uri'], 'addressbookid_uri_index'); + } + +}