From f82803f29dc672f4453a2c4ec9bbef2729c5f3ea Mon Sep 17 00:00:00 2001 From: zhaoxiangchun <1422928955@qq.com> Date: Mon, 11 Apr 2022 14:32:55 +0800 Subject: [PATCH] fix(region): app replace backgroud ctx --- pkg/appsrv/appsrv.go | 3 ++- pkg/cloudcommon/db/tenantcachesync.go | 1 + pkg/util/ctx/context.go | 14 ++++++++++++++ pkg/util/ctx/doc.go | 1 + 4 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 pkg/util/ctx/context.go create mode 100644 pkg/util/ctx/doc.go diff --git a/pkg/appsrv/appsrv.go b/pkg/appsrv/appsrv.go index ba4a498bac..dc8e284bc6 100644 --- a/pkg/appsrv/appsrv.go +++ b/pkg/appsrv/appsrv.go @@ -40,6 +40,7 @@ import ( "yunion.io/x/onecloud/pkg/httperrors" "yunion.io/x/onecloud/pkg/i18n" "yunion.io/x/onecloud/pkg/proxy" + "yunion.io/x/onecloud/pkg/util/ctx" "yunion.io/x/onecloud/pkg/util/httputils" ) @@ -82,7 +83,7 @@ var quitHandlerRegisted bool func NewApplication(name string, connMax int, db bool) *Application { app := Application{name: name, - context: context.Background(), + context: ctx.CtxWithTime(), connMax: connMax, session: NewWorkerManager("HttpRequestWorkerManager", connMax, DEFAULT_BACKLOG, db), readSession: NewWorkerManager("HttpGetRequestWorkerManager", connMax, DEFAULT_BACKLOG, db), diff --git a/pkg/cloudcommon/db/tenantcachesync.go b/pkg/cloudcommon/db/tenantcachesync.go index e4dbe8c7e5..1b614662f1 100644 --- a/pkg/cloudcommon/db/tenantcachesync.go +++ b/pkg/cloudcommon/db/tenantcachesync.go @@ -35,6 +35,7 @@ var ( ) func StartTenantCacheSync(ctx context.Context, intvalSeconds int) { + go runTenantCacheSync(ctx, intvalSeconds) } diff --git a/pkg/util/ctx/context.go b/pkg/util/ctx/context.go new file mode 100644 index 0000000000..edb4b2e0bf --- /dev/null +++ b/pkg/util/ctx/context.go @@ -0,0 +1,14 @@ +package ctx + +import ( + "context" + "time" +) + +const ( + CTX_TIME_KEY = "time" +) + +func CtxWithTime() context.Context { + return context.WithValue(context.Background(), CTX_TIME_KEY, time.Now()) +} diff --git a/pkg/util/ctx/doc.go b/pkg/util/ctx/doc.go new file mode 100644 index 0000000000..88bbeb6f6b --- /dev/null +++ b/pkg/util/ctx/doc.go @@ -0,0 +1 @@ +package ctx // import "yunion.io/x/onecloud/pkg/util/ctx"