Skip to content

Commit 4cbc292

Browse files
committed
Log lock acquisition time
Setting default claimer to avoid panics Signed-off-by: Danny Kopping <danny@coder.com>
1 parent 9dd9fed commit 4cbc292

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

coderd/coderd.go

+1
Original file line numberDiff line numberDiff line change
@@ -566,6 +566,7 @@ func New(options *Options) *API {
566566
f := appearance.NewDefaultFetcher(api.DeploymentValues.DocsURL.String())
567567
api.AppearanceFetcher.Store(&f)
568568
api.PortSharer.Store(&portsharing.DefaultPortSharer)
569+
api.PrebuildsClaimer.Store(&prebuilds.DefaultClaimer)
569570
buildInfo := codersdk.BuildInfoResponse{
570571
ExternalURL: buildinfo.ExternalURL(),
571572
Version: buildinfo.Version(),

enterprise/coderd/prebuilds/controller.go

+6-1
Original file line numberDiff line numberDiff line change
@@ -111,14 +111,19 @@ func (c *Controller) reconcile(ctx context.Context, templateID *uuid.UUID) {
111111
default:
112112
}
113113

114+
logger.Debug(ctx, "starting reconciliation")
115+
114116
// get all templates or specific one requested
115117
err := c.store.InTx(func(db database.Store) error {
118+
start := time.Now()
116119
err := db.AcquireLock(ctx, database.LockIDReconcileTemplatePrebuilds)
117120
if err != nil {
118-
logger.Warn(ctx, "failed to acquire top-level prebuilds lock; likely running on another coderd replica", slog.Error(err))
121+
logger.Warn(ctx, "failed to acquire top-level prebuilds reconciliation lock; likely running on another coderd replica", slog.Error(err))
119122
return nil
120123
}
121124

125+
defer logger.Debug(ctx, "acquired top-level prebuilds reconciliation lock", slog.F("acquire_wait_secs", fmt.Sprintf("%.4f", time.Since(start).Seconds())))
126+
122127
innerCtx, cancel := context.WithTimeout(ctx, time.Second*30)
123128
defer cancel()
124129

0 commit comments

Comments
 (0)