https://bz.apache.org/bugzilla/show_bug.cgi?id=68558

--- Comment #6 from John Engebretson <jeng...@amazon.com> ---
Thank you for the quick turnaround!  Additional data:

Referring to #1:
> getMethod() is already effectively cached due to use of 
> MessageBytes.toStringType()

Our data is clear that this is re-parsing each time.  The call occurs at the
beginning of each JSP at the very beginning of the generated _jspService()
method:

final java.lang.String _jspx_method = request.getMethod();


Referring to #2: the code triggering this is below.  I can't clearly determine
whether the slow enum comes from request.getHeaders() or
request.getHeaderNames().

HttpServletRequest request = context.getRequest();
Enumeration<String> nameEnum = request.getHeaderNames();
while (nameEnum.hasMoreElements()) {
  String name = nameEnum.nextElement();
  List<String> headerValues = new LinkedList<String>();

  Enumeration<String> valueEnum = request.getHeaders(name);
  while (valueEnum.hasMoreElements()) {
    headerValues.add(valueEnum.nextElement());
  }

  headerMap.put(name, Collections.unmodifiableList(headerValues));
}

Referring to #3:
> Cannot reproduce.
I don't immediately see another trigger for this case, but will keep looking. 
The behavior occurs throughout our app but I'll also compare with some others.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to