From bc99f467203ba78086f0f8342039b508a488b411 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20Schw=C3=B6rer?= Date: Sat, 12 Apr 2025 20:55:37 +0200 Subject: [PATCH] Fix tests --- scnserver/logic/application.go | 2 +- scnserver/logic/request.go | 12 ++++++------ scnserver/test/response_test.go | 1 + 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/scnserver/logic/application.go b/scnserver/logic/application.go index 968de55..61a8c4f 100644 --- a/scnserver/logic/application.go +++ b/scnserver/logic/application.go @@ -41,7 +41,7 @@ func NewApp(db *DBPool) *Application { Database: db, stopChan: make(chan bool), IsRunning: syncext.NewAtomicBool(false), - RequestLogQueue: make(chan models.RequestLog, 1024), + RequestLogQueue: make(chan models.RequestLog, 8192), MainDatabaseLock: golock.NewCASMutex(), } } diff --git a/scnserver/logic/request.go b/scnserver/logic/request.go index 801eaf3..890d1e9 100644 --- a/scnserver/logic/request.go +++ b/scnserver/logic/request.go @@ -33,7 +33,7 @@ func (app *Application) DoRequest(gectx *ginext.AppContext, g *gin.Context, lock t0 := time.Now() - for ctr := 1; ; ctr++ { + for retryCtr := 1; ; retryCtr++ { ictx, cancel := context.WithTimeout(gectx, app.Config.RequestTimeout) @@ -86,13 +86,13 @@ func (app *Application) DoRequest(gectx *ginext.AppContext, g *gin.Context, lock if g.Writer.Written() { if scn.Conf.ReqLogEnabled { - app.InsertRequestLog(createRequestLog(g, t0, ctr, nil, langext.Ptr("Writing in WrapperFunc is not supported"))) + app.InsertRequestLog(createRequestLog(g, t0, retryCtr, nil, langext.Ptr("Writing in WrapperFunc is not supported"))) } panic("Writing in WrapperFunc is not supported") } - if ctr < maxRetry && isSqlite3Busy(wrap) { - log.Warn().Int("counter", ctr).Str("url", g.Request.URL.String()).Msg("Retry request (ErrBusy)") + if retryCtr < maxRetry && isSqlite3Busy(wrap) { + log.Warn().Int("counter", retryCtr).Str("url", g.Request.URL.String()).Msg("Retry request (ErrBusy)") err := resetBody(g) if err != nil { @@ -105,14 +105,14 @@ func (app *Application) DoRequest(gectx *ginext.AppContext, g *gin.Context, lock if reqctx.Err() == nil { if scn.Conf.ReqLogEnabled { - app.InsertRequestLog(createRequestLog(g, t0, ctr, wrap, nil)) + app.InsertRequestLog(createRequestLog(g, t0, retryCtr, wrap, nil)) } if scw, ok := wrap.(ginext.InspectableHTTPResponse); ok { statuscode := scw.Statuscode() if statuscode/100 != 2 { - log.Warn().Str("url", g.Request.Method+"::"+g.Request.URL.String()).Msg(fmt.Sprintf("Request failed with statuscode %d", statuscode)) + log.Warn().Str("url", g.Request.Method+"::"+g.Request.URL.String()).Msg(fmt.Sprintf("Request failed with statuscode %d (retries: %d) (isBusyErr: %v)", statuscode, retryCtr, isSqlite3Busy(wrap))) } } else { log.Warn().Str("url", g.Request.Method+"::"+g.Request.URL.String()).Msg(fmt.Sprintf("Request failed with statuscode [unknown]")) diff --git a/scnserver/test/response_test.go b/scnserver/test/response_test.go index a37b45c..a0a144a 100644 --- a/scnserver/test/response_test.go +++ b/scnserver/test/response_test.go @@ -254,6 +254,7 @@ func TestResponseChannelPreview(t *testing.T) { "internal_name": "string", "display_name": "string", "description_name": "string|null", + "messages_sent": "int", }) }