We have been having a few issues with FP5 and I just wanted to share our latest one as it is quite interesting and may affect others. It is worth reading this post from Oliver Busse too
HCL support has been very helpful to date. We have more tickets open than we ever did with IBM but hopefully that is because the tickets are actually being taken seriously. HF12 is a Hot Fix that was meant to fix some of our other issues around Full Text Indexing and XPage views in FP5.
I have copied in the report that I made to HCL today.
The Problem Symptoms
The problem occurs in 11.01 FP5 HF12 when a relatively simple XPage displays data from a filtered view with concatenated columns. This is 100% repeatable and is demonstrated below.
The XPage repeats data from the first document in the view instead of showing the contents of the actual documents.
This only occurs for records located further down the view.
The link and image below is FP3 in from a database with 100k records
https://11fp3.focul.net/dev/acmesup596/test_database_view_issue_3.nsf/TestXPage.xsp?field1=Field1_Filter_Value_002100
Below is FP5 ( same DB, same URL, takes a long time to load ) – UPDATE – this link no longer works as this server has been downgraded to FP3. The image is correct though.
https://11fp5hf12.focul.net/dev/acmesup596/test_database_view_issue_3.nsf/TestXPage.xsp?field1=Field1_Filter_Value_002100
- These are replicas of the same application but on two different servers ( FP3 / FP5HF12 ). The URLs are the same
- The problem does not occur in FP3
- The problem does not happen with records from early in the view
- The problem always happens with documents later in the view
- The problem pages take 10x long time to render
Test Application Design
The Form
The form is very simple. It has 5 fields which are simple, single value text fields
Field 1 is a batch number which groups documents in batches of 10
Fields 2,3 are random
Fields 4,5 are unique indexes
The view
The view has columns corresponding to fields 1 → 5
Only the first view is sorted
Columns 2 and 3 are concatenated causing record to display multiple times ( as expected and shown in green below )
The XPage
The XPage uses a repeat and the xp:dominoView data source.
The data source is filtered by the parameter ?field1=Field1_Filter_Value_002100
<?xml version=”1.0″ encoding=”UTF-8″?>
<xp:view xmlns:xp=”http://www.ibm.com/xsp/core”>
<xp:this.data>
<xp:dominoView var=”view1″ viewName=”TestView”
keysExactMatch=”true”>
<xp:this.keys><![CDATA[#{javascript://Get the search filters from the URL parameters
var filter1 = param.get(“field1”) ;
var filter2 = param.get(“field2”) ;
var filter3 = param.get(“field3”) ;
print(“filter1 = ” + filter1) ;
var vtr:java.util.Vector = new java.util.Vector();
if ((filter1 == null || filter1 == “”)) {
//No filter1 set so set a dummy filter so that no documents are returned
vtr.add(“THIS_SHOULD_NOT_EXIST_AS_A_KEY_SO_RETURN_NOTHING_$%^£^£$%££%$%**^%$&^”) ;
} else {
//Set the filters
if (filter1 == null || filter1 == “”) {
vtr.add(“All”) ;
} else {
vtr.add(filter1)
}
if (filter2 == null || filter2 == “”) {
vtr.add(“All”) ;
} else {
vtr.add(filter2)
}
if (filter3 == null || filter3 == “”) {
vtr.add(“All”) ;
} else {
vtr.add(filter3)
}
}
return vtr ;}]]></xp:this.keys>
</xp:dominoView>
</xp:this.data>
<xp:panel style=”margin:20.0px”>
<xp:table>
<xp:tr>
<xp:td>
<b>Field4</b>
</xp:td>
<xp:td>
<b>Field5</b>
</xp:td>
</xp:tr>
<xp:repeat id=”repeat1″ rows=”100″ value=”#{view1}”
indexVar=”idxTest” var=”rowData”>
<xp:tr>
<xp:td>
<xp:text escape=”true” id=”computedField4″>
<xp:this.value><![CDATA[#{javascript:rowData.getColumnValue(“Field4″)}]]></xp:this.value>
</xp:text>
</xp:td>
<xp:td>
<xp:text escape=”true” id=”computedField5″>
<xp:this.value><![CDATA[#{javascript:rowData.getColumnValue(“Field5”)}]]></xp:this.value>
</xp:text>
</xp:td>
</xp:tr>
</xp:repeat>
</xp:table>
</xp:panel>
</xp:view>
Test Database
You can download the test database here
https://s3.eu-west-1.amazonaws.com/focul.bucket1/public_downloads/test_database_view_issue_3_ND.nsf
The agent to create the data
The agent “Create Test Data” will create 100k rows of test data
Actions > Create Test Data
Other Observations
- Display of early rows in the data work fine
https://11fp5hf12.focul.net/dev/acmesup596/test_database_view_issue_3.nsf/TestXPage.xsp?field1=Field1_Filter_Value_001000 - Display of later rows in the data cause issues
https://11fp5hf12.focul.net/dev/acmesup596/test_database_view_issue_3.nsf/TestXPage.xsp?field1=Field1_Filter_Value_002000 - Speed performance is very poor when the broken data is displayed ( @ 10x ) .
Use Case
As a background here is an explanation of the use case. The database is a very minimal design to make it easier to troubleshoot. The rows or documents represent vehicles. The concatenation is used to be able to filter on “all” vehicles as well as yellow vehicles. The batch code represent fleets of vehicles. Using this scheme a dblookup ( Java, Lotusscript, formula ) can be used to get a collection of all vehicles from a fleet or a collection of yellow vehicles for a fleet. It is a very powerful construct.
Impact
The impact is very severe. Applications can no longer be used on FP5HF12 and other serious issues prevent us from using FP4 or FP5