Question
Accenture Federal Services
US
Last activity: 5 May 2016 21:57 EDT
Attempting to setup VPD for oracle db
I'm attempting to setup the new 7.2 Pega VPD using an oracle 12c database. I have completed all steps that can be done from the designer studio. When I click test connect on my secureDB database name instance, I receive the following error:
Custom properties are empty in data page D_VPDInfo which is defined for db cdcs: code: <none> SQLState: <none> Message: <none> |
Fail |
Has anyone successfully setup the new 7.2 VPD?
Message was edited by: Lochan to add Category
-
Like (0)
-
Share this page Facebook Twitter LinkedIn Email Copying... Copied!
Accepted Solution
Pegasystems Inc.
US
We have identified a problem with the Code-Pega-DBApplicationContext class definition. We have an alternative way to define Data Page and can use List of Embed-NameValuePair in Data Page as defined below.
1. Prepare Data Transform
Pegasystems Inc.
US
Before we dig in, I don't think pega has tested VPD for 7.2. Regarding the future, Buelent Zeyben, is there anything you can comment on?
Accenture Federal Services
US
Another useful piece of information is that I had my D_VPDInfo page set to a page list. When I changed it to a page structure, I still received an error, but a different one:
The property D_VPDInfo.pyCustomPropertyList.pyValue was of mode String while com.pega.pegarules.data.internal.clipboard.ClipboardPropertyStrMinFeatureImpl.getPageValue() was expecting Page mode. Details: (none)
Pegasystems Inc.
US
We did test VPD, see Initial VPD Performance Test Comparison.
Aawardhan Logandan can you please take a look and see if this rings a bell.
Pegasystems Inc.
US
Thanks Buelent. Unfortunately, the link is only for pega internal users. For other users, are you saying we have tested VPD in pega 7.2 and it should work for that version? Any public documentation available for VPD setup with Pega?
Pegasystems Inc.
US
We have validation to throw exception when custom properties are empty. This error is due to Data Page doesn't contain any custom properties. Add properties to D_VPDInfo Data Page. Let us know if you have any other issues.
Pegasystems Inc.
US
Srinivas,
Is there any documentation on how to set up VPD for public consumption? The installation guide does not seem have anything there.
Pegasystems Inc.
US
We have following PDN which explains how to pass custom properties.
Pegasystems Inc.
US
great, thanks! It probably should be referenced in the installation guide.
Accenture Federal Services
US
Srinivas, thank you for your reply. There is no example for how the data in the data page should look. Below are examples of both my page structure data page and my page list structure data page. Neither are working. Is this how it should look? Furthermore, what is the context that the data page is ran from? Could there be ruleset or other app security blocking the loading of the data page during runtime?
Page structure:
Page List Structure:
Pegasystems Inc.
US
Accenture Federal Services
US
Pegasystems Inc.
US
Data Page Definition is correct. Can you check whether Data Page i.e., pyCustomPropertyList is populated with key/values pairs? Please raise an SR if you still have the same issue.
Accenture Federal Services
US
Yup, I can see on the tracer that the data page loads with correct values right before I get the custom properties error. I went ahead and created an SR. My stack trace for the page structure error is as follows:
Yup, I can see on the tracer that the data page loads with correct values right before I get the custom properties error. I went ahead and created an SR. My stack trace for the page structure error is as follows:
[MSG][Exception][STACK][com.pega.pegarules.pub.clipboard.WrongModeException: The property D_VPDInfo.pyCustomPropertyList.pyValue was of mode String while com.pega.pegarules.data.internal.clipboard.ClipboardPropertyStrMinFeatureImpl.getPageValue() was expecting Page mode. Details: (none) at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyImpl.getPageValue(ClipboardPropertyImpl.java:3495) at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyImpl.getPageValue(ClipboardPropertyImpl.java:3486) at com.pega.pegarules.data.internal.access.CustomPropertiesHelper.retrieveCustomProperties(CustomPropertiesHelper.java:44) at com.pega.pegarules.data.internal.access.oracle.SQLGeneratorOracle.applyCustomProperties(SQLGeneratorOracle.java:1398) at com.pega.pegarules.data.internal.access.ConnectionManagerImpl.applyCustomProperties(ConnectionManagerImpl.java:1241) at com.pega.pegarules.data.internal.access.ConnectionManagerImpl.getConnection(ConnectionManagerImpl.java:1219) at com.pega.pegarules.data.internal.access.ConnectionManagerImpl.getConnection(ConnectionManagerImpl.java:1156) at com.pega.pegarules.data.internal.access.DatabaseImpl.testConnection(DatabaseImpl.java:7977) at com.pega.pegarules.data.internal.access.DatabaseImpl.testConnection(DatabaseImpl.java:7960) at com.pegarules.generated.activity.ra_action_testdbconnection_09a507fa3deb13293af8c09798867520.step3_circum0
Pegasystems Inc.
US
If you turn on the debug log: com.pega.pegarules.data.internal.access.CustomPropertiesHelper, You will see more details regarding why this is failing. Can you do that and attach the debug log?
Accenture Federal Services
US
The only Debug message that came back from CustomPropertiesHelper was:
"started retreiving custom properties from the data page D_VPDInfo which is defined for db"
Adding debug to the last four classes in the stack trace did not return anything of value.
Pegasystems Inc.
US
including this class: com.pega.pegarules.data.internal.access.oracle.SQLGeneratorOracle? If yes, that is the only possible when the retrieved custom properties map is empty. Otherwise, you would see something like this:
Started updating Custom Properties in Session
Accenture Federal Services
US
Yup, there are zero Debug statements returned for SQLGeneratorOracle class. Maybe there is something else the custom properties map is looking for. If you scroll above, I have screen shots of what the D_VPDInfo page looks like when run from the rule form, which is also the exact same as what I see from the tracer when I trace clicking the Test Connection button. I have pyCustomPropertyList.pyName and pyCustomPropertyList.pyValue for sure set.
Pegasystems Inc.
US
followed by 'defined for db', there should be db name defined, can you double check you have followed the pdn article that Srinivas provided?
Accenture Federal Services
US
There is a database name that follows 'defined for db' I just didn't paste that part. I followed the article for everything that needs to be setup in pega and prconfig.xml. We have not yet done anything in oracle. I'm trying to make sure the data page is setup correctly first. It looks like there are 3 seperate scripts that need to be run in Oracle. One that creates a type, one that creates a context, and one that sets a context. Would not running any of those cause any of the two errors I have pasted above?
Accenture Federal Services
US
By the way, Pega Support Request has redirected me back to mesh, saying they do not deal with this kind of issue.
Pegasystems Inc.
US
Let me check, what is the SR#?
Accenture Federal Services
US
Pegasystems Inc.
US
I have requested the engineer to reopen the SR and route it to the queue for further investigation.
Accepted Solution
Pegasystems Inc.
US
We have identified a problem with the Code-Pega-DBApplicationContext class definition. We have an alternative way to define Data Page and can use List of Embed-NameValuePair in Data Page as defined below.
1. Prepare Data Transform