aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-10-10Further tweak to the issue templateNeil Alexander
2022-10-10Update issue and pull request templatesNeil Alexander
2022-10-10Add regression test for 980fa55846811eeff89f116c49b38b085143c64eNeil Alexander
2022-10-10Stronger passwordless account checks (fixes #2780)Neil Alexander
2022-10-07Version 0.10.2 (#2778)v0.10.2Neil Alexander
Changelog and version bump.
2022-10-07Fix issue with DMs shown as normal rooms (#2776)Till
Fixes #2121, test added in https://github.com/matrix-org/complement/pull/494
2022-10-07Revert "tDatabase transaction tweaks in roomserver"Neil Alexander
This reverts commit 8d8f4689a0c71f79051554e69fb9113592a4b2e4.
2022-10-07Ensure we only wake up a given user once (#2775)Neil Alexander
This ensures that the sync API notifier only wakes up a given user once for a given stream position.
2022-10-07tDatabase transaction tweaks in roomserverNeil Alexander
2022-10-07Add test for `QueryDeviceMessages` (#2773)Till
Adds tests for `QueryDeviceMessages` and also includes some optimizations to reduce allocations in the DB layer.
2022-10-07Update READMETill Faelligen
2022-10-06Use the stream positions of the notifier (#2768)Till
Use the stream positions of the notifier, which might have advanced since setting it at the beginning of the loop. This possibly helps in reducing roundtrips to the SyncAPI, just because we didn't fetch the latest data. Also fixes a minor oversight in the receipts stream.
2022-10-06Allow specifying old signing keys with the public key and key ID only (#2770)Neil Alexander
If the private key file is lost, it's often possible to retrieve the public key from another server elsewhere, so we should make it possible to configure it in that way.
2022-10-06Always return `one_time_key_counts` on `/keys/upload` (#2769)Till
The OTK count is [required](https://spec.matrix.org/v1.4/client-server-api/#post_matrixclientv3keysupload) in responses to `/keys/upload`, so return those.
2022-10-06Don't try to talk to ourselves when finding missing eventsNeil Alexander
2022-10-06Tweak logging for federated room joinsNeil Alexander
2022-10-05Document database connection limitsNeil Alexander
2022-10-05Remove empty fields from `/sync` response (#2755)Till
First attempt at removing empty fields from `/sync` responses. Needs https://github.com/matrix-org/sytest/pull/1298 to keep Sytest happy. Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2022-10-05Optimise `QuerySharedUsers` so that we can only work on local users (#2766)Neil Alexander
Otherwise the sync API key change consumer wastes a lot of time trying to wake up the notifiers for non-local users.
2022-10-05Demote `Failed to query device keys for some users` warning to `level=debug`Neil Alexander
Many of these warnings are due to dead servers and are quite annoying when they fill up the logs.
2022-10-05Add `RoomEventType` nats.Header to avoid unneeded unmarshalling (#2765)Till
2022-10-05Check PostgreSQL connection count (#2760)Neil Alexander
This PR queries PostgreSQL for the `max_connections` and `superuser_reserved_connections` settings and then ensures that Dendrite's `max_open_conns` doesn't exceed the allowed value. This is a really common source of configuration problems and can either result in blocking queries or deadlocks, so it seems reasonable that we complain as loudly as possible when it happens.
2022-10-05Side effect import bleve analyzer languages (#2763)Till
... to actually allow different languages. Fixes #2761 Binary size increases by ~1MB.
2022-10-04Add indexes that optimise `selectStateInRangeSQL` (#2764)Neil Alexander
This gets rid of some expensive scans on `add_state_ids` and `remove_state_ids`, turning them into much cheaper and faster index scans instead.
2022-10-04Don't perform a federated join after invite if we are already joined to the ↵Neil Alexander
room (#2762) If we are already joined to the room then it shouldn't matter if you were invited or not, so this looks like a bug.
2022-10-04Track reasons why the process is in a degraded stateNeil Alexander
2022-10-04Reduce `max_open_conns` in monolith sample configNeil Alexander
2022-10-04Revert Docker changesNeil Alexander
2022-10-04Try to populate `-ldflags` in Docker buildsNeil Alexander
2022-10-04Fix Docker GHANeil Alexander
2022-10-04Update Dockerfile (#2342)Till
Updates/adds a new multistage (build-kit) Dockerfile. (if accepted, could make `Dockerfile.monolith` and `Dockerfile.polylith` in `build/docker` obsolete) There's no huge difference between the dockerfiles, except this uses a non-root user when running the container, also doesn't copy the working directory to the image when building. Also adds vulnerabilities scans using [Trivy](https://github.com/aquasecurity/trivy) for the created docker images. (untested) Building images is done using ``` docker build . --target image-monolith -t dendrite-monolith docker build . --target image-polylith -t dendrite-polylith ``` As noted in the comments, only adds `dendrite-polylith-multi` to the polylith image and all required binaries to the monolith image. Probably needs some docs updating, if this is accepted. Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2022-10-03Fix docsNeil Alexander
2022-10-03Allow multiple static peers in Pinecone iOS/Android demosNeil Alexander
2022-10-03P2P demo tweaksNeil Alexander
2022-10-03Update P2P base directoriesNeil Alexander
2022-10-03Stop CPU burn in `PerformMarkAsStaleIfNeeded`Neil Alexander
2022-10-03Fix fragility of selectEventsWithEventIDsSQL queries (#2757)Ashley Nelson
This fixes a temporary workaround with the `selectEventsWithEventIDsSQL` queries where fields need to be artificially added to the queries so the row results match the format of the `syncapi_output_room_events` table. I made similar functions that accept row results from the `syncapi_current_room_state` table and convert them into StreamEvents without the fields that are specific to output room events. There is also a unit test in the first commit to ensure the resulting behavior doesn't change from the modified queries and functions. Fixes #601. ### Pull Request Checklist <!-- Please read docs/CONTRIBUTING.md before submitting your pull request --> * [x] I have added tests for PR _or_ I have justified why this PR doesn't need tests. * [x] Pull request includes a [sign off](https://github.com/matrix-org/dendrite/blob/main/docs/CONTRIBUTING.md#sign-off) Signed-off-by: `Ashley Nelson <fant@shley.email>` Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
2022-10-03Hopefully fix P2P `--config` error (re. #2756)Neil Alexander
2022-10-03Modify sync transaction behaviour (#2758)Neil Alexander
This now uses a transaction per stream, so that errors in one stream don't propagate to another, and we therefore no longer need to do hacks to reopen a new transaction after aborting a failed one.
2022-10-02Use non-HTTPS as default URL, as most people will be running behind aTill Faelligen
reverse proxy
2022-09-30Version 0.10.1v0.10.1Neil Alexander
2022-09-30Reset transaction after a failureNeil Alexander
2022-09-30Handle case when applying history visibility failedNeil Alexander
2022-09-30Another `/sync` fixNeil Alexander
2022-09-30Remove SendAccountData, since InputAccountData is already doing thatTill Faelligen
2022-09-30Update NATS Server to v2.9.2Neil Alexander
2022-09-30Fix broken `/sync` due to transaction errorNeil Alexander
2022-09-30Update 2_domainname.mdNeil Alexander
2022-09-30Version 0.10.0 (#2753)v0.10.0Neil Alexander
Changelog and version bump.
2022-09-30Transactional isolation for `/sync` (#2745)Neil Alexander
This should transactional snapshot isolation for `/sync` etc requests. For now we don't use repeatable read due to some odd test failures with invites.