GitHub user selvaganesang opened a pull request:
https://github.com/apache/trafodion/pull/1493
[TRAFODION-2821] Trafodion core code base needs to be thread safe
Java exceptions thrown while calling the java methods from JNI in
Trafodion are stored in the current context. However in a multi-threaded
ESP environment, these exceptions should be stored in thread specific
variable to enable error handling to be thread safe. Otherwise, the JNI
errors could be overwritten by the JNI errors from another thread.
Also streamlined JNI error handling by extending the getExceptionDetails()
methods to log the errors also.
Incorporated error handling in SequenceFileReader JNI methods.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/selvaganesang/trafodion trafodion_2821
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/trafodion/pull/1493.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1493
----
commit 073cf68dd4d3151b3a727ece2ebefeba2d8775b0
Author: selvaganesang <selva.govindarajan@...>
Date: 2018-03-22T04:48:01Z
[TRAFODION-2821] Trafodion core code base needs to be thread safe
Java exceptions thrown while calling the java methods from JNI in
Trafodion are stored in the current context. However in a multi-threaded
ESP environment, these exceptions should be stored in thread specific
variable to enable error handling to be thread safe. Otherwise, the JNI
errors could be overwritten by the JNI errors from another thread.
Also streamlined JNI error handling by extending the getExceptionDetails()
methods to log the errors also.
Incorporated error handling in SequenceFileReader JNI methods.
----
---