Products | Versions |
---|---|
TIBCO BusinessEvents Enterprise Edition | - |
Not Applicable | - |
Resolution:
Description:
===========
Empty array string values get lost when restarting TIBCO BusinessEvents application using Oracle backingstore.
Environment:
===========
TIBCO BusinessEvents 4.n/5.n - Oracle Backingstore
All Operating Systems
Symptoms:
=========
After restart the number of array elements is smaller than before (empty values not restored).
Example:
String array property for concept cp1 with null values. The null values are available before restart the TIBCO BusinessEvents application. After restart null values missing (array length has been changed).
Serialized before restart (### array length=2):
<ns0:cp1 xmlns:ns0="www.tibco.com/be/ontology/Concepts/cp1<http://www.tibco.com/be/ontology/Concepts/cp1>" Id="1" extId="testsupport">
<stringArray/>
<stringArray>value2</stringArray>
<valueA>valueA</valueA>
</ns0:cp1>
Serialized after restart (### array length=1):
<ns0:cp1 xmlns:ns0="www.tibco.com/be/ontology/Concepts/cp1<http://www.tibco.com/be/ontology/Concepts/cp1>" Id="1" extId="testsupport">
<stringArray>value2</stringArray>
<valueA>valueA</valueA>
</ns0:cp1>
Cause:
======
Oracle does not distinguish between a null string and a string with zero length. They are both stored as null in the db.
Resolution:
========
As a workaround use a special keyword (e.g., “null”) instead of “” .
NOTE:
CR BE-17544 created for the issue