Move OffsetNewest and OffsetOldest into keyserver types, change them to be more sane values

This commit is contained in:
Neil Alexander 2022-02-04 12:46:51 +00:00
parent a4fe510519
commit 4acf2a05dd
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944
6 changed files with 18 additions and 24 deletions

View file

@ -17,11 +17,9 @@ package postgres
import (
"context"
"database/sql"
"math"
"github.com/matrix-org/dendrite/internal"
"github.com/matrix-org/dendrite/keyserver/storage/tables"
"github.com/matrix-org/dendrite/setup/jetstream"
)
var keyChangesSchema = `
@ -78,9 +76,6 @@ func (s *keyChangesStatements) InsertKeyChange(ctx context.Context, userID strin
func (s *keyChangesStatements) SelectKeyChanges(
ctx context.Context, fromOffset, toOffset int64,
) (userIDs []string, latestOffset int64, err error) {
if toOffset == jetstream.OffsetNewest {
toOffset = math.MaxInt64
}
latestOffset = fromOffset
rows, err := s.selectKeyChangesStmt.QueryContext(ctx, fromOffset, toOffset)
if err != nil {

View file

@ -17,11 +17,9 @@ package sqlite3
import (
"context"
"database/sql"
"math"
"github.com/matrix-org/dendrite/internal"
"github.com/matrix-org/dendrite/keyserver/storage/tables"
"github.com/matrix-org/dendrite/setup/jetstream"
)
var keyChangesSchema = `
@ -76,9 +74,6 @@ func (s *keyChangesStatements) InsertKeyChange(ctx context.Context, userID strin
func (s *keyChangesStatements) SelectKeyChanges(
ctx context.Context, fromOffset, toOffset int64,
) (userIDs []string, latestOffset int64, err error) {
if toOffset == jetstream.OffsetNewest {
toOffset = math.MaxInt64
}
latestOffset = fromOffset
rows, err := s.selectKeyChangesStmt.QueryContext(ctx, fromOffset, toOffset)
if err != nil {

View file

@ -10,8 +10,8 @@ import (
"testing"
"github.com/matrix-org/dendrite/keyserver/api"
"github.com/matrix-org/dendrite/keyserver/types"
"github.com/matrix-org/dendrite/setup/config"
"github.com/matrix-org/dendrite/setup/jetstream"
)
var ctx = context.Background()
@ -50,7 +50,7 @@ func TestKeyChanges(t *testing.T) {
MustNotError(t, err)
deviceChangeIDC, err := db.StoreKeyChange(ctx, "@charlie:localhost")
MustNotError(t, err)
userIDs, latest, err := db.KeyChanges(ctx, deviceChangeIDB, jetstream.OffsetNewest)
userIDs, latest, err := db.KeyChanges(ctx, deviceChangeIDB, types.OffsetNewest)
if err != nil {
t.Fatalf("Failed to KeyChanges: %s", err)
}
@ -74,7 +74,7 @@ func TestKeyChangesNoDupes(t *testing.T) {
}
deviceChangeID, err := db.StoreKeyChange(ctx, "@alice:localhost")
MustNotError(t, err)
userIDs, latest, err := db.KeyChanges(ctx, 0, jetstream.OffsetNewest)
userIDs, latest, err := db.KeyChanges(ctx, 0, types.OffsetNewest)
if err != nil {
t.Fatalf("Failed to KeyChanges: %s", err)
}

View file

@ -14,7 +14,18 @@
package types
import "github.com/matrix-org/gomatrixserverlib"
import (
"math"
"github.com/matrix-org/gomatrixserverlib"
)
const (
// OffsetNewest tells e.g. the database to get the most current data
OffsetNewest int64 = math.MaxInt64
// OffsetOldest tells e.g. the database to get the oldest data
OffsetOldest int64 = 0
)
// KeyTypePurposeToInt maps a purpose to an integer, which is used in the
// database to reduce the amount of space taken up by this column.

View file

@ -12,13 +12,6 @@ import (
natsclient "github.com/nats-io/nats.go"
)
const (
// OffsetNewest tells e.g. the database to get the most current data
OffsetNewest int64 = -1
// OffsetOldest tells e.g. the database to get the oldest data
OffsetOldest int64 = -2
)
var natsServer *natsserver.Server
var natsServerMutex sync.Mutex

View file

@ -19,8 +19,8 @@ import (
"strings"
keyapi "github.com/matrix-org/dendrite/keyserver/api"
keytypes "github.com/matrix-org/dendrite/keyserver/types"
roomserverAPI "github.com/matrix-org/dendrite/roomserver/api"
"github.com/matrix-org/dendrite/setup/jetstream"
"github.com/matrix-org/dendrite/syncapi/types"
"github.com/matrix-org/gomatrixserverlib"
"github.com/matrix-org/util"
@ -64,8 +64,8 @@ func DeviceListCatchup(
}
// now also track users who we already share rooms with but who have updated their devices between the two tokens
offset := jetstream.OffsetOldest
toOffset := jetstream.OffsetNewest
offset := keytypes.OffsetOldest
toOffset := keytypes.OffsetNewest
if to > 0 && to > from {
toOffset = int64(to)
}