Technote (troubleshooting)
Problem
When running the database-transfer task, a nullpointer exception is thrown.
ConfigEngine.sh database-transfer -DPortalAdminPwd=<password>
-DWasPassword=<password>
Reviewing the ConfigTrace.log we see the following.
[java] [03/01/11 20:48:18.874 EST] Transferring table --{
RELEASE.WSRP_PROD_LOD}-- to table --{RELEASE.WSRP_PROD_LOD }--
[java] [03/01/11 20:48:18.887 EST] ERROR: Error occurred gathering
data from the source database
[java] java.lang.NullPointerException
[java] at
org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
[java] at
org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
[java] at
org.apache.derby.impl.store.raw.data.BaseDataFileFactory.flush(Unknown
Source)
[java] at
org.apache.derby.impl.store.raw.data.CachedPage.writePage(Unknown
Source)
[java] at
org.apache.derby.impl.store.raw.data.CachedPage.clean(Unknown Source)
[java] at
org.apache.derby.impl.services.cache.CachedItem.clean(Unknown Source)
[java] at
org.apache.derby.impl.services.cache.Clock.rotateClock(Unknown Source)
Symptom
The database-transfer task fails, but some tables are able to transfer after reviewing the ConfigTrace.log.
java] [03/02/11 12:26:07.710 EST] Transferring table --{
RELEASE.ROLE_INST}-- to table --{RELEASE.ROLE_INST }--
[java] [03/02/11 12:26:07.739 EST] Transferring table --{
RELEASE.RES_TYPE}-- to table --{RELEASE.RES_TYPE }--
[java] [03/02/11 12:26:07.766 EST] Transferring table --{
RELEASE.LNK_RES_TYPE_RES}-- to table --{RELEASE.LNK_RES_TYPE_RES }--
[java] [03/02/11 12:26:07.794 EST] Transferring table --{
RELEASE.URL_MAP_CTX}-- to table --{RELEASE.URL_MAP_CTX }--
[java] [03/02/11 12:26:07.813 EST] Transferring table --{
RELEASE.URL_MAP_CTX_LBLS}-- to table --{RELEASE.URL_MAP_CTX_LBLS }--
[java] [03/02/11 12:26:07.821 EST] ERROR: Error occurred gathering
data from the source database
[java] java.lang.NullPointerException
[java] at
org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
[java] at
org.apache.derby.impl.store.raw.log.LogToFile.flush(Unknown Source)
...
Cause
This exception occurs when the user installs Portal as root user, then tries to run the task as a non-root user, but have not properly set up the WebSphere file structure for non-root ownership.
When attempting to do the database-transfer, the task tries to access the release domain dat file for the Derby database (which is part of the WebSphere file system), but due to the lack of permissions, the task fails.
Resolving the problem
Recommended that the user check the database dat files to ensure that the non-root user can access all the log<n>.dat files found at:
/wp_profile/PortalServer/derby/wpsdb/log.
The quick solution would be to chown everything to the non-root user for complete access.
Rate this page:
Copyright and trademark information
IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.