Hitachi

uCosminexus Application Server Expansion Guide


6.4.6 Operations performed when a failure occurs during global session information operation

This section describes the operations performed when a failure occurs during global session information operations. This section describes the points of failure, state of session, impact on other requests, and output messages for every operation of global session information.

Organization of this subsection

(1) Operations performed when a failure occurs while creating global session information

This subsection describes the operations performed when a J2EE server failure or database failure occurs while creating global session information.

The following figure shows the flow of processing for creating global session information and points of failure.

Figure 6‒8: Flow of processing of creating global session information and points of failure

[Figure]

In the description below, numbers (failure points of the J2EE server) and alphabets (failure points of the database) in the figure are mapped with numbers or alphabets of failure points in the table.

(a) Operations performed when a failure occurs on a J2EE server (process down)

The following table describes the operations performed when a J2EE server failure occurs and process goes down while creating global session information.

Table 6‒16: Operations performed when a failure occurs on a J2EE server (process down)

Failure point

State of session

Impact on other requests

HTTP session on J2EE server

Global session information

1

Not created

Not created

None

2

Not created

Not created (rolled back)#1

You cannot newly create all HTTP sessions until the database detects client connection

3

Not created

Created#2

None

4

Disappears due to process down

Created#2

None

#1

SQLException occurs and rolls back to the state before receiving the request.

#2

You cannot inherit global session information in this state. If validity expires, validity monitoring deletes the session information.

(b) Operations performed when a failure occurs in a database (if SQLException occurs)

The following table describes the operations performed when a database failure occurs and SQLException occurs while creating global session information. Operations vary when integrity mode is enabled and disabled.

Table 6‒17: Operations performed when a database fails and SQLException occurs (when integrity mode is disabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Reduced and created#1

Not created

None

Ends successfully

KDJE34368-W

B - F

Reduced and created#1

Not created (rolled back)#2

None

Ends successfully

KDJE34368-W

G

--

--

--

--

--

H

--

--

--

--

--

Legend:

--: Not applicable

#1

The reduced HTTP session is updated in the database in the processing of updating global session information at the time of receiving a request for the next time.

#2

SQLException occurs and rolls back to the state before receiving the request.

Table 6‒18: Operations performed when a database failure and SQLException occurs (when integrity mode is enabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Not created

Not created

None

An exception occurs while acquiring HTTP session#1

KDJE34314-W

B - F

Not created

Not created (rolled back)#2

None

An exception occurs while acquiring HTTP session#1

KDJE34312-W

G

Not created

Created#3

None

An exception occurs while acquiring HTTP session#1

KDJE34312-W

H

Not created (deleted)

Created#3

None

--

KDJE34312-W

Legend:

--: Not applicable

#1

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the getSession method in the javax.servlet.http.HttpServletRequest interface in case of Servlet and before executing user code in the case of JSP.

#2

SQLException occurs and rolls back to the state before receiving the request.

#3

You cannot inherit global session information in this state. If validity expires, validity monitoring deletes the session information.

(c) Operations performed when a failure occurs in a database (when a database is not responding or slows down)

The following table describes the operations performed when a database failure occurs, and the database is not responding or slows down while creating global session information. Operations vary when integrity mode is enabled and disabled.

Table 6‒19: Operations performed when a database failure occurs and the database is not responding or slows down (when integrity mode is disabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Reduced and created#1

Not created

None

Ends successfully

KDJE34368-W

B - F

Reduced and created#1

Not created (rolled back)#2

You cannot newly create all HTTP sessions until a timeout occurs by waiting for lock release.

Ends successfully

KDJE34368-W

G

--

--

--

--

--

H

--

--

--

--

--

Legend:

--: Not applicable

#1

The reduced HTTP session is updated in the database in the processing of updating global session information at the time of receiving a request for the next time.

#2

A timeout occurs because of waiting for database lock release and the state rolls back to the state before receiving the request.

Table 6‒20: Operations performed when a database failure occurs and the database is not responding or slows down (when integrity mode is enabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Not created

Not created

None

An exception occurs while acquiring HTTP session#1

KDJE34314-W

B - F

Not created

Not created (rolled back)#2

You cannot newly create all HTTP sessions until a timeout occurs by waiting for lock release.

An exception occurs while acquiring HTTP session#1

KDJE34312-W

G

Not created

Created#3

None

An exception occurs while acquiring HTTP session#1

KDJE34312-W

H

Not created (deleted)

Created#3

None

--

KDJE34312-W

Legend:

--: Not applicable

#1

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the getSession method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and before executing user code in the case of JSP.

#2

A timeout occurs because of waiting for database unlocking and rolls back to the state before receiving the request.

#3

You cannot inherit global session information in this state. If validity expires, validity monitoring deletes the session information.

(2) Operations performed when a failure occurs while updating global session information

This subsection describes the operations performed when a J2EE server failure or database failure occurs while updating global session information.

The following figure shows the flow of processing of updating global session information and points of failure.

Figure 6‒9: Flow of processing of updating global session information and points of failure

[Figure]

(a) Operations performed when a failure occurs on a J2EE server (process down)

The following table describes the operations performed when a J2EE server failure occurs and a process goes down while updating global session information.

Table 6‒21: Operations performed when a failure occurs on a J2EE server (process down)

Failure point

State of session

Impact on other requests

HTTP session on J2EE server

Global session information

1

Disappears due to process down

Not updated

None

2

Disappears due to process down

Not updated (rolled back)#

You cannot perform operations of the relevant HTTP sessions until the database detects client connection

3

Disappears due to process down

Not updated (rolled back)#

You cannot perform operations of the relevant HTTP sessions until the database detects client connection

4

Disappears due to process down

Not updated (rolled back)#

You cannot perform operations of the relevant HTTP sessions until the database detects client connection

#

SQLException occurs and rolls back to the state before receiving the request.

(b) Operations performed when a failure occurs in a database (if SQLException occurs)

The following table describes the operations performed when a database failure occurs and SQLException occurs while updating global session information. Operations vary when integrity mode is enabled and disabled.

Table 6‒22: Operations performed when a database failure and SQLException occurs (when integrity mode is disabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Reduced and updated#

Not updated

None

Ends successfully

KDJE34368-W

B

--

--

--

--

--

C

Reduced and updated#

Not updated

None

--

KDJE34368-W

D

--

--

--

--

--

Legend:

--: Not applicable

#

The reduced HTTP session is updated in the database in the process of updating global session information at the time of receiving a request for the next time.

Table 6‒23: Operations performed when a database failure and SQLException occurs (when integrity mode is enabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Not updated

Not updated

None

An exception occurs while acquiring HTTP session#1

KDJE34314-W

B

Not updated (deleted)

Not updated (rolled back)#2

None

An exception occurs while acquiring HTTP session#1

KDJE34312-W

C

Not updated (deleted)

Not updated (rolled back)#2

None

--

KDJE34312-W

D

Not updated (deleted)

Not updated (rolled back)#2

None

--

KDJE34312-W

Legend:

--: Not applicable

#1

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the getSession method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and before executing user code in the case of JSP.

#2

SQLException occurs and rolls back to the state before receiving the request.

(c) Operations performed when a failure occurs in a database (when database is not responding or slows down)

The following table describes the operations performed when a database failure occurs, and the database is not responding or slows down while updating global session information. Operations vary when integrity mode is enabled and disabled.

Table 6‒24: Operations performed when a database failure occurs and the database not responding or slows down (when integrity mode is disabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Reduced and updated#1

Not updated

None

Ends successfully

KDJE34368-W

B

--

--

--

--

--

C

Reduced and updated#1

Not updated (rolled back)#2

You cannot perform operations of the relevant HTTP sessions until a timeout occurs by waiting for lock release

--

KDJE34368-W

D

--

--

--

--

--

Legend:

--: Not applicable

#1

Reduced HTTP session is updated in the database in the processing of updating global session information at the time of receiving a request for the next time.

#2

A timeout occurs because of waiting for database unlocking and rolls back to the state before receiving the request.

Table 6‒25: Operations performed when a database failure occurs and the database is not responding or slows down (when integrity mode is enabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Not updated

Not updated

None

An exception occurs while acquiring HTTP session#1

KDJE34314-W

B

Not updated (deleted)

Not updated (rolled back)#2

You cannot perform operations of the relevant HTTP sessions until a timeout occurs by waiting for lock release

An exception occurs while acquiring HTTP session#1

KDJE34312-W

C

Not updated (deleted)

Not updated (rolled back)#2

You cannot perform operations of the relevant HTTP sessions until a timeout occurs by waiting for lock release

--

KDJE34312-W

D

Not updated (deleted)

Not updated (rolled back)#2

You cannot perform operations of the relevant HTTP sessions until a timeout occurs by waiting for lock release

--

KDJE34312-W

Legend:

--: Not applicable

#1

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the getSession method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and before executing user code in the case of JSP.

#2

A timeout occurs because of waiting for database lock release and rolls back to the state before receiving the request.

(3) Operations performed when a failure occurs while deleting global session information

This subsection describes the operations performed when a J2EE server failure or database failure occurs while deleting global session information.

The following figure shows the flow of processing of deleting global session information and points of failure.

Figure 6‒10: Flow of processing of deleting global session information and points of failure

[Figure]

(a) Operations performed when a failure occurs on a J2EE server (process down)

The following table describes the operations performed when a J2EE server failure occurs and process goes down while deleting global session information.

Table 6‒26: Operations performed when a failure occurs on a J2EE server (process down)

Failure point

State of session

Impact on other requests

HTTP session on J2EE server

Global session information

1

Disappears due to process down

Not deleted

None

2

Disappears due to process down

Not deleted (rolled back)#

You cannot perform operations of the relevant HTTP sessions until the database detects client connection

3

Disappears due to process down

Not deleted (rolled back)#

You cannot perform operations of the relevant HTTP sessions until the database detects client connection

4

Disappears due to process down

Deleted

None

#

SQLException occurs and rolls back to the state before receiving the request.

(b) Operations performed when a failure occurs in a database (if SQLException occurs)

The following table describes the operations performed when a database failure occurs and SQLException occurs while deleting global session information. Operations vary when integrity mode is enabled and disabled.

Table 6‒27: Operations performed when a database failure and SQLException occurs (when integrity mode is disabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Deleted

Not deleted

None

An exception occurs while acquiring HTTP session#1

KDJE34377-E#2

B

--

--

--

--

--

C - F

Deleted

Not deleted (rolled back)#3

None

An exception occurs when disabling HTTP session#4

KDJE34377-E#2

Legend:

--: Not applicable

#1

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the getSession method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and before executing user code in the case of JSP.

#2:

A message is output only when the first failure occurs. Thereafter, messages are not output for the same failure until you restart the Web application.

#3

SQLException occurs and rolls back to the state before receiving the request.

#4

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the invalidate method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and when invoking the invalidate method of implicit object session in the case of JSP.

Table 6‒28: Operations performed when a database failure and SQLException occurs (when integrity mode is enabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Not deleted

Not deleted

None

An exception occurs while acquiring HTTP session#1

KDJE34314-W

B

Deleted

Not deleted (rolled back)#2

None

An exception occurs while acquiring HTTP session#1

KDJE34312-W

C - F

Deleted

Not deleted (rolled back)#2

None

An exception occurs when disabling HTTP session#3

KDJE34312-W

#1

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the getSession method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and before executing user code in the case of JSP.

#2

SQLException occurs and rolls back to the state before receiving the request.

#3

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the invalidate method in the javax.servlet.http.HttpServletRequest interface in case of Servlet and when invoking the invalidate method of implicit object session in case of JSP.

(c) Operations performed when a failure occurs in a database (when database is not responding or slows down)

The following table describes the operations performed when a database failure occurs, and database is not responding or slows down while deleting global session information. Operations vary when integrity mode is enabled and disabled.

Table 6‒29: Operations performed when a database failure occurs, and database is not responding or slows down (when integrity mode is disabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Deleted

Not deleted

None

An exception occurs while acquiring HTTP session#1

KDJE34377-E#2

B

--

--

--

--

--

C - F

Deleted

Not deleted (rolled back)#3

You cannot perform operations of the relevant HTTP sessions until a timeout occurs by waiting for lock release

An exception occurs when disabling HTTP session#4

KDJE34377-E#2

Legend:

--: Not applicable

#1

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the getSession method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and before executing user code in the case of JSP.

#2:

A message is output only when the first failure occurs. Thereafter, messages are not output for the same failure until you restart the Web application.

#3

A timeout occurs because of waiting for database unlocking and rolls back to the state before receiving the request.

#4

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the invalidate method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and when invoking the invalidate method of implicit object session in the case of JSP.

Table 6‒30: Operations performed when a database failure occurs and the database is not responding or slows down (when integrity mode is enabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Not deleted

Not deleted

None

An exception occurs while acquiring HTTP session#1

KDJE34314-W

B

Deleted

Not deleted (rolled back)#2

You cannot perform operations of the relevant HTTP sessions until a timeout occurs by waiting for lock release

An exception occurs while acquiring HTTP session#1

KDJE34312-W

C - F

Deleted

Not deleted (rolled back)#2

You cannot perform operations of the relevant HTTP sessions until a timeout occurs by waiting for lock release

An exception occurs when disabling HTTP session#3

KDJE34312-W

#1

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the getSession method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and before executing user code in the case of JSP.

#2

A timeout occurs because of waiting for database lock release and the state rolls back to the state before receiving the request.

#3

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the invalidate method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and when invoking the invalidate method of implicit object session in the case of JSP.

(4) Operations performed when a failure occurs while deleting global session information due to expiry of validity

This subsection describes the operations performed when a J2EE server failure or database failure occurs while deleting global session information due to the expiration of validity.

The following figure shows the flow of processing of deleting global session information due to expiry of validity and points of failure.

Figure 6‒11: Flow of processing of deleting global session information due to expiry of validity and points of failure

[Figure]

(a) Operations performed when a failure occurs on a J2EE server (process down)

The following table describes the operations performed when a J2EE server failure occurs and process goes down while deleting global session information due to expiry of validity.

Table 6‒31: Operations performed when a failure occurs on a J2EE server (process down)

Failure point

State of session

Impact on other requests

HTTP session on J2EE server

Global session information

1

Disappears due to process down

Not deleted

None

2 and 3

Disappears due to process down

Not deleted (rolled back)

You cannot perform operations of the relevant HTTP sessions until the database detects client disconnection

(b) Operations performed when a failure occurs in a database (if SQLException occurs)

The following table describes the operations performed when a database failure occurs and SQLException occurs while deleting global session information due to expiry of validity. Operations vary when integrity mode is enabled and disabled.

Table 6‒32: Operations performed when a database failure and SQLException occurs (when integrity mode is disabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

--

--

--

--

--

B - E

Deleted

Not deleted (rolled back)

None

--

KDJE34377-E#

Legend:

--: Not applicable

#

A message is output only when the first failure occurs. Thereafter, messages are not output for the same failure until you restart the Web application.

Table 6‒33: Operations performed when a database failure and SQLException occurs (when integrity mode is enabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Deleted

Not deleted (rolled back)

None

--

KDJE34336-W

B - E

Deleted

Not deleted (rolled back)

None

--

KDJE34312-W

Legend:

--: Not applicable

(c) Operations performed when a failure occurs in a database (when database is not responding or slows down)

The following table describes the operations performed when a database failure occurs and the database is not responding or slows down while deleting global session information due to expiry of validity. Operations vary when integrity mode is enabled and disabled.

Table 6‒34: Operations performed when a database failure occurs and the database is not responding or slows down (when integrity mode is disabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

--

--

--

--

--

B - E

Deleted

Not deleted (rolled back)

You cannot perform operations of the relevant HTTP sessions until a timeout occurs by waiting for lock release

--

KDJE34377-E#

Legend:

--: Not applicable

#

A message is output only when the first failure occurs. Thereafter, messages are not output for the same failure until you restart the Web application.

Table 6‒35: Operations performed when a database failure occurs and the database is not responding or slows down (when integrity mode is enabled)

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

A

Deleted

Not deleted (rolled back)

You cannot perform operations of the relevant HTTP sessions until a timeout occurs by waiting for lock release

--

KDJE34336-W

B - E

Deleted

Not deleted (rolled back)

You cannot perform operations of the relevant HTTP sessions until a timeout occurs by waiting for lock release

--

KDJE34312-W

Legend:

--: Not applicable

(5) Operations performed when a failure occurs while inheriting global session by using global session information

This subsection describes the operations performed when a J2EE server failure or database failure occurs while inheriting global session by using global session information.

The following figure shows the flow of processing of inheriting global session by using global session information and points of failure.

Figure 6‒12: Flow of processing of inheriting global session by using global session information and points of failure

[Figure]

(a) Operations performed when a failure occurs on a J2EE server (process down)

The operations performed when a J2EE server failure occurs and process goes down while inheriting global session by using global session information are the same as when a J2EE server failure occurs while updating global session information.

For details on operations performed when a J2EE failure occurs while updating a global session information, see the operations performed when a J2EE failure occurs described in (2) Operations performed when a failure occurs while updating global session information.

(b) Operations performed when a failure occurs in a database (if SQLException occurs)

The following table describes the operations performed when a database failure occurs and SQLException occurs during C processing in the figure while inheriting a global session by using global session information. The operations performed when a failure occurs during A, B, D, and E processing in the figure are the same as the operations performed when SQLException occurs in a database while updating global session information.

For details on the operations performed when a database failure and SQLException occurs while updating global session information, see the operations performed when a database failure occurs (if SQLException occurs) described in (2) Operations performed when a failure occurs while updating global session information.

Table 6‒36: Operations performed when a database failure and SQLException occurs

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

C

Not inherited

Not inherited

None

An exception occurs while acquiring HTTP session#

KDJE34314-W

#

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the getSession method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and before executing user code in the case of JSP.

(c) Operations performed when a failure occurs in a database (when database is not responding or slows down)

The following table describes the operations performed when a database failure occurs and the database is not responding or slows down during C processing in the figure while inheriting global session by using global session information. The operations performed when a failure occurs during A, B, D, and E processing in the figure are the same as the operations performed when a database is not responding or slows down while updating global session information.

For details on the operations performed when a database failure occurs and the database is not responding or slows down while updating global session information, see the operations performed when a database failure occurs (when database is not responding or slows down) described in (2) Operations performed when a failure occurs while updating global session information.

Table 6‒37: Operations performed when a database failure occurs and the database is not responding or slows down

Failure point

State of session

Impact on other requests

Web application operation

Message

HTTP session on J2EE server

Global session information

C

Not inherited

Not inherited

You cannot perform operations of the relevant HTTP sessions until a timeout occurs by waiting for lock release

An exception occurs while acquiring HTTP session#

KDJE34314-W

#

com.hitachi.software.web.dbsfo.DatabaseAccessException occurs when invoking the getSession method in the javax.servlet.http.HttpServletRequest interface in the case of Servlet and before executing user code in the case of JSP.