diff --git a/go.mod b/go.mod index 9be7ac1..f80ed15 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module git.wntrmute.dev/kyle/mcr go 1.25.7 require ( - git.wntrmute.dev/kyle/mcdsl v0.0.0 + git.wntrmute.dev/kyle/mcdsl v1.0.0 github.com/go-chi/chi/v5 v5.2.5 github.com/google/uuid v1.6.0 github.com/spf13/cobra v1.10.2 @@ -28,5 +28,3 @@ require ( modernc.org/memory v1.11.0 // indirect modernc.org/sqlite v1.47.0 // indirect ) - -replace git.wntrmute.dev/kyle/mcdsl => /home/kyle/src/metacircular/mcdsl diff --git a/go.sum b/go.sum index dcd41b6..ae50143 100644 --- a/go.sum +++ b/go.sum @@ -1,3 +1,5 @@ +git.wntrmute.dev/kyle/mcdsl v1.0.0 h1:YB7dx4gdNYKKcVySpL6UkwHqdCJ9Nl1yS0+eHk0hNtk= +git.wntrmute.dev/kyle/mcdsl v1.0.0/go.mod h1:wo0tGfUAxci3XnOe4/rFmR0RjUElKdYUazc+Np986sg= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= diff --git a/vendor/git.wntrmute.dev/kyle/mcdsl/db/db.go b/vendor/git.wntrmute.dev/kyle/mcdsl/db/db.go index e18457f..2ab1b32 100644 --- a/vendor/git.wntrmute.dev/kyle/mcdsl/db/db.go +++ b/vendor/git.wntrmute.dev/kyle/mcdsl/db/db.go @@ -59,6 +59,12 @@ func Open(path string) (*sql.DB, error) { } } + // SQLite supports concurrent readers but only one writer. With WAL mode, + // reads don't block writes, but multiple Go connections competing for + // the write lock causes SQLITE_BUSY under concurrent load. Limit to one + // connection to serialize all access and eliminate busy errors. + database.SetMaxOpenConns(1) + // Ensure permissions are correct even if the file already existed. if err := os.Chmod(path, 0600); err != nil { _ = database.Close() diff --git a/vendor/modules.txt b/vendor/modules.txt index acdb750..764c87a 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1,4 +1,4 @@ -# git.wntrmute.dev/kyle/mcdsl v0.0.0 => /home/kyle/src/metacircular/mcdsl +# git.wntrmute.dev/kyle/mcdsl v1.0.0 ## explicit; go 1.25.7 git.wntrmute.dev/kyle/mcdsl/auth git.wntrmute.dev/kyle/mcdsl/config @@ -196,4 +196,3 @@ modernc.org/memory modernc.org/sqlite modernc.org/sqlite/lib modernc.org/sqlite/vtab -# git.wntrmute.dev/kyle/mcdsl => /home/kyle/src/metacircular/mcdsl