* - Ensure the correct ID is returned from the Max statements as the NullInt64 was not working as expected
- Check before creating the nextAccountDataID
* - Set the pos output var correctly and fix typo in the SQL
Co-authored-by: alexf@example.com <alexf@example.com>
Sytest had two tests with the name `Name/topic keys are correct`. https://github.com/matrix-org/sytest/pull/1098 edited one so that the names were unique.
It seems that this test name was in the dendrite Sytest whitelist. This PR adds the additional, new name to the whitelist as well. Time to see if CI passes!
- Update queries to all use PartitionKeys
- Remove the _sid from queries as the PK contains the Tenant
- Fix some bugs around empty values and ordering
Co-authored-by: alexf@example.com <alexf@example.com>
* - Make all PartitionKeys include the tablename
- Update specific PKs to be item specific
- Add validation to the PerformQueryXX methods
- Fix queries that fail validation
* - Revert the PK back to CollectionName as it already includes the TableName
Co-authored-by: alexf@example.com <alexf@example.com>
* - Create CosmosDocument as a base class
- Add CT and UT
- Refactor all tables to use the CosmosDocument
* - Add UpsertDocument method to perform updates in a generic way
- Add SetUpdateTime() to update the UT for updates
- Refactor it all
* - Add Performquery method
- Refactor appservice_events_table
* - Update naffka Topics and Messages to use the common pattern
* - Update keyserver to use the common pattern for collection and PK
* - Update mediaapi to use the common pattern for collection and pk
* - Update roomserver to use the common pattern for collectionname and pk
* - Update signingkeyserver to use the common pattern for collectionname and pk
* - Update userapi touse the common pattern for collectionname and pk
* - Update partitionOffset to use the common collectionname and pk
- Remove generic GetPartitionKey() method
Co-authored-by: alexf@example.com <alexf@example.com>
* - Create CosmosDocument as a base class
- Add CT and UT
- Refactor all tables to use the CosmosDocument
* - Add UpsertDocument method to perform updates in a generic way
- Add SetUpdateTime() to update the UT for updates
- Refactor it all
Co-authored-by: alexf@example.com <alexf@example.com>