'E2E_CONTEXT namespace used in setClientInfo in Oracle's implementation of the JDBC 4.1 standard

What does the E2E_CONTEXT namespace in Oracle's implementation of the JDBC 4.1 standard mean? Where is it defined? Where can I find all defined namespaces? Can I define my own namespaces and if so, how?



Solution 1:[1]

The namespace E2E_CONTEXT is now internal to Oracle and shouldn't be used. It was created to support end-to-end tracing but was quickly replaced by the more complete OCSID namespace which can be used to set the following attributes:

  • ACTION
  • MODULE
  • CLIENTID
  • ECID
  • DBOP

using the JDBC standard setClientInfo method. These attributes are then propagated to views like V$MYSTAT, V$SESSION, V$SQL, etc. There is another built-in namespace called CLIENTCONTEXT that can be used to store custom key value pairs (see example below).

You can't use your own namespace through Oracle JDBC.

con.setClientInfo('OCSID.CLIENTID','my Client ID');
con.setClientInfo('OCSID.MODULE','my Module');
con.setClientInfo('OCSID.ACTION','my Action');
con.setClientInfo('CLIENTCONTEXT.MyKey', 'MyValue);

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1