Bug 1461816

Summary: ISE 500 when fill form for searching and click to next page
Product: Red Hat Satellite 5 Reporter: Pavel Studeník <pstudeni>
Component: ServerAssignee: Tomáš Kašpárek <tkasparek>
Status: CLOSED ERRATA QA Contact: Lukáš Hellebrandt <lhellebr>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 580CC: jdobes, lhellebr, tlestach
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: spacewalk-java-2.5.14-96-sat Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-10-19 11:57:19 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1450111    

Description Pavel Studeník 2017-06-15 11:46:20 UTC
Description of problem:
I filled form for searching to filter list of records (kickstarts, activation key) on WebUi and I clicked to next page (paginator). If one record exists (less items then records per page) then I received Internal Server Error.
It is not regression. Same problem I found on Satellite 5.7

Problematic pages:

* /rhn/kickstart/KickstartOverview.do
* /rhn/activationkeys/List.do
* /rhn/errata/RelevantErrata.do 

Version-Release number of selected component (if applicable):
spacewalk-java-2.5.14-89.el6sat.noarch

How reproducible:
always

Steps to Reproduce:
1. go to page /rhn/kickstart/Kickstarts.do
2. fill form for searching and click to next page (record has to exist at least once)
3. ISE 500

Actual results:
ISE 500

Expected results:
No ISE 500

Additional info:
>> /var/log/tomcat6/catalina.out
2017-06-15 14:33:23,693 [TP-Processor12] ERROR com.redhat.rhn.frontend.servlets.SessionFilter - Error during transaction. Rolling back
java.lang.IndexOutOfBoundsException: toIndex = 25
	at java.util.ArrayList.subListRangeCheck(ArrayList.java:1015)
	at java.util.ArrayList.subList(ArrayList.java:1007)
	at com.redhat.rhn.frontend.taglibs.list.DataSetManipulator.getPageStartIndex(DataSetManipulator.java:169)
	at com.redhat.rhn.frontend.taglibs.list.DataSetManipulator.getPaginationMessage(DataSetManipulator.java:216)
	at com.redhat.rhn.frontend.taglibs.list.ListTag.renderTopPaginationControls(ListTag.java:1045)
	at com.redhat.rhn.frontend.taglibs.list.ListTag.doAfterBodyRenderTopAddons(ListTag.java:429)
	at com.redhat.rhn.frontend.taglibs.list.ListTag.doAfterBody(ListTag.java:773)
	at org.apache.jsp.WEB_002dINF.pages.kickstart.kickstarts_jsp._jspx_meth_rl_005flist_005f0(Unknown Source)
	at org.apache.jsp.WEB_002dINF.pages.kickstart.kickstarts_jsp._jspx_meth_rl_005flistset_005f0(Unknown Source)
	at org.apache.jsp.WEB_002dINF.pages.kickstart.kickstarts_jsp._jspx_meth_html_005fhtml_005f0(Unknown Source)
	at org.apache.jsp.WEB_002dINF.pages.kickstart.kickstarts_jsp._jspService(Unknown Source)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)

Comment 1 Pavel Studeník 2017-06-15 11:59:21 UTC
Next pages:

 * /rhn/systems/SystemList.do
 * /rhn/schedule/FailedActions.do
 * ...

I suppose that most searching forms cause this problem.

Comment 3 Pavel Studeník 2017-06-21 11:37:33 UTC
I meant page only with list of records and filter field - list of kickstarts is on page /rhn/kickstart/Kickstarts.do, not on /rhn/kickstart/KickstartOverview.do

Comment 4 Tomáš Kašpárek 2017-08-21 11:14:02 UTC
spacewalk.git(master): df870057b7a5b7ec4a910e9b48cd81e93ab6455c

Comment 7 Lukáš Hellebrandt 2017-09-13 11:00:02 UTC
Verified with spacewalk-java-2.5.14-97 on EmbPostgre and ExtOracle.

The ISE does not appear anymore and listing starts with the first page.

Note: to reproduce the bug, just enter the filter text but do not confirm (click or enter) it! After inserting the text, just click "next" right away. You need to have more than max_page_length entries for the button to appear (but less than one page after filtering to get ISE).

Comment 9 errata-xmlrpc 2017-10-19 11:57:19 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2017:2915