Files
query-orchestration/internal/query/sync/sync.go
T
Michael McGuinness 0df3d16976 Merged in feature/testwithlogs (pull request #65)
Query Version Sync Runner

* testing

* queryversiosyncworking

* update

* tests

* fixtests
2025-02-14 10:56:24 +00:00

36 lines
822 B
Go

package querysync
import (
"context"
"fmt"
"log/slog"
"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 {
return fmt.Errorf("document text must be extracted")
}
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)
}