Merged in feature/jobsynced (pull request #72)

Job Status Get and DB tidy up

* initalquery

* tests

* shorttests

* testing queries

* job

* solvedthequery

* updatingdb

* fixingtests

* repotests

* shorttests

* docker

* testspassed
This commit is contained in:
Michael McGuinness
2025-02-20 19:02:44 +00:00
parent 0ea544926b
commit 3d434eedb8
74 changed files with 2395 additions and 1335 deletions
+11 -43
View File
@@ -36,39 +36,21 @@ func (q *Queries) AddDocumentCleanEntry(ctx context.Context, arg *AddDocumentCle
}
const getDocumentCleanEntry = `-- name: GetDocumentCleanEntry :one
SELECT dc.documentId, dc.bucket, dc.key, dc.version
FROM documentCleans AS dc
JOIN documents AS d ON d.id = dc.documentId
LEFT JOIN collectors as c ON d.jobId = c.jobId
LEFT JOIN collectorCurrentActiveVersions as av on c.id = av.collectorId
LEFT JOIN collectorMinCleanVersions AS ccv ON c.id = ccv.collectorId
and isInVersion(av.id, ccv.addedVersion, ccv.removedVersion)
WHERE dc.documentId = $1 and dc.version >= coalesce(ccv.versionId, 1)
ORDER BY d.id DESC LIMIT 1
SELECT id, documentId, bucket, key, version
FROM currentCleanEntries
WHERE documentId = $1
`
type GetDocumentCleanEntryRow struct {
Documentid pgtype.UUID `db:"documentid"`
Bucket string `db:"bucket"`
Key string `db:"key"`
Version int32 `db:"version"`
}
// GetDocumentCleanEntry
//
// SELECT dc.documentId, dc.bucket, dc.key, dc.version
// FROM documentCleans AS dc
// JOIN documents AS d ON d.id = dc.documentId
// LEFT JOIN collectors as c ON d.jobId = c.jobId
// LEFT JOIN collectorCurrentActiveVersions as av on c.id = av.collectorId
// LEFT JOIN collectorMinCleanVersions AS ccv ON c.id = ccv.collectorId
// and isInVersion(av.id, ccv.addedVersion, ccv.removedVersion)
// WHERE dc.documentId = $1 and dc.version >= coalesce(ccv.versionId, 1)
// ORDER BY d.id DESC LIMIT 1
func (q *Queries) GetDocumentCleanEntry(ctx context.Context, documentid pgtype.UUID) (*GetDocumentCleanEntryRow, error) {
// SELECT id, documentId, bucket, key, version
// FROM currentCleanEntries
// WHERE documentId = $1
func (q *Queries) GetDocumentCleanEntry(ctx context.Context, documentid pgtype.UUID) (*Currentcleanentry, error) {
row := q.db.QueryRow(ctx, getDocumentCleanEntry, documentid)
var i GetDocumentCleanEntryRow
var i Currentcleanentry
err := row.Scan(
&i.ID,
&i.Documentid,
&i.Bucket,
&i.Key,
@@ -79,28 +61,14 @@ func (q *Queries) GetDocumentCleanEntry(ctx context.Context, documentid pgtype.U
const isDocumentClean = `-- name: IsDocumentClean :one
SELECT EXISTS(
SELECT 1
FROM documentCleans AS dc
JOIN documents AS d ON d.id = dc.documentId
LEFT JOIN collectors as c ON d.jobId = c.jobId
LEFT JOIN collectorCurrentActiveVersions as av on c.id = av.collectorId
LEFT JOIN collectorMinCleanVersions AS ccv ON c.id = ccv.collectorId
and isInVersion(av.id, ccv.addedVersion, ccv.removedVersion)
WHERE dc.documentId = $1 and dc.version >= coalesce(ccv.versionId, 1)
SELECT 1 FROM currentCleanEntries WHERE documentId = $1
)
`
// IsDocumentClean
//
// SELECT EXISTS(
// SELECT 1
// FROM documentCleans AS dc
// JOIN documents AS d ON d.id = dc.documentId
// LEFT JOIN collectors as c ON d.jobId = c.jobId
// LEFT JOIN collectorCurrentActiveVersions as av on c.id = av.collectorId
// LEFT JOIN collectorMinCleanVersions AS ccv ON c.id = ccv.collectorId
// and isInVersion(av.id, ccv.addedVersion, ccv.removedVersion)
// WHERE dc.documentId = $1 and dc.version >= coalesce(ccv.versionId, 1)
// SELECT 1 FROM currentCleanEntries WHERE documentId = $1
// )
func (q *Queries) IsDocumentClean(ctx context.Context, documentid pgtype.UUID) (bool, error) {
row := q.db.QueryRow(ctx, isDocumentClean, documentid)