Technote (troubleshooting)
Problem(Abstract)
You cannot refresh a staff query for WebSphere Process Server due to invalid XML format data in the database.
Cause
The log shows XML format data that is invalid because of incomplete XML tags:
<ProcessData>
<typeCode>*******</typeCode>
<name>******</name>
------------------------------------------------------------------------
[12-8-18 1:06:11:930 CST] 000000ec TraceBPE 3
com.ibm.bpe.database.WorkItemManagerImpl.deserializeContext(WorkItemMana
gerImpl.java:4283) <ProcessData>
[12-8-18 1:06:11:930 CST] 000000ec TraceBPE 3
com.ibm.bpe.database.WorkItemManagerImpl.deserializeContext(WorkItemMana
gerImpl.java:4283) <typeCode>****</typeCode>
[12-8-18 1:06:11:930 CST] 000000ec TraceBPE 3
com.ibm.bpe.database.WorkItemManagerImpl.deserializeContext(WorkItemMana
gerImpl.java:4283) <name>*********</name>
[12-8-18 1:06:11:930 CST] 000000ec TraceBPE 3
com.ibm.bpe.database.WorkItemManagerImpl.deserializeContext(WorkItemMana
gerImpl.java:4283) ****:
-----------------------------------------------------------------------
You cannot refresh a staff query successfully because invalid XML format data exists in the database. The BPEDB database log shows that invalid format XML data exists in the Old Instance Data(Completed).
Resolving the problem
To resolve the problem, you can either delete the old data or skip the old data by modifying the data status, as follows:
Delete old data
If you know the old data is not needed, you can delete the data that contains the invalid format, as follows:
- Get the QIID (staff query instance ID) from the trace.
- Using the BFM/HTM API, query for the affected task select clause:
SELECT TKIID from TASK
Where clause: WORK_ITEM.QIID = TASK.ID('<the id>'))
- Restart the task in BPC Explorer.
- Run the cleanupStaffQueryInstances.py script.
Skip old data
To prevent old instance data from being refreshed again, set the EXPIRES field to Null in the BPEDB database using SQL as described in the following steps. This approach makes sure that the staff query refresh skips the old data that contains the invalid XML format and refreshes other items.
- To be able to verify the affected records:
select * from STAFF_QUERY_INSTANCE_T where QIID in (<list of problematic
QIIDs<);
- Modify the EXPIRES field:
update STAFF_QUERY_INSTANCE_T set EXPIRES = NULL where QIID in (<list of
problematic QIIDs>);
Related information
A simplified Chinese translation is available
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.