// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.31.1 // source: library_changes.sql package dbq import ( "context" "github.com/jackc/pgx/v5/pgtype" ) const deleteOldLibraryChanges = `-- name: DeleteOldLibraryChanges :execrows DELETE FROM library_changes WHERE changed_at < $1 ` // Removes library_changes rows older than the given cutoff. Run from // the sync compactor goroutine on a daily tick. Returns the number of // rows deleted so the worker can log meaningful progress. func (q *Queries) DeleteOldLibraryChanges(ctx context.Context, changedAt pgtype.Timestamptz) (int64, error) { result, err := q.db.Exec(ctx, deleteOldLibraryChanges, changedAt) if err != nil { return 0, err } return result.RowsAffected(), nil } const getLibraryChangesSince = `-- name: GetLibraryChangesSince :many SELECT id, entity_type, entity_id, op, changed_at FROM library_changes WHERE id > $1 ORDER BY id ASC LIMIT $2 ` type GetLibraryChangesSinceParams struct { ID int64 Limit int32 } func (q *Queries) GetLibraryChangesSince(ctx context.Context, arg GetLibraryChangesSinceParams) ([]LibraryChange, error) { rows, err := q.db.Query(ctx, getLibraryChangesSince, arg.ID, arg.Limit) if err != nil { return nil, err } defer rows.Close() var items []LibraryChange for rows.Next() { var i LibraryChange if err := rows.Scan( &i.ID, &i.EntityType, &i.EntityID, &i.Op, &i.ChangedAt, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil } const getMaxLibraryChangeCursor = `-- name: GetMaxLibraryChangeCursor :one SELECT COALESCE(MAX(id), 0)::BIGINT FROM library_changes ` func (q *Queries) GetMaxLibraryChangeCursor(ctx context.Context) (int64, error) { row := q.db.QueryRow(ctx, getMaxLibraryChangeCursor) var column_1 int64 err := row.Scan(&column_1) return column_1, err } const getMinLibraryChangeCursor = `-- name: GetMinLibraryChangeCursor :one SELECT COALESCE(MIN(id), 0)::BIGINT FROM library_changes ` func (q *Queries) GetMinLibraryChangeCursor(ctx context.Context) (int64, error) { row := q.db.QueryRow(ctx, getMinLibraryChangeCursor) var column_1 int64 err := row.Scan(&column_1) return column_1, err } const insertLibraryChange = `-- name: InsertLibraryChange :exec INSERT INTO library_changes (entity_type, entity_id, op) VALUES ($1, $2, $3) ` type InsertLibraryChangeParams struct { EntityType string EntityID string Op string } func (q *Queries) InsertLibraryChange(ctx context.Context, arg InsertLibraryChangeParams) error { _, err := q.db.Exec(ctx, insertLibraryChange, arg.EntityType, arg.EntityID, arg.Op) return err }