dendrite/currentstateserver/storage
Kegsay 4c1e6597c0
Replace publicroomsapi with a combination of clientapi/roomserver/currentstateserver (#1174)
* Use content_value instead of membership

* Fix build

* Replace publicroomsapi with a combination of clientapi/roomserver/currentstateserver

- All public rooms paths are now handled by clientapi
- Requests to (un)publish rooms are sent to the roomserver via `PerformPublish`
  which are stored in a new `published_table.go`
- Requests for public rooms are handled in clientapi by:
    * Fetch all room IDs which are published using `QueryPublishedRooms` on the roomserver.
    * Apply pagination parameters to the slice.
    * Do a `QueryBulkStateContent` request to the currentstateserver to pull out
      required state event *content* (not entire events).
    * Aggregate and return the chunk.

Mostly but not fully implemented (DB queries on currentstateserver are missing)

* Fix pq query

* Make postgres work

* Make sqlite work

* Fix tests

* Unbreak pagination tests

* Linting
2020-07-02 15:41:18 +01:00
..
postgres Replace publicroomsapi with a combination of clientapi/roomserver/currentstateserver (#1174) 2020-07-02 15:41:18 +01:00
shared Replace publicroomsapi with a combination of clientapi/roomserver/currentstateserver (#1174) 2020-07-02 15:41:18 +01:00
sqlite3 Replace publicroomsapi with a combination of clientapi/roomserver/currentstateserver (#1174) 2020-07-02 15:41:18 +01:00
tables Replace publicroomsapi with a combination of clientapi/roomserver/currentstateserver (#1174) 2020-07-02 15:41:18 +01:00
interface.go Replace publicroomsapi with a combination of clientapi/roomserver/currentstateserver (#1174) 2020-07-02 15:41:18 +01:00
storage.go Add a new component: currentstateserver (#1171) 2020-06-30 10:37:21 +01:00
storage_wasm.go Add a new component: currentstateserver (#1171) 2020-06-30 10:37:21 +01:00