Files
query-orchestration/internal/query/sync/sync.go
T

37 lines
831 B
Go
Raw Normal View History

package querysync
import (
"context"
"log/slog"
2025-03-05 12:05:46 +00:00
"queryorchestration/internal/database"
"github.com/google/uuid"
)
func (s *Service) Sync(ctx context.Context, id uuid.UUID) error {
dbid := database.MustToDBUUID(id)
isextracted, err := s.cfg.GetDBQueries().IsDocumentTextExtracted(ctx, dbid)
if err != nil {
return err
} else if !isextracted {
slog.Error("document has no extracted text", "id", id)
return nil
}
unsyncedQueries, err := s.cfg.GetDBQueries().ListUnsyncedNoDepsQueriesByDocId(ctx, dbid)
if err != nil {
return err
}
slog.Debug("unsynced queries", "document_id", id.String(), "queries", unsyncedQueries)
ids := make([]uuid.UUID, len(unsyncedQueries))
for i, dbId := range unsyncedQueries {
ids[i] = database.MustToUUID(dbId)
}
return s.svc.ResultSync.TriggerMultiSync(ctx, id, ids)
}