You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by cw...@apache.org on 2009/01/27 21:11:22 UTC
svn commit: r738215 - in
/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae:
UimaAsThreadFactory.java
controller/PrimitiveAnalysisEngineController_impl.java
Author: cwiklik
Date: Tue Jan 27 20:11:22 2009
New Revision: 738215
URL: http://svn.apache.org/viewvc?rev=738215&view=rev
Log:
UIMA-1279 Fixes hangs in client when handling errors during a deployment of synch aggregate that uses jms service descriptor
Modified:
incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/UimaAsThreadFactory.java
incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/PrimitiveAnalysisEngineController_impl.java
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/UimaAsThreadFactory.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/UimaAsThreadFactory.java?rev=738215&r1=738214&r2=738215&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/UimaAsThreadFactory.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/UimaAsThreadFactory.java Tue Jan 27 20:11:22 2009
@@ -68,6 +68,7 @@
} catch( Exception e) {
e.printStackTrace();
+ return;
}
// Call given Worker (Runnable) run() method and block. This call block until the
// TaskExecutor is terminated.
Modified: incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/PrimitiveAnalysisEngineController_impl.java
URL: http://svn.apache.org/viewvc/incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/PrimitiveAnalysisEngineController_impl.java?rev=738215&r1=738214&r2=738215&view=diff
==============================================================================
--- incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/PrimitiveAnalysisEngineController_impl.java (original)
+++ incubator/uima/sandbox/trunk/uima-as/uimaj-as-core/src/main/java/org/apache/uima/aae/controller/PrimitiveAnalysisEngineController_impl.java Tue Jan 27 20:11:22 2009
@@ -124,35 +124,35 @@
// Parse the descriptor in the calling thread.
try {
rSpecifier = UimaClassFactory.produceResourceSpecifier(super.aeDescriptor);
+ synchronized( mux ) {
+ AnalysisEngine ae = UIMAFramework.produceAnalysisEngine(rSpecifier, paramsMap);
+ System.out.println(">>>>> Controller:"+getComponentName()+" Completed Initialization of New AE Instance In Thread::"+Thread.currentThread().getId()+" AE Instance Hashcode:"+ae.hashCode());
+ if ( aeInstancePool == null ) {
+ aeInstancePool = new AnalysisEngineInstancePoolWithThreadAffinity(analysisEnginePoolSize);
+ }
+ if ( analysisEngineMetadata == null ) {
+ analysisEngineMetadata = ae.getAnalysisEngineMetaData();
+ }
+ aeInstancePool.checkin(ae);
+ if ( aeInstancePool.size() == analysisEnginePoolSize ) {
+ try {
+ System.out.println("Controller:"+getComponentName()+ " All AE Instances Have Been Instantiated. Completing Initialization");
+ postInitialize();
+ } catch ( Exception e) {
+ e.printStackTrace();
+ throw new ResourceInitializationException(e);
+ }
+ }
+ }
+
} catch ( Exception e) {
e.printStackTrace();
+ if ( isTopLevelComponent() ) {
+ super.notifyListenersWithInitializationStatus(e);
+ }
throw new ResourceInitializationException(e);
}
- synchronized( mux ) {
- AnalysisEngine ae = UIMAFramework.produceAnalysisEngine(rSpecifier, paramsMap);
- System.out.println(">>>>> Controller:"+getComponentName()+" Completed Initialization of New AE Instance In Thread::"+Thread.currentThread().getId()+" AE Instance Hashcode:"+ae.hashCode());
- if ( aeInstancePool == null ) {
- aeInstancePool = new AnalysisEngineInstancePoolWithThreadAffinity(analysisEnginePoolSize);
- }
- if ( analysisEngineMetadata == null ) {
- analysisEngineMetadata = ae.getAnalysisEngineMetaData();
- }
- try {
- aeInstancePool.checkin(ae);
- } catch( Exception e) {
- throw new ResourceInitializationException(e);
- }
- if ( aeInstancePool.size() == analysisEnginePoolSize ) {
- try {
- System.out.println("Controller:"+getComponentName()+ " All AE Instances Have Been Instantiated. Completing Initialization");
- postInitialize();
- } catch ( Exception e) {
- e.printStackTrace();
- throw new ResourceInitializationException(e);
- }
- }
- }
}
public boolean threadAssignedToAE() {
if ( aeInstancePool == null ) {