fix(revisions): cleanup schedule failed due to ambigous columns in SQL

The generated SQL from Knex contained ambigous column names, resulting
in failure in the real-world since these queries were rejected by the
SQLite library. This patch fixes the problem by properly making all
column names explicit.

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
This commit is contained in:
Erik Michelson
2026-05-14 01:09:03 +02:00
parent d38b99887d
commit 42a21586aa
2 changed files with 10 additions and 10 deletions
@@ -563,10 +563,10 @@ describe('RevisionsService', () => {
mockSelect(
tracker,
[
FieldNameRevision.uuid,
`${TableRevision}"."${FieldNameRevision.uuid}`,
`${TableRevision}"."${FieldNameRevision.noteId}`,
FieldNameRevision.content,
FieldNameAlias.alias,
`${TableRevision}"."${FieldNameRevision.content}`,
`${TableAlias}"."${FieldNameAlias.alias}`,
],
TableRevision,
[FieldNameRevision.noteId, FieldNameAlias.isPrimary],
+7 -7
View File
@@ -479,16 +479,16 @@ export class RevisionsService {
`${TableRevision}.${FieldNameRevision.noteId}`,
)
.select(
FieldNameRevision.uuid,
`${TableRevision}.${FieldNameRevision.uuid}`,
`${TableRevision}.${FieldNameRevision.noteId}`,
FieldNameRevision.content,
FieldNameAlias.alias,
`${TableRevision}.${FieldNameRevision.content}`,
`${TableAlias}.${FieldNameAlias.alias}`,
)
.whereIn(FieldNameRevision.noteId, uniqueNoteIds)
.andWhere(FieldNameAlias.isPrimary, true)
.whereIn(`${TableRevision}.${FieldNameRevision.noteId}`, uniqueNoteIds)
.andWhere(`${TableAlias}.${FieldNameAlias.isPrimary}`, true)
.orderBy([
{ column: FieldNameRevision.noteId },
{ column: FieldNameRevision.createdAt, order: 'ASC' },
{ column: `${TableRevision}.${FieldNameRevision.noteId}` },
{ column: `${TableRevision}.${FieldNameRevision.createdAt}`, order: 'ASC' },
]);
let lastNoteId = -1;