mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-05-02 11:16:07 -04:00
Merge branch 'develop' of github.com:matrix-org/synapse into erikj/disable_sql_bytes
This commit is contained in:
commit
91f43dca39
135 changed files with 2482 additions and 1700 deletions
20
synapse/storage/schema/delta/56/drop_unused_event_tables.sql
Normal file
20
synapse/storage/schema/delta/56/drop_unused_event_tables.sql
Normal file
|
@ -0,0 +1,20 @@
|
|||
/* Copyright 2019 The Matrix.org Foundation C.I.C.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
-- these tables are never used.
|
||||
DROP TABLE IF EXISTS room_names;
|
||||
DROP TABLE IF EXISTS topics;
|
||||
DROP TABLE IF EXISTS history_visibility;
|
||||
DROP TABLE IF EXISTS guest_access;
|
16
synapse/storage/schema/delta/56/public_room_list_idx.sql
Normal file
16
synapse/storage/schema/delta/56/public_room_list_idx.sql
Normal file
|
@ -0,0 +1,16 @@
|
|||
/* Copyright 2019 The Matrix.org Foundation C.I.C.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
CREATE INDEX public_room_list_stream_network ON public_room_list_stream (appservice_id, network_id, room_id);
|
52
synapse/storage/schema/delta/56/unique_user_filter_index.py
Normal file
52
synapse/storage/schema/delta/56/unique_user_filter_index.py
Normal file
|
@ -0,0 +1,52 @@
|
|||
import logging
|
||||
|
||||
from synapse.storage.engines import PostgresEngine
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
"""
|
||||
This migration updates the user_filters table as follows:
|
||||
|
||||
- drops any (user_id, filter_id) duplicates
|
||||
- makes the columns NON-NULLable
|
||||
- turns the index into a UNIQUE index
|
||||
"""
|
||||
|
||||
|
||||
def run_upgrade(cur, database_engine, *args, **kwargs):
|
||||
pass
|
||||
|
||||
|
||||
def run_create(cur, database_engine, *args, **kwargs):
|
||||
if isinstance(database_engine, PostgresEngine):
|
||||
select_clause = """
|
||||
SELECT DISTINCT ON (user_id, filter_id) user_id, filter_id, filter_json
|
||||
FROM user_filters
|
||||
"""
|
||||
else:
|
||||
select_clause = """
|
||||
SELECT * FROM user_filters GROUP BY user_id, filter_id
|
||||
"""
|
||||
sql = """
|
||||
DROP TABLE IF EXISTS user_filters_migration;
|
||||
DROP INDEX IF EXISTS user_filters_unique;
|
||||
CREATE TABLE user_filters_migration (
|
||||
user_id TEXT NOT NULL,
|
||||
filter_id BIGINT NOT NULL,
|
||||
filter_json BYTEA NOT NULL
|
||||
);
|
||||
INSERT INTO user_filters_migration (user_id, filter_id, filter_json)
|
||||
%s;
|
||||
CREATE UNIQUE INDEX user_filters_unique ON user_filters_migration
|
||||
(user_id, filter_id);
|
||||
DROP TABLE user_filters;
|
||||
ALTER TABLE user_filters_migration RENAME TO user_filters;
|
||||
""" % (
|
||||
select_clause,
|
||||
)
|
||||
|
||||
if isinstance(database_engine, PostgresEngine):
|
||||
cur.execute(sql)
|
||||
else:
|
||||
cur.executescript(sql)
|
Loading…
Add table
Add a link
Reference in a new issue