creatorupdatordeprecate

This commit is contained in:
Michael McGuinness
2025-01-03 13:41:07 +00:00
parent 0ac156f0e1
commit 788b21594c
36 changed files with 545 additions and 226 deletions
+18 -12
View File
@@ -3,7 +3,7 @@ package queryQueue
import (
"context"
"queryorchestration/internal/database"
"queryorchestration/internal/query"
queryprocessor "queryorchestration/internal/queryProcessor"
)
func (q *Queue) getUnsyncedQueries() {
@@ -36,9 +36,9 @@ func (c *Queue) getCollectorQueries(ctx context.Context) error {
return err
}
cleanQueries := make([]query.QueryRow, len(queries))
cleanQueries := make([]queryprocessor.Query, len(queries))
for index, dbQuery := range queries {
cleanQuery, err := query.ParseDBQueryRow(&dbQuery)
cleanQuery, err := queryprocessor.ParseDBQuery(&dbQuery)
if err != nil {
return err
}
@@ -51,33 +51,39 @@ func (c *Queue) getCollectorQueries(ctx context.Context) error {
return nil
}
func (q *Queue) Add(qu *query.QueryRow) {
dependentQueries := []query.QueryRow{}
func (q *Queue) Add(qu *queryprocessor.Query) {
dependentQueries := []queryprocessor.Query{}
requiredIndex := -1
if q.unsyncedQueue == nil {
q.unsyncedQueue = &[]query.QueryRow{}
q.unsyncedQueue = &[]queryprocessor.Query{}
} else {
for index, entry := range *q.unsyncedQueue {
if entry.ID == qu.ID {
return
}
if entry.ID == qu.RequiredQueryID {
requiredIndex = index
for _, id := range qu.RequiredQueryIDs {
if entry.ID == id {
requiredIndex = index
break
}
}
}
}
for _, entry := range *q.collectorQueries {
if entry.RequiredQueryID == qu.ID {
dependentQueries = append(dependentQueries, entry)
for _, id := range entry.RequiredQueryIDs {
if qu.ID == id {
dependentQueries = append(dependentQueries, entry)
break
}
}
}
if requiredIndex != -1 {
*q.unsyncedQueue = append((*q.unsyncedQueue)[:requiredIndex+1], append([]query.QueryRow{*qu}, (*q.unsyncedQueue)[requiredIndex+1:]...)...)
*q.unsyncedQueue = append((*q.unsyncedQueue)[:requiredIndex+1], append([]queryprocessor.Query{*qu}, (*q.unsyncedQueue)[requiredIndex+1:]...)...)
} else {
*q.unsyncedQueue = append([]query.QueryRow{*qu}, *q.unsyncedQueue...)
*q.unsyncedQueue = append([]queryprocessor.Query{*qu}, *q.unsyncedQueue...)
}
for _, entry := range dependentQueries {