PGS-220000 PostgreSQL: ERROR: bigint erro fora do intervalo no Campaign Classic

Saiba como resolver o  PGS-220000 PostgreSQL: ERROR:  erro bigint fora do intervalo em Campaign Classic usando a ID da instância de execução .

Descrição description

Ambiente
Adobe Campaign Classic v7

Problema
O seguinte erro é executado no workflow de arquivamento (mcSynch) do Centro de mensagens:

Resolução resolution

Solução
O problema é a ID da instância de execução que foi usada para identificar a instância de execução RT.

Como mostrado acima, o valor usado é 50,805,170.

A ID da instância de execução é usada pelo workflow de arquivamento da seguinte maneira:

vars.CELL_OFFSET + "*" + vars.cellId + " + @id"

Onde

  • CELL_OFFSET é uma constante (72057594037927936) criada pela atividade "Informações de conexão".

  • cellId é a ID da instância de execução.

Esses dois números acima são multiplicados juntos. O número do resultado final é maior que o valor máximo do tipo bigint Postgres (Tipos Numéricos PostgreSQL).

Os dois valores são adicionados à query da seguinte maneira:

SELECIONE    :#(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.i WishedChannel, 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.s Idioma, B0.iFolderId, B0.iCreatedById, B0.mData
  FROM NmsBatchEvent B0
 ONDE ((B0.iFolderId IN (SELECT xr.iFolderId FROM XtkRights xr WHERE xr.iOperatorId IN (3798)) OU B0.iFolderId=0))
   E (((B0.iFolderId IN (SELECT xr.iFolderId FROM XtkRights xr WHERE xr.iOperatorId IN (3798)) OU B0.iFolderId=0)))
   E ((B0.iBatchEventId < > :#(3)#) E (B0.tsLastModified < :#(4)#)))
 ORDER BY truncdate(B0.tsLastModified, :#(5)#, 'Europa/Londres'), B0.iBatchEventId LIMIT 501'

Param( 0)=72057594037927936\n  —> :#(1)#

Param( 1)=50805170\n  —> :#(2)#

Param( 2)=0\n  Param(3)=04/09/2021 05:00:26\n  Param(4)=1

A solução é utilizar um número menor como a ID da instância de execução.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f