JSP Fails with One of a Number of Exceptions (Including "Protocol violation", "Closed Connection", and "Must be logged on to server") when Transaction Rate Is High (Doc ID 1112963.1)

Last updated on AUGUST 03, 2016

Applies to:

JDBC - Version 9.2.0.6 to 11.2.0.1 [Release 9.2 to 11.2]
Information in this document applies to any platform.

Symptoms

A JSP that processes orders runs on Apache JServ and connects to a version 10.2.0.4 database via JDBC/Thin 9.2.0.6.

The JSP processes an order by calling a PL/SQL procedure to query an order, do calculations, and output information for that order.

In both the production and test environments, when the rate of order processing is high, intermittently and at random the processing of an order fails. When the processing of an order fails one of a number of different exceptions occurs.

In the production environment the issue occurs only when there are many users. When the issue occurs the application of which the JSP is a component "locks up".

In the test environment Apache JMeter is used to achieve the high order processing rate (for example, 10 orders in 20 seconds) needed to reproduce the issue.

In the test environment, the exception that occurs when the processing of an order fails is one of six different exceptions. These exceptions are:

     java.sql.SQLException: Protocol violation
     java.sql.SQLException: Must be logged on to server
     java.sql.SQLException: Invalid column index
     java.sql.SQLException: Internal error: Invalid index for data access
     java.lang.NullPointerException
     java.sql.SQLException: Closed Connection

What is common to all the exceptions is that the JSP appears to be "confused" about what it is working with.

For example, for the "Must be logged on to server" and "Closed Connection", and "Protocol violation", it appears that JDBC is "confused" about what connection it's using - expecting to be working with a valid connection and finding that it's not logged on, that the connection is closed, or that there's something wrong with the connection.

The issue does not occur when the order processing rate is low (examples: 1 order in 1 minute, 10 orders in 1 minute).

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms