Sunday, September 6, 2009

ExecuteEmptyRowSet and Range Paging. (Fixed in 11.1.2)

As andrejus showed you can reduce the time loading a page by executing Empty row set before page opens.

Yet this does not combine with Range Paging since getEstimatedRowCount give result in an empty row set when Range paging is used.

To test that i created an Employees view object and a method in application module that executes empty row set and estimate row count:

public long emptyRowSetCount(){
return getEmployeesView1().getEstimatedRowCount();

this return 0 in default view object.

but if i set Employees view object Access Mode = Range paging then the method return the count of rows of the database.

The getFetchedRowCount return 0 in both cases but this is not exposed in the bindings and on the pages we usually use #{bindings.EmployeesView1Iterator.estimatedRowCount}.

In ViewObjectImpl java doc, the method executeEmptyRowSet does not have any comments, so its not clear what it does.

So i wander if this is an issue of executeEmptyRowSet or getEstimatedRowCount or Range Paging...

Test Case:
Not Reproduced in jdeveloper 11.1.2


  1. Filed bug# 8890936 for investigation.

  2. Bug is reported as fixed for version yet it is not on