chore: extract common prefixes into a constant for multiple query (#2747)

* chore: extract select to constant for multiple prefix

* chore: Add a space at the end of selectClause to facilitate better string merging.

Signed-off-by: DarshanBPatel <darshan@status.im>

---------

Signed-off-by: DarshanBPatel <darshan@status.im>
This commit is contained in:
Darshan K 2024-06-03 21:52:53 +05:30 committed by GitHub
parent ae52913128
commit 7242d2aca2

View File

@ -34,88 +34,80 @@ const InsertRowStmtDefinition = # TODO: get the sql queries from a file
version, timestamp, meta) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, CASE WHEN $9 = '' THEN NULL ELSE $9 END) ON CONFLICT DO NOTHING;""" version, timestamp, meta) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, CASE WHEN $9 = '' THEN NULL ELSE $9 END) ON CONFLICT DO NOTHING;"""
const SelectNoCursorAscStmtName = "SelectWithoutCursorAsc" const SelectNoCursorAscStmtName = "SelectWithoutCursorAsc"
const SelectNoCursorAscStmtDef = const SelectClause = """SELECT storedAt, contentTopic, payload, pubsubTopic, version, timestamp, id, messageHash, meta FROM messages """
"""SELECT storedAt, contentTopic, payload, pubsubTopic, version, timestamp, id, messageHash, meta FROM messages const SelectNoCursorAscStmtDef = SelectClause & """
WHERE contentTopic IN ($1) AND WHERE contentTopic IN ($1) AND
messageHash IN ($2) AND messageHash IN ($2) AND
pubsubTopic = $3 AND pubsubTopic = $3 AND
storedAt >= $4 AND storedAt >= $4 AND
storedAt <= $5 storedAt <= $5
ORDER BY storedAt ASC, messageHash ASC LIMIT $6;""" ORDER BY storedAt ASC, messageHash ASC LIMIT $6;"""
const SelectNoCursorDescStmtName = "SelectWithoutCursorDesc" const SelectNoCursorDescStmtName = "SelectWithoutCursorDesc"
const SelectNoCursorDescStmtDef = const SelectNoCursorDescStmtDef = SelectClause & """
"""SELECT storedAt, contentTopic, payload, pubsubTopic, version, timestamp, id, messageHash, meta FROM messages WHERE contentTopic IN ($1) AND
WHERE contentTopic IN ($1) AND messageHash IN ($2) AND
messageHash IN ($2) AND pubsubTopic = $3 AND
pubsubTopic = $3 AND storedAt >= $4 AND
storedAt >= $4 AND storedAt <= $5
storedAt <= $5 ORDER BY storedAt DESC, messageHash DESC LIMIT $6;"""
ORDER BY storedAt DESC, messageHash DESC LIMIT $6;"""
const SelectWithCursorDescStmtName = "SelectWithCursorDesc" const SelectWithCursorDescStmtName = "SelectWithCursorDesc"
const SelectWithCursorDescStmtDef = const SelectWithCursorDescStmtDef = SelectClause & """
"""SELECT storedAt, contentTopic, payload, pubsubTopic, version, timestamp, id, messageHash, meta FROM messages WHERE contentTopic IN ($1) AND
WHERE contentTopic IN ($1) AND messageHash IN ($2) AND
messageHash IN ($2) AND pubsubTopic = $3 AND
pubsubTopic = $3 AND (storedAt, messageHash) < ($4,$5) AND
(storedAt, messageHash) < ($4,$5) AND storedAt >= $6 AND
storedAt >= $6 AND storedAt <= $7
storedAt <= $7 ORDER BY storedAt DESC, messageHash DESC LIMIT $8;"""
ORDER BY storedAt DESC, messageHash DESC LIMIT $8;"""
const SelectWithCursorAscStmtName = "SelectWithCursorAsc" const SelectWithCursorAscStmtName = "SelectWithCursorAsc"
const SelectWithCursorAscStmtDef = const SelectWithCursorAscStmtDef = SelectClause & """
"""SELECT storedAt, contentTopic, payload, pubsubTopic, version, timestamp, id, messageHash, meta FROM messages WHERE contentTopic IN ($1) AND
WHERE contentTopic IN ($1) AND messageHash IN ($2) AND
messageHash IN ($2) AND pubsubTopic = $3 AND
pubsubTopic = $3 AND (storedAt, messageHash) > ($4,$5) AND
(storedAt, messageHash) > ($4,$5) AND storedAt >= $6 AND
storedAt >= $6 AND storedAt <= $7
storedAt <= $7 ORDER BY storedAt ASC, messageHash ASC LIMIT $8;"""
ORDER BY storedAt ASC, messageHash ASC LIMIT $8;"""
const SelectMessageByHashName = "SelectMessageByHash" const SelectMessageByHashName = "SelectMessageByHash"
const SelectMessageByHashDef = const SelectMessageByHashDef = SelectClause & """WHERE messageHash = $1"""
"""SELECT storedAt, contentTopic, payload, pubsubTopic, version, timestamp, id, messageHash, meta FROM messages WHERE messageHash = $1"""
const SelectNoCursorV2AscStmtName = "SelectWithoutCursorV2Asc" const SelectNoCursorV2AscStmtName = "SelectWithoutCursorV2Asc"
const SelectNoCursorV2AscStmtDef = const SelectNoCursorV2AscStmtDef = SelectClause & """
"""SELECT storedAt, contentTopic, payload, pubsubTopic, version, timestamp, id, messageHash, meta FROM messages WHERE contentTopic IN ($1) AND
WHERE contentTopic IN ($1) AND pubsubTopic = $2 AND
pubsubTopic = $2 AND storedAt >= $3 AND
storedAt >= $3 AND storedAt <= $4
storedAt <= $4 ORDER BY storedAt ASC LIMIT $5;"""
ORDER BY storedAt ASC LIMIT $5;"""
const SelectNoCursorV2DescStmtName = "SelectWithoutCursorV2Desc" const SelectNoCursorV2DescStmtName = "SelectWithoutCursorV2Desc"
const SelectNoCursorV2DescStmtDef = const SelectNoCursorV2DescStmtDef = SelectClause & """
"""SELECT storedAt, contentTopic, payload, pubsubTopic, version, timestamp, id, messageHash, meta FROM messages WHERE contentTopic IN ($1) AND
WHERE contentTopic IN ($1) AND pubsubTopic = $2 AND
pubsubTopic = $2 AND storedAt >= $3 AND
storedAt >= $3 AND storedAt <= $4
storedAt <= $4 ORDER BY storedAt DESC LIMIT $5;"""
ORDER BY storedAt DESC LIMIT $5;"""
const SelectWithCursorV2DescStmtName = "SelectWithCursorV2Desc" const SelectWithCursorV2DescStmtName = "SelectWithCursorV2Desc"
const SelectWithCursorV2DescStmtDef = const SelectWithCursorV2DescStmtDef = SelectClause & """
"""SELECT storedAt, contentTopic, payload, pubsubTopic, version, timestamp, id, messageHash, meta FROM messages WHERE contentTopic IN ($1) AND
WHERE contentTopic IN ($1) AND pubsubTopic = $2 AND
pubsubTopic = $2 AND (storedAt, id) < ($3,$4) AND
(storedAt, id) < ($3,$4) AND storedAt >= $5 AND
storedAt >= $5 AND storedAt <= $6
storedAt <= $6 ORDER BY storedAt DESC LIMIT $7;"""
ORDER BY storedAt DESC LIMIT $7;"""
const SelectWithCursorV2AscStmtName = "SelectWithCursorV2Asc" const SelectWithCursorV2AscStmtName = "SelectWithCursorV2Asc"
const SelectWithCursorV2AscStmtDef = const SelectWithCursorV2AscStmtDef = SelectClause & """
"""SELECT storedAt, contentTopic, payload, pubsubTopic, version, timestamp, id, messageHash, meta FROM messages WHERE contentTopic IN ($1) AND
WHERE contentTopic IN ($1) AND pubsubTopic = $2 AND
pubsubTopic = $2 AND (storedAt, id) > ($3,$4) AND
(storedAt, id) > ($3,$4) AND storedAt >= $5 AND
storedAt >= $5 AND storedAt <= $6
storedAt <= $6 ORDER BY storedAt ASC LIMIT $7;"""
ORDER BY storedAt ASC LIMIT $7;"""
const DefaultMaxNumConns = 50 const DefaultMaxNumConns = 50