Commit graph

1180 commits

Author SHA1 Message Date
Matthew Hodgson
de53608f98 fix nightmare bug where sqlite doesn't let you use out of order sub strings 2020-09-09 02:14:06 +01:00
Neil Alexander
faa070bbc2
Don't panic 2020-09-08 14:07:59 +01:00
Neil Alexander
bcbe6512a4
Merge branch 'master' into matthew/peeking 2020-09-08 14:07:06 +01:00
Neil Alexander
6fe281a13d
Don't return sql.ErrNoRows on DeletePeeks since that is not an error condition 2020-09-08 14:06:08 +01:00
Neil Alexander
56001d0d4f
Only call Membership() on membership events 2020-09-08 14:05:53 +01:00
Neil Alexander
668a722ee0
Backoff for 401s (#1410)
* Backoff for 401s

* Human-readable retry_after in logs
2020-09-08 13:41:08 +01:00
Matthew Hodgson
7a76f4961a notify new streampos after joining peeked rooms 2020-09-08 12:28:22 +01:00
Matthew Hodgson
b96a31db51 track transitions more clearly 2020-09-08 11:57:49 +01:00
Matthew Hodgson
9f2bc6231f (broken) rewrite to use SelectPeeksInRange rather than MarkPeeksAsOld for idempotency 2020-09-08 11:05:54 +01:00
Neil Alexander
726ad6ce2e
Backoff ignore invalid signatures (#1408) 2020-09-08 10:28:13 +01:00
Matthew Hodgson
7f41f39684 remove erroneous commentary 2020-09-08 09:25:05 +01:00
Matthew Hodgson
034ff3208c move peek-cancelling to consumer 2020-09-08 01:42:27 +01:00
Matthew Hodgson
55c7f2c892 add (broken) postgres; advance streampos whenever sync output changes 2020-09-08 00:56:50 +01:00
Neil Alexander
1602df8752
Ignore state events with invalid signatures when joining rooms (#1407)
* Use state from RespSendJoin post-check

* Don't create input events for invalid events

* Let's try this again

* Update gomatrixserverlib

* Update gomatrixserverlib to matrix-org/gomatrixserverlib@38f437f
2020-09-07 16:54:51 +01:00
Kegsay
c992f4f1f4
Remove current state server (#1405)
* Remove current state server

Closes #1365 #1272 #1357

* Remove current state server from scripts/docs
2020-09-07 14:47:59 +01:00
Neil Alexander
8589f8373e
Update gomatrixserverlib to matrix-org/gomatrixserverlib@66753e2 2020-09-07 14:39:04 +01:00
Kegsay
7913759921
Remove QueryBulkStateContent from current state server (#1404)
* Remove QueryBulkStateContent from current state server

Expected fail due to db impl not existing

* Implement query bulk state content

* Fix up rejecting invites over federation

* Fix bulk content marshalling
2020-09-07 12:38:09 +01:00
Neil Alexander
895ead8048
Use background context when processing event with missing state (#1403)
* Use background context when processing event with missing state

* Five minute timeout

* Remove context from txnreq, thread through instead

* Fix unit tests
2020-09-07 12:32:40 +01:00
Neil Alexander
b9caccbce8
Update GetStateEvent behaviour (#1399) 2020-09-04 19:40:21 +01:00
Neil Alexander
843b7a7d04
Fix PerformPeekPath 2020-09-04 16:32:29 +01:00
Neil Alexander
8bbccab66e
Merge branch 'matthew/peeking' of github.com:matrix-org/dendrite into matthew/peeking 2020-09-04 16:17:41 +01:00
Neil Alexander
2ccd4fa069
Clear a whole bunch of lint issues 2020-09-04 16:17:02 +01:00
Neil Alexander
ff65f0ec7b
Revert "Merge branch 'kegan/HACK-goid-sqlite-db-is-locked' into matthew/peeking"
This reverts commit 3cebd8dbfb, reversing
changes made to ed4b3a58a7.
2020-09-04 16:14:40 +01:00
Neil Alexander
5c04c52571
Add PerformPeek full-HTTP serverside 2020-09-04 16:09:22 +01:00
Neil Alexander
64fe2741c0
Merge branch 'master' into matthew/peeking 2020-09-04 16:08:12 +01:00
Kegsay
088294ee65
Remove QueryRoomsForUser from current state server (#1398) 2020-09-04 15:58:30 +01:00
Neil Alexander
83c559c8b0
Merge branch 'master' into matthew/peeking 2020-09-04 15:18:38 +01:00
Neil Alexander
5076925c18
Password changes (#1397)
* User API support for password changes

* Password changes in client API

* Update sytest-whitelist

* Remove debug logging

* Default logout_devices to true

* Fix deleting devices by local part
2020-09-04 15:16:13 +01:00
Neil Alexander
ca0406e6c7
Fix unit test 2020-09-04 14:40:01 +01:00
Neil Alexander
9ad05e708d
Merge branch 'master' into matthew/peeking 2020-09-04 14:39:44 +01:00
Kegsay
ca8dcf46b7
Remove QuerySharedUsers from current state server (#1396)
* Remove QuerySharedUsers from current state server

* Bugfixes
2020-09-04 14:25:01 +01:00
Neil Alexander
56d772fafc
Cancel peeks on join again 2020-09-04 14:20:00 +01:00
Neil Alexander
2b8f0b8f59
Merge branch 'master' into matthew/peeking 2020-09-04 14:15:51 +01:00
Kegsay
81688d6bde
Remove QueryCurrentState from current-state-server (#1395) 2020-09-04 12:30:56 +01:00
Kegsay
67cc8619d3
Remove QueryKnownUsers from current state server (#1393)
* Remove QueryKnownUsers from current state server

* Fix HTTP mode
2020-09-04 11:46:01 +01:00
Neil Alexander
c63abc8660
Sync bug fixes (#1394)
* Sync bug fixes

* Remove logging
2020-09-04 11:20:47 +01:00
Kegsay
2570418f42
Remove ServerACLs from the current state server (#1390)
* Remove ServerACLs from the current state server

Functionality moved to roomserver

* Nothing to see here, move along
2020-09-04 10:40:58 +01:00
Neil Alexander
f1a98e1193
Fix nil txn bug 2020-09-04 10:22:32 +01:00
Matthew Hodgson
4f5c8cac33
Merge branch 'master' into matthew/peeking 2020-09-04 00:06:58 +01:00
Matthew Hodgson
c775643c50 correctly refactor perform_peek 2020-09-03 23:19:17 +01:00
Matthew Hodgson
3c5e079b87 fix package 2020-09-03 23:06:14 +01:00
Matthew Hodgson
da3742c8e2 move perform_peek 2020-09-03 22:39:12 +01:00
Matthew Hodgson
eda84cd915 reject peeks for non-worldreadable rooms 2020-09-03 22:15:30 +01:00
Neil Alexander
04bc09f591
Defer keyserver and federationsender wakeups to give HTTP listeners time to start (#1389) 2020-09-03 21:17:55 +01:00
Matthew Hodgson
8712ea337a Merge branch 'master' into matthew/peeking 2020-09-03 21:01:30 +01:00
Kegsay
33b8143a95
Implement more CSS storage functions in roomserver (#1388) 2020-09-03 18:27:02 +01:00
Kegsay
b20386123e
Move currentstateserver API to roomserver (#1387)
* Move currentstateserver API to roomserver

Stub out DB functions for now, nothing uses the roomserver version yet.

* Allow it to startup

* Implement some current-state-server storage interface functions

* Add missing package
2020-09-03 17:20:54 +01:00
Neil Alexander
6150de6cb3
FIFO ordering of input events (#1386)
* Initial FIFOing of roomserver inputs

* Remove EventID response from api.InputRoomEventsResponse

* Don't send back event ID unnecessarily

* Fix ordering hopefully

* Reduce copies, use buffered task channel to reduce contention on other rooms

* Fix error handling
2020-09-03 15:22:16 +01:00
Neil Alexander
74743ac8ae
Rate limiting (#1385)
* Initial rate limiting

* Move rate limiting to client API

* Update rate limits to hopefully be self-cleaning

* Use X-Forwarded-For, add comments

* Reduce rate limit threshold

* Tweak interval

* Configurable backoff

* Review comments, set cleanup interval to 30 seconds

* Allow generate-config to produce sane CI config

* Fix Complement dockerfile
2020-09-03 10:12:11 +01:00
Kegsay
d64d0c4be2
Update complement.sh 2020-09-03 10:07:14 +01:00