Remove sent outbound device list pokes from the database (#7192)

They just get in the way.
This commit is contained in:
Richard van der Hoff 2020-04-07 15:19:19 +01:00 committed by GitHub
parent ce72355d7f
commit 2e105c156b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 24 additions and 2 deletions

1
changelog.d/7192.misc Normal file
View File

@ -0,0 +1 @@
Remove sent outbound device list pokes from the database.

View File

@ -227,11 +227,11 @@ class DeviceWorkerStore(SQLBaseStore):
# get the list of device updates that need to be sent # get the list of device updates that need to be sent
sql = """ sql = """
SELECT user_id, device_id, stream_id, opentracing_context FROM device_lists_outbound_pokes SELECT user_id, device_id, stream_id, opentracing_context FROM device_lists_outbound_pokes
WHERE destination = ? AND ? < stream_id AND stream_id <= ? AND sent = ? WHERE destination = ? AND ? < stream_id AND stream_id <= ?
ORDER BY stream_id ORDER BY stream_id
LIMIT ? LIMIT ?
""" """
txn.execute(sql, (destination, from_stream_id, now_stream_id, False, limit)) txn.execute(sql, (destination, from_stream_id, now_stream_id, limit))
return list(txn) return list(txn)

View File

@ -0,0 +1,21 @@
/* Copyright 2020 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.
*/
-- we no longer keep sent outbound device pokes in the db; clear them out
-- so that we don't have to worry about them.
--
-- This is a sequence scan, but it doesn't take too long.
DELETE FROM device_lists_outbound_pokes WHERE sent;