From 9dd0ef187d3cc92a417654408dd2aafdfc4f0785 Mon Sep 17 00:00:00 2001 From: yangjianbo Date: Mon, 12 Jan 2026 10:38:42 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E4=BB=AA=E8=A1=A8=E7=9B=98):=20=E4=BC=98?= =?UTF-8?q?=E5=8C=96CleanupAggregates=E6=96=B9=E6=B3=95=EF=BC=8C=E9=80=90?= =?UTF-8?q?=E6=9D=A1=E5=88=A0=E9=99=A4=E6=95=B0=E6=8D=AE=E4=BB=A5=E6=8F=90?= =?UTF-8?q?=E9=AB=98=E9=94=99=E8=AF=AF=E5=A4=84=E7=90=86=E8=83=BD=E5=8A=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repository/dashboard_aggregation_repo.go | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/backend/internal/repository/dashboard_aggregation_repo.go b/backend/internal/repository/dashboard_aggregation_repo.go index 5241c468..be4d4f02 100644 --- a/backend/internal/repository/dashboard_aggregation_repo.go +++ b/backend/internal/repository/dashboard_aggregation_repo.go @@ -83,13 +83,21 @@ func (r *dashboardAggregationRepository) UpdateAggregationWatermark(ctx context. } func (r *dashboardAggregationRepository) CleanupAggregates(ctx context.Context, hourlyCutoff, dailyCutoff time.Time) error { - _, err := r.sql.ExecContext(ctx, ` - DELETE FROM usage_dashboard_hourly WHERE bucket_start < $1; - DELETE FROM usage_dashboard_hourly_users WHERE bucket_start < $1; - DELETE FROM usage_dashboard_daily WHERE bucket_date < $2::date; - DELETE FROM usage_dashboard_daily_users WHERE bucket_date < $2::date; - `, hourlyCutoff.UTC(), dailyCutoff.UTC()) - return err + hourlyCutoffUTC := hourlyCutoff.UTC() + dailyCutoffUTC := dailyCutoff.UTC() + if _, err := r.sql.ExecContext(ctx, "DELETE FROM usage_dashboard_hourly WHERE bucket_start < $1", hourlyCutoffUTC); err != nil { + return err + } + if _, err := r.sql.ExecContext(ctx, "DELETE FROM usage_dashboard_hourly_users WHERE bucket_start < $1", hourlyCutoffUTC); err != nil { + return err + } + if _, err := r.sql.ExecContext(ctx, "DELETE FROM usage_dashboard_daily WHERE bucket_date < $1::date", dailyCutoffUTC); err != nil { + return err + } + if _, err := r.sql.ExecContext(ctx, "DELETE FROM usage_dashboard_daily_users WHERE bucket_date < $1::date", dailyCutoffUTC); err != nil { + return err + } + return nil } func (r *dashboardAggregationRepository) CleanupUsageLogs(ctx context.Context, cutoff time.Time) error {