Question

BatchOut Table column population in Pega Marketing 7.22

Can someone help me to understand how Batchout table populates the columns?

I have dig into the OOTB code and found out that Pega try to create a BatchOut table in the background with all the StrategySRClass properties. Basically they check the classes which is defined on “Data-pxStrategyResult” and creates the column. We have currently 2000 properties at SR class and pega also try to create table with 2000 columns. Since Oracle has cap of 1000 columns, a DB error is thrown.

I can see from the Java code that they filter following properties.

It’s not start with "pz"

it's not a page, pagelist or pagegroup property

It is not the transient property.

it's decisioningitem in pyCustomFields matches .pyConfigType (In my case ConfigType is “Strategy”)

If the above analysis is correct? I would like to understand that how pega will address this? when we have more than 1000 columns to be eligible for BatchOut table.

Comments

Keep up to date on this post and subscribe to comments

February 11, 2019 - 8:59am

Hi,

Do you really need all the 2000 columns in the batch table ? if so why ? if many of these properties are just used for decisioning and store temporary data - then you can mark those properties as transient.

The transient properties are not created in the table as observed by you.

Given this is a DB level limitation, we can't do much here. The table is created without a BLOB on purpose for performance reasons.

February 12, 2019 - 6:43pm
Response to Sriram Krishnan

Thanks Sriram!

Transient could be one of the option we might opt for, meanwhile; we are exploring some other reasonable solution with GCS. I'll update this once after have a concrete solution.

 

March 13, 2019 - 9:49pm

We have verified with the GCS and looks like Transient is the only possible option as of now. We have decided to opt this solution.

March 14, 2019 - 8:29am
Response to Incessant_Abhitesh

Thanks for sharing this information. Could you let us know the SR ID so that we can connect this post with your SR please?

 

Marissa | Community Moderator | Pegasystems Inc.

December 11, 2019 - 5:44am
Response to Incessant_Abhitesh

Hi Abhitesh,

We also wanted to restrict the no. of columns created in the batch output table.  We tried setting some of the properties, which are not required to be columns in the batch output table as Transient ( Enable Do not save property data on the Advanced table of the Property Rule). Still, we see those columns being created in the batch output table. Can you please confirm, if we need to do any other change elsewhere. We are on PRPC 8.2.4 and Pega Marketing 8.2.

 

December 11, 2019 - 6:35am
Response to RajuBadkal

Hi @RajuBadkal

Thank you for posting your query in the PSC. This looks like an inactive post and hence, we suggest you create a new post for your query. Click on the Write Post button here. Once created, please reply here with the URL of the new post.

You may also refer this discussion link as a reference in the new thread.

Vidyaranjan | Community Moderator | Pegasystems Inc.

Pega
December 11, 2019 - 8:06am
Response to RajuBadkal

Yes this is the right approach.  Please ensure the property rule has been checked in properly and there is not another rule of the same name in a higher ruleset/ruleset version.  If you have validated those items and its still creating the property in the batch table, then I would suggest you open a support request with Pega.