♻️ Milliseconds instead of seconds for MR.

This commit is contained in:
Daniel Aloni 2023-04-11 13:36:35 +03:00
parent beeb0ca8f5
commit 941f65d388
5 changed files with 7 additions and 7 deletions

View file

@ -95,7 +95,7 @@ func (s *OutputMultiRoomDataConsumer) onMessage(ctx context.Context, msgs []*nat
rooms, err := s.db.SelectMultiRoomVisibilityRooms(ctx, mrd.SelectMultiRoomVisibilityRoomsParams{ rooms, err := s.db.SelectMultiRoomVisibilityRooms(ctx, mrd.SelectMultiRoomVisibilityRoomsParams{
UserID: userID, UserID: userID,
ExpireTs: time.Now().Unix(), ExpireTs: time.Now().UnixMilli(),
}) })
if err != nil { if err != nil {
sentry.CaptureException(err) sentry.CaptureException(err)

View file

@ -1,6 +1,6 @@
package mrd package mrd
type StateEvent struct { type StateEvent struct {
Hidden bool `json:"hidden"` Hidden bool `json:"hidden"`
ExpireTs int `json:"expire_ts"` ExpireTs int64 `json:"expire_ts"`
} }

View file

@ -655,7 +655,7 @@ func (d *Database) UpdateMultiRoomVisibility(ctx context.Context, event *gomatri
UserID: event.Sender(), UserID: event.Sender(),
Type: event.Type(), Type: event.Type(),
RoomID: event.RoomID(), RoomID: event.RoomID(),
ExpireTs: int64(mrdEv.ExpireTs), ExpireTs: mrdEv.ExpireTs,
}) })
if err != nil { if err != nil {
return fmt.Errorf("insert multiroom visibility failed: %w", err) return fmt.Errorf("insert multiroom visibility failed: %w", err)

View file

@ -56,7 +56,7 @@ func AddPublicRoutes(
go func() { go func() {
var affected int64 var affected int64
for { for {
affected, err = mrq.DeleteMultiRoomVisibilityByExpireTS(context.Background(), time.Now().Unix()) affected, err = mrq.DeleteMultiRoomVisibilityByExpireTS(context.Background(), time.Now().UnixMilli())
if err != nil { if err != nil {
logrus.WithError(err).Error("failed to expire multiroom visibility") logrus.WithError(err).Error("failed to expire multiroom visibility")
} }

View file

@ -14,8 +14,8 @@ func TestMarshallMultiRoom(t *testing.T) {
"@3:example.com": map[string]MultiRoomData{ "@3:example.com": map[string]MultiRoomData{
"location": { "location": {
Content: MultiRoomContent(`{"foo":"bar"}`), Content: MultiRoomContent(`{"foo":"bar"}`),
OriginServerTs: 123, OriginServerTs: 1234567890000,
}}}) }}})
is.NoErr(err) is.NoErr(err)
is.Equal(m, []byte(`{"@3:example.com":{"location":{"content":{"foo":"bar"},"origin_server_ts":123}}}`)) is.Equal(m, []byte(`{"@3:example.com":{"location":{"content":{"foo":"bar"},"origin_server_ts":1234567890000}}}`))
} }