code cleanup
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2026-01-21 08:45:46 +11:00
parent d683d23bfc
commit c7c7fd3dc9
5 changed files with 296 additions and 175 deletions

View File

@@ -14,8 +14,6 @@ import (
"vctp/db"
"vctp/internal/metrics"
"vctp/internal/report"
"github.com/jmoiron/sqlx"
)
// RunVcenterDailyAggregate summarizes hourly snapshots into a daily summary table.
@@ -89,10 +87,6 @@ func (c *CronTask) aggregateDailySummary(ctx context.Context, targetTime time.Ti
hourlyTables := make([]string, 0, len(hourlySnapshots))
for _, snapshot := range hourlySnapshots {
hourlyTables = append(hourlyTables, snapshot.TableName)
// Ensure indexes exist on historical hourly tables for faster aggregation.
if err := db.EnsureSnapshotIndexes(ctx, dbConn, snapshot.TableName); err != nil {
c.Logger.Warn("failed to ensure indexes on hourly table", "table", snapshot.TableName, "error", err)
}
}
unionQuery, err := buildUnionQuery(hourlyTables, summaryUnionColumns, templateExclusionFilter())
if err != nil {
@@ -207,15 +201,10 @@ func (c *CronTask) aggregateDailySummaryGo(ctx context.Context, dayStart, dayEnd
hourlyTables := make([]string, 0, len(hourlySnapshots))
for _, snapshot := range hourlySnapshots {
hourlyTables = append(hourlyTables, snapshot.TableName)
if err := db.EnsureSnapshotIndexes(ctx, dbConn, snapshot.TableName); err != nil {
c.Logger.Warn("failed to ensure indexes on hourly table", "table", snapshot.TableName, "error", err)
}
}
unionQuery, err := buildUnionQuery(hourlyTables, summaryUnionColumns, templateExclusionFilter())
if err != nil {
return err
} else {
c.Logger.Debug("Built union query", "string", unionQuery)
}
// Clear existing summary if forcing.
@@ -286,9 +275,7 @@ LIMIT 1
}
nextPresence := make(map[string]struct{})
if nextSnapshotTable != "" && db.TableExists(ctx, dbConn, nextSnapshotTable) {
q := fmt.Sprintf(`SELECT "VmId","VmUuid","Name" FROM %s WHERE "Vcenter" = ?`, nextSnapshotTable)
q = sqlx.Rebind(sqlx.BindType(dbConn.DriverName()), q)
rows, err := dbConn.QueryxContext(ctx, q, c.Settings.Values.Settings.VcenterAddresses[0])
rows, err := querySnapshotRows(ctx, dbConn, nextSnapshotTable, []string{"VmId", "VmUuid", "Name"}, `"Vcenter" = ?`, c.Settings.Values.Settings.VcenterAddresses[0])
if err == nil {
for rows.Next() {
var vmId, vmUuid, name sql.NullString