chore(sqlite): linter complaints
This commit is contained in:
@@ -8,12 +8,14 @@ linters:
|
|||||||
- exhaustive
|
- exhaustive
|
||||||
- exhaustruct
|
- exhaustruct
|
||||||
- forbidigo
|
- forbidigo
|
||||||
|
- funcorder
|
||||||
- funlen
|
- funlen
|
||||||
- gochecknoglobals
|
- gochecknoglobals
|
||||||
- gochecknoinits
|
- gochecknoinits
|
||||||
- gocognit
|
- gocognit
|
||||||
- goconst
|
- goconst
|
||||||
- gocyclo
|
- gocyclo
|
||||||
|
- godot
|
||||||
- godox
|
- godox
|
||||||
- gomoddirectives
|
- gomoddirectives
|
||||||
- inamedparam
|
- inamedparam
|
||||||
|
|||||||
@@ -61,7 +61,6 @@ require (
|
|||||||
github.com/cenkalti/backoff/v4 v4.3.0 // indirect
|
github.com/cenkalti/backoff/v4 v4.3.0 // indirect
|
||||||
github.com/certifi/gocertifi v0.0.0-20210507211836-431795d63e8d // indirect
|
github.com/certifi/gocertifi v0.0.0-20210507211836-431795d63e8d // indirect
|
||||||
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
||||||
github.com/coreos/go-semver v0.3.1 // indirect
|
|
||||||
github.com/cpuguy83/go-md2man/v2 v2.0.5 // indirect
|
github.com/cpuguy83/go-md2man/v2 v2.0.5 // indirect
|
||||||
github.com/davecgh/go-spew v1.1.1 // indirect
|
github.com/davecgh/go-spew v1.1.1 // indirect
|
||||||
github.com/dustin/go-humanize v1.0.1 // indirect
|
github.com/dustin/go-humanize v1.0.1 // indirect
|
||||||
|
|||||||
@@ -48,8 +48,6 @@ github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XL
|
|||||||
github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI=
|
github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI=
|
||||||
github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI=
|
github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI=
|
||||||
github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU=
|
github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU=
|
||||||
github.com/coreos/go-semver v0.3.1 h1:yi21YpKnrx1gt5R+la8n5WgS0kCrsPp33dmEyHReZr4=
|
|
||||||
github.com/coreos/go-semver v0.3.1/go.mod h1:irMmmIw/7yzSRPWryHsK7EYSg09caPQL03VsM8rvUec=
|
|
||||||
github.com/cpuguy83/go-md2man/v2 v2.0.5 h1:ZtcqGrnekaHpVLArFSe4HK5DoKx1T0rq2DwVB0alcyc=
|
github.com/cpuguy83/go-md2man/v2 v2.0.5 h1:ZtcqGrnekaHpVLArFSe4HK5DoKx1T0rq2DwVB0alcyc=
|
||||||
github.com/cpuguy83/go-md2man/v2 v2.0.5/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
|
github.com/cpuguy83/go-md2man/v2 v2.0.5/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
|
||||||
github.com/d4l3k/messagediff v1.2.1 h1:ZcAIMYsUg0EAp9X+tt8/enBE/Q8Yd5kzPynLyKptt9U=
|
github.com/d4l3k/messagediff v1.2.1 h1:ZcAIMYsUg0EAp9X+tt8/enBE/Q8Yd5kzPynLyKptt9U=
|
||||||
|
|||||||
@@ -255,7 +255,7 @@ func (s *DB) ListDevicesForFolder(folder string) ([]protocol.DeviceID, error) {
|
|||||||
func (s *DB) RemoteSequences(folder string) (map[protocol.DeviceID]int64, error) {
|
func (s *DB) RemoteSequences(folder string) (map[protocol.DeviceID]int64, error) {
|
||||||
fdb, err := s.getFolderDB(folder, false)
|
fdb, err := s.getFolderDB(folder, false)
|
||||||
if errors.Is(err, errNoSuchFolder) {
|
if errors.Is(err, errNoSuchFolder) {
|
||||||
return nil, nil
|
return nil, nil //nolint:nilnil
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
|||||||
@@ -50,10 +50,14 @@ func Open(path string, opts ...Option) (*DB, error) {
|
|||||||
"sql/schema/common/*",
|
"sql/schema/common/*",
|
||||||
"sql/schema/main/*",
|
"sql/schema/main/*",
|
||||||
}
|
}
|
||||||
|
migrations := []string{
|
||||||
|
"sql/migrations/common/*",
|
||||||
|
"sql/migrations/main/*",
|
||||||
|
}
|
||||||
|
|
||||||
os.MkdirAll(path, 0o700)
|
_ = os.MkdirAll(path, 0o700)
|
||||||
mainPath := filepath.Join(path, "main.db")
|
mainPath := filepath.Join(path, "main.db")
|
||||||
mainBase, err := openBase(mainPath, maxDBConns, pragmas, schemas, nil)
|
mainBase, err := openBase(mainPath, maxDBConns, pragmas, schemas, migrations)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@@ -88,10 +92,14 @@ func OpenForMigration(path string) (*DB, error) {
|
|||||||
"sql/schema/common/*",
|
"sql/schema/common/*",
|
||||||
"sql/schema/main/*",
|
"sql/schema/main/*",
|
||||||
}
|
}
|
||||||
|
migrations := []string{
|
||||||
|
"sql/migrations/common/*",
|
||||||
|
"sql/migrations/main/*",
|
||||||
|
}
|
||||||
|
|
||||||
os.MkdirAll(path, 0o700)
|
_ = os.MkdirAll(path, 0o700)
|
||||||
mainPath := filepath.Join(path, "main.db")
|
mainPath := filepath.Join(path, "main.db")
|
||||||
mainBase, err := openBase(mainPath, 1, pragmas, schemas, nil)
|
mainBase, err := openBase(mainPath, 1, pragmas, schemas, migrations)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -84,8 +84,11 @@ func (s *Service) periodic(ctx context.Context) error {
|
|||||||
defer func() { l.Debugln("Periodic done in", time.Since(t1), "+", t1.Sub(t0)) }()
|
defer func() { l.Debugln("Periodic done in", time.Since(t1), "+", t1.Sub(t0)) }()
|
||||||
|
|
||||||
s.sdb.updateLock.Lock()
|
s.sdb.updateLock.Lock()
|
||||||
tidy(ctx, s.sdb.sql)
|
err := tidy(ctx, s.sdb.sql)
|
||||||
s.sdb.updateLock.Unlock()
|
s.sdb.updateLock.Unlock()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
return wrap(s.sdb.forEachFolder(func(fdb *folderDB) error {
|
return wrap(s.sdb.forEachFolder(func(fdb *folderDB) error {
|
||||||
fdb.updateLock.Lock()
|
fdb.updateLock.Lock()
|
||||||
@@ -97,8 +100,7 @@ func (s *Service) periodic(ctx context.Context) error {
|
|||||||
if err := garbageCollectBlocklistsAndBlocksLocked(ctx, fdb); err != nil {
|
if err := garbageCollectBlocklistsAndBlocksLocked(ctx, fdb); err != nil {
|
||||||
return wrap(err)
|
return wrap(err)
|
||||||
}
|
}
|
||||||
tidy(ctx, fdb.sql)
|
return tidy(ctx, fdb.sql)
|
||||||
return nil
|
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -32,8 +32,12 @@ func openFolderDB(folder, path string, deleteRetention time.Duration) (*folderDB
|
|||||||
"sql/schema/common/*",
|
"sql/schema/common/*",
|
||||||
"sql/schema/folder/*",
|
"sql/schema/folder/*",
|
||||||
}
|
}
|
||||||
|
migrations := []string{
|
||||||
|
"sql/migrations/common/*",
|
||||||
|
"sql/migrations/folder/*",
|
||||||
|
}
|
||||||
|
|
||||||
base, err := openBase(path, maxDBConns, pragmas, schemas, nil)
|
base, err := openBase(path, maxDBConns, pragmas, schemas, migrations)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -433,7 +433,7 @@ type fileRow struct {
|
|||||||
|
|
||||||
func (e fileRow) Compare(other fileRow) int {
|
func (e fileRow) Compare(other fileRow) int {
|
||||||
// From FileInfo.WinsConflict
|
// From FileInfo.WinsConflict
|
||||||
vc := e.Version.Vector.Compare(other.Version.Vector)
|
vc := e.Version.Compare(other.Version.Vector)
|
||||||
switch vc {
|
switch vc {
|
||||||
case protocol.Equal:
|
case protocol.Equal:
|
||||||
if e.Invalid != other.Invalid {
|
if e.Invalid != other.Invalid {
|
||||||
@@ -519,11 +519,12 @@ func (s *folderDB) periodicCheckpointLocked(fs []protocol.FileInfo) {
|
|||||||
// failed, we'll keep trying it until we succeed. Increase it faster
|
// failed, we'll keep trying it until we succeed. Increase it faster
|
||||||
// when we fail to checkpoint, as it's more likely the WAL is
|
// when we fail to checkpoint, as it's more likely the WAL is
|
||||||
// growing and will need truncation when we get out of this state.
|
// growing and will need truncation when we get out of this state.
|
||||||
if res == 1 {
|
switch {
|
||||||
|
case res == 1:
|
||||||
s.checkpointsCount += 10
|
s.checkpointsCount += 10
|
||||||
} else if res == 0 && checkpointType == "TRUNCATE" {
|
case res == 0 && checkpointType == "TRUNCATE":
|
||||||
s.checkpointsCount = 0
|
s.checkpointsCount = 0
|
||||||
} else {
|
default:
|
||||||
s.checkpointsCount++
|
s.checkpointsCount++
|
||||||
}
|
}
|
||||||
s.updatePoints = 0
|
s.updatePoints = 0
|
||||||
|
|||||||
Reference in New Issue
Block a user