diff --git a/apps/files_sharing/appinfo/Migrations/Version20170830112305.php b/apps/files_sharing/appinfo/Migrations/Version20170830112305.php new file mode 100644 index 000000000000..32ece009175c --- /dev/null +++ b/apps/files_sharing/appinfo/Migrations/Version20170830112305.php @@ -0,0 +1,39 @@ + + * + * @copyright Copyright (c) 2017, ownCloud GmbH. + * @license AGPL-3.0 + * + * This code is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License, version 3, + * as published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License, version 3, + * along with this program. If not, see + * + */ + +namespace OCA\Files_Sharing\Migrations; + +use Doctrine\DBAL\Schema\Schema; +use OCP\Migration\ISchemaMigration; + +/** add index to costly query */ +class Version20170830112305 implements ISchemaMigration { + public function changeSchema(Schema $schema, array $options) { + $prefix = $options['tablePrefix']; + + if ($schema->hasTable("${prefix}share")) { + $table = $schema->getTable("${prefix}share"); + if (!$table->hasIndex('share_with_index')) { + $table->addIndex(['share_with'], 'share_with_index'); + } + } + } +}