APAR status
Closed as program error.
Error description
In migrated systems entries for both "user DN" and "VMM external ID" of the same user might exist. The entry created for the "VMM external ID" should take precedence. The duplicate entries themselves do not constitute a failure of migration. However, the current implementation does not tolerate duplicate values and throws the following exception, logged to SystemOut.log as: [1/1/10 23:59:59:999 GMT] 00000010 DefaultVault E com.ibm.wps.services.credentialvault.DefaultVault getCredential EJPSJ0006E: SQL Exception occurred when trying to retrieve a credential. com.ibm.wps.util.DataBackendException: EJPDB0038E: Multiple values were returned. at com.ibm.wps.datastore.impl.ResourcePersister .findSingleObject(ResourcePersister.java:1294) at com.ibm.wps.datastore.impl.VaultDataPersister .findByResourceAndDN(VaultDataPersister.java:61) at com.ibm.wps.datastore.impl.VaultDataHomeImpl .findByResourceAndDN(VaultDataHomeImpl.java:49) at com.ibm.wps.services.credentialvault.DefaultVault .getCredential(DefaultVault.java:530) at com.ibm.wps.services.credentialvault.VaultAdapterProxy .getCredential(VaultAdapterProxy.java:101) at com.ibm.wps.services.credentialvault.VaultServiceImpl .getCredential(VaultServiceImpl.java:1777) at com.ibm.wps.services.credentialvault.Vault .getCredential(Vault.java:510) at com.ibm.wps.services.credentialvault.VaultServiceImpl .getCredential(VaultServiceImpl.java:2710) at com.ibm.wps.services.credentialvault.Vault .getCredential(Vault.java:639) at com.ibm.wps.command.credentialvault.RetrieveCredentialCommand .execute(RetrieveCredentialCommand.java:79) at com.ibm.wps.sso.credentialvault .CredentialVaultServiceProvider._getCredential(CredentialVaultSe rviceProvider.java:636) at com.ibm.wps.sso.credentialvault .CredentialVaultServiceProvider.getCredential(CredentialVaultSer viceProvider.java:516) [...] The result is that access to the credential is not possible.
Local fix
Problem summary
In migrated systems entries for both "user DN" and "VMM external ID" of the same user might exist. The entry created for the "VMM external ID" should take precedence. The duplicate entries themselves do not constitute a failure of migration. However, the current implementation does not tolerate duplicate values and throws the following exception, logged to SystemOut.log as: [1/1/10 23:59:59:999 GMT] 00000010 DefaultVault E com.ibm.wps.services.credentialvault.DefaultVault getCredential EJPSJ0006E: SQL Exception occurred when trying to retrieve a credential. com.ibm.wps.util.DataBackendException: EJPDB0038E: Multiple values were returned. at com.ibm.wps.datastore.impl.ResourcePersister.findSingleObject(Re sourcePersister.java:1294) at com.ibm.wps.datastore.impl.VaultDataPersister.findByResourceAndD N(VaultDataPersister.java:61) at com.ibm.wps.datastore.impl.VaultDataHomeImpl.findByResourceAndDN (VaultDataHomeImpl.java:49) at com.ibm.wps.services.credentialvault.DefaultVault.getCredential( DefaultVault.java:530) at com.ibm.wps.services.credentialvault.VaultAdapterProxy.getCreden tial(VaultAdapterProxy.java:101) at com.ibm.wps.services.credentialvault.VaultServiceImpl.getCredent ial(VaultServiceImpl.java:1777) at com.ibm.wps.services.credentialvault.Vault.getCredential(Vault.j ava:510) at com.ibm.wps.services.credentialvault.VaultServiceImpl.getCredent ial(VaultServiceImpl.java:2710) at com.ibm.wps.services.credentialvault.Vault.getCredential(Vault.j ava:639) at com.ibm.wps.command.credentialvault.RetrieveCredentialCommand.ex ecute(RetrieveCredentialCommand.java:79) at com.ibm.wps.sso.credentialvault.CredentialVaultServiceProvider._ getCredential(CredentialVaultServiceProvider.java:636) at com.ibm.wps.sso.credentialvault.CredentialVaultServiceProvider.g etCredential(CredentialVaultServiceProvider.java:516) [...] The result is that access to the credential is not possible.
Problem conclusion
Modified the database access layer to be more robust and handle duplicate credential vault data correctly. Failing Module(s): Database Affected Users: All users Version Information: Portal Version(s): 6.1.0.3, 6.1.0.4 Pre-Requisite(s): --- Co-Requisite(s): --- Manuel Steps: After application of the APAR follow these steps to clean up the database: 1 - Start WebSphere Portal 2 - Export credentials using ExportVault.xml and the instructions given on Information Center page http://publib.boulder.ibm.com/infocenter/wpdoc/v6r1/topic/com.ib m.wp.ent.doc_v6101/migrate/mig_sec_roles_vault_xml.html 3 - Stop WebSphere Portal 4 - Create a backup of the WebSphere Portal database 5 - Connect to the database and clear these four tables: a - <release>.VAULT_DATA b - <community>.VAULT_DATA c - <customization>.VAULT_DATA d - <jcr>.VAULT_DATA where the schema names have to be replaced by the actual names defined in "wkplc_comp.properties" (see values of release.DbSchema, community.DbSchema, etc.) 6 - Start WebSphere Portal 7 - Import credentials exported in step #2 Platform Specific: This fix applies to all platforms. PM18218 is part of Cumulative Fix 07 for Portal 6.1.0.3 / 6.1.5.0: http://www.ibm.com/eserver/support/fixes/fixcentral/swgquickorde r?apar=PM18585&productid=WebSphere%20Portal&brandid=5 and also part of Cumulative Fix 07 for Portal 6.1.0.4 / 6.1.5.1: http://www.ibm.com/eserver/support/fixes/fixcentral/swgquickorde r?apar=PM18610&productid=WebSphere%20Portal&brandid=5 You may need to type or paste the complete address into your Web browser.
Temporary fix
Comments
APAR Information
APAR number
PM18218
Reported component name
PORTAL ISERIES
Reported component ID
5724E7611
Reported release
61C
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2010-07-13
Closed date
2010-08-30
Last modified date
2010-08-30
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
PORTAL ISERIES
Fixed component ID
5724E7611
Applicable component levels
R615 PSY
UP
R61C PSY
UP
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSHRKX","label":"WebSphere Portal"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.1.0.3","Line of Business":{"code":"LOB31","label":"WCE Watson Marketing and Commerce"}}]
Document Information
Modified date:
21 December 2021