Question
Vodafone
ES
Last activity: 31 May 2021 9:26 EDT
Error assigning an Event to a Campaign
Hello,
Our problem is that during the edit campaign process, when an Real Time Event is adding to the Campaign, this cannot be neither saved than Confirm.
This is the error we get in the screen:
- Batch table creation failed reason :Database-General Problem executing SQL to update database schema 955 42000 ORA-00955: name is already used by an existing object
- DatabaseException caused by prior exception: java.sql.SQLSyntaxErrorException: ORA-00955: name is already used by an existing object
- | SQL Code: 955 | SQL State: 42000
- pzBatchReportingClassCreationFailed Trying to save an invalid page: Table does not exist in database
- Trying to save an invalid page: page is not valid
- Failed to create the event Output Configuration for this Campaign.
- Trying to save an invalid page: page is not valid
We have create several campaigns, but the error is the same.
If we configure a Campaing without Event in the Enablement it works fine
[ MKT:01.02.01] ( internal.access.DatabaseImpl) ERROR - A commit cannot be performed because a deferred save of instance RULE-OBJ-CLASS PEGAMKT-DATA-RESULTOUTPUT-EVENT-P20 failed
[ MKT:01.02.01] ( internal.access.DatabaseImpl) ERROR - The deferred save failed with the following exception
com.pega.pegarules.pub.database.BadInputException: Trying to save an invalid page: Table does not exist in database
Trying to save an invalid page: page is not valid
Hello,
Our problem is that during the edit campaign process, when an Real Time Event is adding to the Campaign, this cannot be neither saved than Confirm.
This is the error we get in the screen:
- Batch table creation failed reason :Database-General Problem executing SQL to update database schema 955 42000 ORA-00955: name is already used by an existing object
- DatabaseException caused by prior exception: java.sql.SQLSyntaxErrorException: ORA-00955: name is already used by an existing object
- | SQL Code: 955 | SQL State: 42000
- pzBatchReportingClassCreationFailed Trying to save an invalid page: Table does not exist in database
- Trying to save an invalid page: page is not valid
- Failed to create the event Output Configuration for this Campaign.
- Trying to save an invalid page: page is not valid
We have create several campaigns, but the error is the same.
If we configure a Campaing without Event in the Enablement it works fine
[ MKT:01.02.01] ( internal.access.DatabaseImpl) ERROR - A commit cannot be performed because a deferred save of instance RULE-OBJ-CLASS PEGAMKT-DATA-RESULTOUTPUT-EVENT-P20 failed
[ MKT:01.02.01] ( internal.access.DatabaseImpl) ERROR - The deferred save failed with the following exception
com.pega.pegarules.pub.database.BadInputException: Trying to save an invalid page: Table does not exist in database
Trying to save an invalid page: page is not valid
at com.pega.pegarules.data.internal.access.Saver.validate(Saver.java:1164) ~[prprivate.jar:?]
at com.pega.pegarules.data.internal.access.Saver.saveDeferred(Saver.java:386) ~[prprivate.jar:?]
at com.pega.pegarules.data.internal.access.DatabaseImpl.saveDeferred(DatabaseImpl.java:2739) ~[prprivate.jar:?]
at com.pega.pegarules.data.internal.access.DatabaseImpl.saveDeferred(DatabaseImpl.java:2723) ~[prprivate.jar:?]
at com.pegarules.generated.activity.ra_action_pzcreatebatchdecisionoutput_4e875b0ef984d8c3f1133160bbbf735d.step33_circum0(ra_action_pzcreatebatchdecisionoutput_4e875b0ef984d8c3f1133160bbbf735d.java:3202) ~[?:?]
at com.pegarules.generated.activity.ra_action_pzcreatebatchdecisionoutput_4e875b0ef984d8c3f1133160bbbf735d.perform(ra_action_pzcreatebatchdecisionoutput_4e875b0ef984d8c3f1133160bbbf735d.java:764) ~[?:?]
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3556) ~[prprivate.jar:?]
at com.pega.pegarules.session.internal.mgmt.Executable.invokeActivity(Executable.java:10878) ~[prprivate.jar:?]
***Edited by Moderator Marissa to update SR Details***
-
Like (0)
-
Share this page Facebook Twitter LinkedIn Email Copying... Copied!
Pegasystems Inc.
IN
Hi,
When we submit the campaign (with which real time event is associated) one table and class will get created.(tablename:MKT_EVENT_ProgramID , Class Name:PEGAMKT-DATA-RESULTOUTPUT-EVENT-ProgramID)
From the provided logs I could observe that table is not present in DB.
Please provide the tracer details to debug further.
Vodafone
ES
Hi,
the table is creted in DB. We have checked it.
Thank you
Pegasystems Inc.
US
team will investigate further under the referenced SR and report back the outcome.
Vodafone
ES
Hi,
we are still waiting. We'd appreciate it if you'd give it more speed.
Is there any Activity we could debug to provide you more information?
Thank you
Pegasystems Inc.
SG
Can someone post resolution for this post here? We are facing the exact same issue
Pegasystems Inc.
IN
Hi Dubea1,
Is it happening in all the environments at your end? I mean Dev and Test etc.
Unfortunately we don't have the resoultion for that issue yet, but we found that root cause.
We have observed that error is coming at 4th step of "pzValidateCreateTableForClass" activity. Please try to trace while submitting the campaign and let us know whether you are facing the issue at same step or not?
Pegasystems Inc.
SG
Thanks a lot, Commenting out the step does take the campaign forward. Testing it now. Will keep you posted
From environment perspective, it's happening for us in one of our demo environments.
Pegasystems Inc.
IN
But I think it is Final rule, so making changes to that rule is not a best practice. I am working with the product team on this, will let you know If I get any other work-around.
Pegasystems Inc.
SG
Understand. I have shared environment details seperately on email where you can reproduce the issue for debugging/tracing.
Pegasystems Inc.
SG
We encountered the same problem using Oracle with the following Pega products:
Pega 8.2.2, Pega Marketing 8.2, Pega Foundation for Financial Services 8.1, and Pega Marketing for Financial Services 8..2
The workaround suggested here also worked for us, namely comment out line 4 of pzValidateCreateTableForClass. (If you try searching for this activity and can't find it just update your operator preferences to 'Enable diagnostics features')
Pegasystems Inc.
SG
Hello. We are also encountering the same issue. In our case the class PegaMKT-Data-ResultOutput-Event-P4 being mapped and created in table DATASCHEMA.mkt_batchout_core in PegaDATA . When we try to run a campaign using this event we get the following error:
at java.lang.Thread.run(Thread.java:748)
Pegasystems Inc.
IN
Hi,
I think table got created properly. Please check your DB once whether the table got created properly or not?
Pegasystems Inc.
SG
Hello. No, the MKT_EVENT_P4 table does not exist in any of the schemas!
Pegasystems Inc.
IN
Let me know whether Data-batchoutPR** tables are getting created properly?
I am suspecting that this might be privilege related issue.
Pegasystems Inc.
SG
Thanks. I just left the office but will check tomorrow.
Pegasystems Inc.
SG
Hi Nishitha. I think you may be onto something. It seems that many tables that should be created in our ExternalMKTData database our be being place in tables higher up in the class hierarchy. The Data-batchoutPR classes are going into pr_data:
Class Data-BatchOutPR14 is mapped to table DATASCHEMA.pr_data in PegaDATA.
In our old environment which is working this mappings were like:
Class Data-BatchOutPR14
is mapped to table customerdata.BatchOutPR14
in ExternalMKTData
.
CUSTERMORDATA is the schema for the ExternalMKTData tables in the new environment. What specific privileges would we be missing that would cause this behaviour?
Pegasystems Inc.
IN
Have you modified ExternalMKTData database rule and added your new database details in that rule?
Pegasystems Inc.
SG
Yes. When we apply the workaround, all expected tables get created in our ExternalMktData database which has the Customerdata schema. Without the workaround the main MKT_EVENT_<ProgramRun> table cannot be created and therefore things like HIstory-, indices, etc., are not created.
Pegasystems Inc.
IN
What work around you have applied? Did you modify the details ExternalMKTData database rule ?
Now issue got resolved right?
Pegasystems Inc.
SG
We followed the workaround in this post...namely commenting line 4 of the pzValidateCreateTableForClass activity. No modifications to ExternalMKTData.
Pegasystems Inc.
IN
As I have already mentioned, commenting that step is not proper solution, because in the activity we are validating whether the class created properly or not and it is also a final rule .
Accenture
BR
Hi. We are also encountering the same issue. When I try to run the campaign, a error appears, and the table MKT_EVENT_<ProgramRun> is not created. Campaign without a Realtime Event is running fine.
Has any solution for this issue?
PS. Error printscreen attached.