PGS-220000 PostgreSQL: ERROR: bigint out of range error in Campaign Classic
Erfahren Sie, wie Sie die PGS-220000 PostgreSQL: FEHLER: bigint-Fehler außerhalb des Bereichs beim Campaign Classic mit der Ausführungsinstanz-ID .
Beschreibung description
Umgebung
Adobe Campaign Classic v7
Problem
Der folgende Fehler wird im Archivierungs-Workflow (mcSynch) von Message Center aus ausgeführt:
Auflösung resolution
Lösung
Das Problem ist die Ausführungsinstanz-ID, die zur Identifizierung der RT-Ausführungsinstanz verwendet wurde.
Wie oben gezeigt, ist der verwendete Wert 50.805.170.
Die ID der Ausführungsinstanz wird vom Archivierungs-Workflow wie folgt verwendet:
vars.CELL_OFFSET + "*" + vars.cellId + " + @id“
Hierbei gilt
-
CELL_OFFSET ist eine Konstante (72057594037927936), die von der Aktivität „Verbindungsinformationen“ erstellt wird.
-
cellId ist die ID der Ausführungsinstanz.
Diese beiden Zahlen werden miteinander multipliziert. Die Endergebnisnummer ist größer als der maximale Wert des Postgres-BigInt-Typs (numerische PostgreSQL-Typen).
Die beiden Werte werden wie folgt zur Abfrage hinzugefügt:
AUSWÄHLEN :#(1)# * :#(2)# + B0.iBatchEventId, B0.iBatchEventId, B0.iStatus, B0.iRetry, B0.tsSubmit, B0.tsScheduled, B0.tsExpiration, B0.tsCreated, B0.tsProcessing, B0.tsProcessed, B0.tsLastModified, B0.sType, B0.iDeliveryId, B0.iWishedChannel, B0.sExternalId B0.sOrigin, B0.sEmail, B0.iEmailFormat, B0.sMobilePhone, B0.sRegistrationToken, B0.iMobileAppId, B0.sLine1, B0.sLine2, B0.sLine3, B0.sLine4, B0.sLine5, B0.sLine6, B0.sLine7, B0.sCountryCode, B0.sLanguage, B0.iFolderId, B0.iCreatedById, B0.mData
VON NmsBatchEvent B0
WO ((B0.iFolderId IN (SELECT xr.iFolderId FROM XtkRights xr WHERE xr.iOperatorId IN (3798)) ODER B0.iFolderId=0)))
UND ((B0.iFolderId IN (SELECT xr.iFolderId FROM XtkRights xr WHERE xr.iOperatorId IN (3798)) ODER B0.iFolderId=0)))
UND ((B0.iBatchEventId < > :#(3)#) AND (B0.tsLastModified < :#(4)#)))
ORDER BY truncdate(B0.tsLastModified, :#(5)#, 'Europe/London'), B0.iBatchEventId LIMIT 501'
Parameter(0)=72057594037927936\n —> :#(1)#
Parameter(1)=50805170\n —> :#(2)#
Parameter(2)=0\n Param(3)=09/04/2021 05:00:26\n Param(4)=1
Die Lösung besteht darin, eine kleinere Zahl als Ausführungsinstanz-ID zu verwenden.