[ 
https://issues.apache.org/jira/browse/XMLBEANS-616?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17566843#comment-17566843
 ] 

PJ Fanning commented on XMLBEANS-616:
-------------------------------------

If I ran into a problem like this, I would warm up the JVM by using the 
XmlBeans code in a single thread before allowing it be used in multiple 
threads. Java class loading can be pretty brittle when you get lots of threads 
trying to load the same classes at the same time. This is one of the reasons 
that I would recommend using the latest Java runtime too.

> is there a dead lock in loading the SOAP Service Concurrently
> -------------------------------------------------------------
>
>                 Key: XMLBEANS-616
>                 URL: https://issues.apache.org/jira/browse/XMLBEANS-616
>             Project: XMLBeans
>          Issue Type: Bug
>            Reporter: yanglinfu
>            Priority: Major
>         Attachments: 007337a1-7e50-40bc-ac1f-d2ebd469f095.png, 1.7z, 
> 2a6c2727-50e1-4ccc-a2f5-33abd746117a.png, 
> 40f87ce3-cbcd-495e-9ce7-0ae861a3bdb7.png, 
> b3d30bc4-a060-419a-b990-503b188fe262.png, image-2022-07-14-09-54-42-466.png, 
> image-2022-07-14-09-55-15-029.png, image-2022-07-14-14-04-52-429.png
>
>
> *i have 10 threads to loading the SOAP Service Concurrently,and i find a dead 
> lock in xmlBeans's some  class loading process.*
> Thread1 info:
> "pool-13-thread-9" #120 prio=5 os_prio=0 tid=0x00002ae578872800 nid=0x19b4 in 
> Object.wait() [0x00002ae5c1814000]
>    java.lang.Thread.State: RUNNABLE
>     at org.apache.xmlbeans.XmlBeans.getNoType(XmlBeans.java:504)
>     at org.apache.xmlbeans.XmlBeans.<clinit>(XmlBeans.java:517)
>     at 
> org.apache.xmlbeans.impl.schema.XmlObjectFactory.<init>(XmlObjectFactory.java:41)
>     at org.apache.xmlbeans.XmlObject.<clinit>(XmlObject.java:128)
>     at sun.misc.Unsafe.ensureClassInitialized(Native Method)
>     at 
> sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:43)
>     at 
> sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:156)
>     at java.lang.reflect.Field.acquireFieldAccessor(Field.java:1088)
>     at java.lang.reflect.Field.getFieldAccessor(Field.java:1069)
>     at java.lang.reflect.Field.get(Field.java:393)
>  
> Thread2 info :
> "pool-13-thread-1" #112 prio=5 os_prio=0 tid=0x00002ae578861800 nid=0x19ab in 
> Object.wait() [0x00002ae5c100c000]
>    java.lang.Thread.State: RUNNABLE
>     at 
> org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.<clinit>(SchemaTypeLoaderBase.java:38)
>     at 
> com.***.***.service.QueryRecommendOfferingsReqMsgDocument.<clinit>(QueryRecommendOfferingsReqMsgDocument.java:23)
>     at sun.misc.Unsafe.ensureClassInitialized(Native Method)
>     at 
> sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:43)
>     at 
> sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:156)
>     at java.lang.reflect.Field.acquireFieldAccessor(Field.java:1088)
>     at java.lang.reflect.Field.getFieldAccessor(Field.java:1069)
>     at java.lang.reflect.Field.get(Field.java:393)
>  
> *xmlBeans code analyze*
> 1.the object XmlBeans init is waiting for BuiltinSchemaTypeSystem  inited
> !007337a1-7e50-40bc-ac1f-d2ebd469f095.png!
> 2. BuiltinSchemaTypeSystem  is the sub class of SchemaTypeLoaderBase ,so  
> BuiltinSchemaTypeSystem is inited after SchemaTypeLoaderBase ;
> !b3d30bc4-a060-419a-b990-503b188fe262.png!
> 3. SchemaTypeLoaderBase init is need XmlBeans init in line 38;
>  
> !2a6c2727-50e1-4ccc-a2f5-33abd746117a.png!
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org

Reply via email to