Re: How to identify server client requester in the Oracle 12.2.x

From: Priit Piipuu <priit.piipuu_at_gmail.com>
Date: Sun, 11 Jul 2021 16:45:57 +0200
Message-ID: <CAJYY02he0z74Oa3AJs7XNpVUsX2AwXz1jZDzyiNe+Vfq5YSqjQ_at_mail.gmail.com>



On Sun, 11 Jul 2021 at 01:13, Eriovaldo Andrietta <ecandrietta_at_gmail.com> wrote:

>
> The Java application shows that it is waiting for the data
>
>
Does it mean threads are waiting on sun.nio.ch.SocketDispatcher.read0 method or somesuch? Do the waits resolve by itself after some time, in less than 127s? We had a rather interesting case of a packet loss somewhere in the network, which showed up as an extra latency, but only on the application side.

If application thread is idle, or doing something else, then it sounds like a bug in the app.

> If yes, can I use this data to inform the application team to locate
> the jboss stack at the client application server ?
>

This depends on OS. For example, in Linux file descriptor table is per process, so to correlate socet with native thread using it, application team needs strace. (Haven't tried it, but in theory this should be possible ;) ) Much easier would be to ask developers to set Java thread id with DBMS_APPLICATION_INFO.
> Is there a way to locate the another session used by the Application
> in the database ?
>

Without additional instrumentation, no. If the issue is reproducible in non-production environments you could try with small number of sessions. Tracking, say, 4 sessions is much easier than tracking 200.

--
http://www.freelists.org/webpage/oracle-l
Received on Sun Jul 11 2021 - 16:45:57 CEST

Original text of this message