Improve startup sync timeout handling

This commit is contained in:
Tulir Asokan
2019-08-30 20:57:08 +03:00
parent db53b95ab1
commit 2313321d01
6 changed files with 35 additions and 18 deletions

View File

@ -17,6 +17,7 @@
package database
import (
"database/sql"
"encoding/json"
"fmt"
"sync"
@ -91,11 +92,9 @@ func (store *SQLStateStore) GetRoomMemberships(roomID string) map[string]mautrix
func (store *SQLStateStore) GetMembership(roomID, userID string) mautrix.Membership {
row := store.db.QueryRow("SELECT membership FROM mx_user_profile WHERE room_id=$1 AND user_id=$2", roomID, userID)
membership := mautrix.MembershipLeave
if row != nil {
err := row.Scan(&membership)
if err != nil {
store.log.Warnfln("Failed to scan membership of %s in %s: %v", userID, roomID, err)
}
err := row.Scan(&membership)
if err != nil && err != sql.ErrNoRows {
store.log.Warnfln("Failed to scan membership of %s in %s: %v", userID, roomID, err)
}
return membership
}