summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmd/gotosocial/action/server/server.go25
1 files changed, 12 insertions, 13 deletions
diff --git a/cmd/gotosocial/action/server/server.go b/cmd/gotosocial/action/server/server.go
index 2ea48b7df..8deed6ecc 100644
--- a/cmd/gotosocial/action/server/server.go
+++ b/cmd/gotosocial/action/server/server.go
@@ -31,7 +31,6 @@ import (
"github.com/KimMachineGun/automemlimit/memlimit"
"github.com/gin-gonic/gin"
- "github.com/ncruces/go-sqlite3"
"github.com/superseriousbusiness/gotosocial/cmd/gotosocial/action"
"github.com/superseriousbusiness/gotosocial/internal/api"
apiutil "github.com/superseriousbusiness/gotosocial/internal/api/util"
@@ -74,13 +73,6 @@ var Start action.GTSAction = func(ctx context.Context) error {
// to match container limits.
setLimits(ctx)
- // Compile WASM modules ahead of first use
- // to prevent unexpected initial slowdowns.
- log.Info(ctx, "precompiling WebAssembly")
- if err := precompileWASM(ctx); err != nil {
- return err
- }
-
var (
// Define necessary core variables
// before anything so we can prepare
@@ -203,6 +195,17 @@ var Start action.GTSAction = func(ctx context.Context) error {
TLSInsecureSkipVerify: config.GetHTTPClientTLSInsecureSkipVerify(),
})
+ // Compile WASM modules ahead of first use
+ // to prevent unexpected initial slowdowns.
+ //
+ // Note that this can take a bit of memory
+ // and processing so we perform this much
+ // later after any database migrations.
+ log.Info(ctx, "compiling WebAssembly")
+ if err := compileWASM(ctx); err != nil {
+ return err
+ }
+
// Build handlers used in later initializations.
mediaManager := media.NewManager(state)
oauthServer := oauth.New(ctx, dbService)
@@ -491,11 +494,7 @@ func setLimits(ctx context.Context) {
}
}
-func precompileWASM(ctx context.Context) error {
- if err := sqlite3.Initialize(); err != nil {
- return gtserror.Newf("error compiling sqlite3: %w", err)
- }
-
+func compileWASM(ctx context.Context) error {
// Use admin-set ffmpeg pool size, and fall
// back to GOMAXPROCS if number 0 or less.
ffPoolSize := config.GetMediaFfmpegPoolSize()