Repeatable reads for /sync (#2783)

This puts repeatable reads into all sync streams.

Co-authored-by: kegsay <kegan@matrix.org>
This commit is contained in:
Neil Alexander 2022-12-06 18:16:17 +00:00 committed by GitHub
parent ded43e0f2d
commit ba2ffb7da9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -57,13 +57,6 @@ type Database struct {
} }
func (d *Database) NewDatabaseSnapshot(ctx context.Context) (*DatabaseTransaction, error) { func (d *Database) NewDatabaseSnapshot(ctx context.Context) (*DatabaseTransaction, error) {
return d.NewDatabaseTransaction(ctx)
/*
TODO: Repeatable read is probably the right thing to do here,
but it seems to cause some problems with the invite tests, so
need to investigate that further.
txn, err := d.DB.BeginTx(ctx, &sql.TxOptions{ txn, err := d.DB.BeginTx(ctx, &sql.TxOptions{
// Set the isolation level so that we see a snapshot of the database. // Set the isolation level so that we see a snapshot of the database.
// In PostgreSQL repeatable read transactions will see a snapshot taken // In PostgreSQL repeatable read transactions will see a snapshot taken
@ -81,7 +74,6 @@ func (d *Database) NewDatabaseSnapshot(ctx context.Context) (*DatabaseTransactio
ctx: ctx, ctx: ctx,
txn: txn, txn: txn,
}, nil }, nil
*/
} }
func (d *Database) NewDatabaseTransaction(ctx context.Context) (*DatabaseTransaction, error) { func (d *Database) NewDatabaseTransaction(ctx context.Context) (*DatabaseTransaction, error) {