[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17515364#comment-17515364 ] Rama Saravanan commented on AXIS-2909: -- Hi all, Currently I'm facing this issue. In our project we are using axis 1.4 and migrating from old code to spring boot. In maven repo, 1.4.1 is being listed as axis 2. ( org.apache.axis2 axis2 1.4.1 ). We are using axis plugin to generate wsdl files. So we don't really want to change much. Isn't going from axis to axis2 a big change? Please kindly guide me on this. > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:422) > at java.lang.Class.newInstance(Class.java:442) > at > org.apache.axis.encoding.ser.BeanDeserializer.init(BeanDeserializer.java:104) > at > org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) > at > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) > at > org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) > at > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) > at > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) > at > org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1052) > at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown > Source) > at > org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown > Source) > at > org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown > Source) > at >
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17189335#comment-17189335 ] Vasant Shirol commented on AXIS-2909: - [~veithen],[~robertlazarski] After taking correct fix for this ticket, no more I see above mentioned error. > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:422) > at java.lang.Class.newInstance(Class.java:442) > at > org.apache.axis.encoding.ser.BeanDeserializer.init(BeanDeserializer.java:104) > at > org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) > at > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) > at > org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) > at > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) > at > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) > at > org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1052) > at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown > Source) > at > org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown > Source) > at > org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown > Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) > at
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17189084#comment-17189084 ] Vasant Shirol commented on AXIS-2909: - [~veithen], [~robertlazarski] My previous comment about Concurrent modification exception occurs at the time of processing response (deserialization), which is different than what is mentioned in the current ticket description. Below is the stack trace: {code:java} AxisFaultAxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode: faultString: java.util.ConcurrentModificationException faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}hostname:127.0.0.1 java.util.ConcurrentModificationException at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222) at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129) at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1782) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2973) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:648) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:332) at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) at org.apache.axis.Message.getSOAPEnvelope(Message.java:435) at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62) at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) at org.apache.axis.client.Call.invokeEngine(Call.java:2784) at org.apache.axis.client.Call.invoke(Call.java:2767) at org.apache.axis.client.Call.invoke(Call.java:2443) at org.apache.axis.client.Call.invoke(Call.java:2366) at org.apache.axis.client.Call.invoke(Call.java:1812) at com.alcatel.hdm.nbi.notification.service.NotificationEventServiceSoapBindingStub.processDeviceActivationResult(NotificationEventServiceSoapBindingStub.java:1001) at com.alcatel.hdm.nbi.notification.plugin.ReferenceWebservicesPlugin.sendNotification(ReferenceWebservicesPlugin.java:122) at motive.hdm.nbi.notification.plugin.NotificationTask.run(NotificationTask.java:22) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) {code} I could reproduce this in both JDK-1.7 and JDK-1.8 > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17188818#comment-17188818 ] Robert Lazarski commented on AXIS-2909: --- The commit that Andreas made to axis1 in 2015, is slightly different than the code in the patch attached to this issue. Furthermore, we moved to git a few months ago. See the new git and travis links, and the git commit that diff that shows the code in the trunk. git clone [https://github.com/apache/axis-axis1-java.git] git diff 6b6be1b6e5f805cde986b5f8f58cb83749df8211 axis-rt-core/src/main/java/org/apache/axis/description/JavaServiceDesc.java [https://travis-ci.org/github/apache/axis-axis1-java] [~veithen] , do you have a working maven repo version for the emf-maven-plugin? This isn't working anymore? com.github.veithen.cosmos emf-maven-plugin 0.1-SNAPSHOT generate-sources model/axis.genmodel > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:422) > at java.lang.Class.newInstance(Class.java:442) > at > org.apache.axis.encoding.ser.BeanDeserializer.init(BeanDeserializer.java:104) > at > org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) > at > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) > at > org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) > at > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) > at > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) > at > org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1052) > at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown > Source) > at >
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17188732#comment-17188732 ] Vasant Shirol commented on AXIS-2909: - Hi All, I have applied above mentioned patch, but see similar issue at different location/class, below is the error stacktrace (AXIS-2939): {code:java} AxisFaultAxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode: faultString: java.util.ConcurrentModificationException faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}hostname:127.0.0.1 java.util.ConcurrentModificationException at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222) at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129) at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1782) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2967) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:602) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:112) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:842) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:771) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:643) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:327) at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) at org.apache.axis.Message.getSOAPEnvelope(Message.java:435) at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62) at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) at org.apache.axis.client.Call.invokeEngine(Call.java:2784) at org.apache.axis.client.Call.invoke(Call.java:2767) at org.apache.axis.client.Call.invoke(Call.java:2443) at org.apache.axis.client.Call.invoke(Call.java:2366) at org.apache.axis.client.Call.invoke(Call.java:1812) at com.alcatel.hdm.nbi.notification.service.NotificationEventServiceSoapBindingStub.processDeviceActivationResult(NotificationEventServiceSoapBindingStub.java:1073) at com.alcatel.hdm.nbi.notification.plugin.ReferenceWebservicesPlugin.sendNotification(ReferenceWebservicesPlugin.java:126) at motive.hdm.nbi.notification.plugin.NotificationTask.run(NotificationTask.java:22) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748){code} > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16614522#comment-16614522 ] GWR commented on AXIS-2909: --- seems like the dependency to: com.github.veithen.cosmos emf-maven-plugin 0.1-SNAPSHOT and transitive com.github.veithen.cosmos cosmos-equinox 0.4-SNAPSHOT are causing issues, as the oss.sonatype.org-snapshots repository (or other external snapshot repos) are not mirrored, for stability reasons. > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:422) > at java.lang.Class.newInstance(Class.java:442) > at > org.apache.axis.encoding.ser.BeanDeserializer.init(BeanDeserializer.java:104) > at > org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) > at > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) > at > org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) > at > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) > at > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) > at > org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1052) > at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown > Source) > at > org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown > Source) > at > org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown > Source) > at
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16613988#comment-16613988 ] GWR commented on AXIS-2909: --- thanks, useful info! and source code is here: git clone https://github.com/apache/axis1-java.git apache/axis1-java > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:422) > at java.lang.Class.newInstance(Class.java:442) > at > org.apache.axis.encoding.ser.BeanDeserializer.init(BeanDeserializer.java:104) > at > org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) > at > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) > at > org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) > at > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) > at > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) > at > org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1052) > at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown > Source) > at > org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown > Source) > at > org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown > Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) > at
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16613512#comment-16613512 ] robert lazarski commented on AXIS-2909: --- See below for the link to the current CI server for axis 1.x , [~veithen] migrated it here about a year ago. https://travis-ci.org/apache/axis1-java > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:422) > at java.lang.Class.newInstance(Class.java:442) > at > org.apache.axis.encoding.ser.BeanDeserializer.init(BeanDeserializer.java:104) > at > org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) > at > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) > at > org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) > at > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) > at > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) > at > org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1052) > at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown > Source) > at > org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown > Source) > at > org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown > Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) > at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) >
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16613361#comment-16613361 ] GWR commented on AXIS-2909: --- hanks, might be useful to progress further on trunk I had a look at [https://builds.apache.org/job/axis-trunk/] and it seems like last successful was June 2017. There seems to be an issue related to the module axis-model: Plugin com.github.veithen.cosmos:emf-maven-plugin:0.1-SNAPSHOT or one of its dependencies could not be resolved: The following artifacts could not be resolved: com.github.veithen.cosmos:cosmos-equinox:jar:0.4-SNAPSHOT I can see 0.3 version was released April 28th, 2018. > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:422) > at java.lang.Class.newInstance(Class.java:442) > at > org.apache.axis.encoding.ser.BeanDeserializer.init(BeanDeserializer.java:104) > at > org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) > at > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) > at > org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) > at > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) > at > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) > at > org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1052) > at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown > Source) > at > org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown > Source) > at > org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown > Source) >
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16612679#comment-16612679 ] GW Rogde commented on AXIS-2909: The suggestion is to take latest 1.4.1-SNAPSHOT, from a successful jenkins build in 2017. This is coming from http://svn.apache.org/repos/asf/axis/axis1/java/trunk, and to put it short this trunk has undergone a lot of changes since 2006 (1.4), and is not officially released. - added maven support - completely restructured into maven modules - a lot of different changes, check svn log veithen (A. Veithen) has done an excellent job within this trunk, and seems to be the maintainer. A better approach, and safer, given you want only to fix the axis ConcurrentModificationException bug, and not introduce more changes than needed, can be to take the 1.4 tag, and apply patch on top of that. https://svn.apache.org/repos/asf/axis/axis1/java/tags/1.4/ patch: // Convert to array before sorting to avoid concurrency issues OperationDesc[] array = (OperationDesc[])overloads.toArray( new OperationDesc[overloads.size()]); Arrays.sort(array, new Comparator() { public int compare(Object o1, Object o2) { Method meth1 = ((OperationDesc)o1).getMethod(); Method meth2 = ((OperationDesc)o2).getMethod(); return (meth1.getParameterTypes().length - meth2.getParameterTypes().length); } }); return array; } btw: AXIS-2875 is also needed, to make it compile with java8. please note that this will be a time machine experience, as you are back in the ant build-script days. you will also need to incl j2ee-1.4.jar as compile-time lib, but then you are ready to bake your own 1.4.1 Maybe we could prepare a 1.4.1 only containing this AXIS-2909 and release, as intermediate step. There are still some legacy axis-1.4, and java8 is all around. > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at >
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16389628#comment-16389628 ] robert lazarski commented on AXIS-2909: --- The last official release of axis was 1.4 back in 2006. For anything time sensitive I suggest compiling from source. There is a snapshot available that seemed to have been built right around the time this issue was marked fixed. It looks like it may include this patch for this issue though I haven't verified that. [http://axis.apache.org/axis/java/snapshots.html] > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:422) > at java.lang.Class.newInstance(Class.java:442) > at > org.apache.axis.encoding.ser.BeanDeserializer.init(BeanDeserializer.java:104) > at > org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) > at > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) > at > org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) > at > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) > at > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) > at > org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1052) > at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown > Source) > at > org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown > Source) > at > org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown > Source) >
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16389164#comment-16389164 ] Kumar Sudhanshu commented on AXIS-2909: --- Hi Apache team, We would like to have information on release date of production version of ApacheAXIS-1.4.1 JAR version. It is mentioned here that fix would be available in version: 1.4.1 (Apache AXIS 1.4.1) From Apache AXIS releases page, we observed that this JAR version is not yet released and also we could not find information on when it would be released. Jar release page : [https://svn.apache.org/repos/asf/axis/site/axis/java/releases.html] We have the below queries: * Kindly let us know, if there are any release plans scheduled for Apache AXIS 1.4.1 JAR in near future. * Is there a possibility of providing a beta version of the jar against which we can test if the above mentioned JIRA is fixed. * There is a diff patch attached with this JIRA : AXIS -2909, please let me know, if we can apply that patch to test the fix for the above mentioned JIRA? Regards KumarSudhanshu > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:422) > at java.lang.Class.newInstance(Class.java:442) > at > org.apache.axis.encoding.ser.BeanDeserializer.init(BeanDeserializer.java:104) > at > org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) > at > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) > at > org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) > at > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) > at > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) > at >
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16031074#comment-16031074 ] Kim Albertsson commented on AXIS-2909: -- Hi Sebastian, I can only speak of how we solved the issue in our project, and that was by rebuilding axis with the patch applied. I am not involved in the development efforts of AXIS and cannot answer questions about future planning. I can only hope there will be a patch release at some point! Cheers, Kim > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:422) > at java.lang.Class.newInstance(Class.java:442) > at > org.apache.axis.encoding.ser.BeanDeserializer.init(BeanDeserializer.java:104) > at > org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) > at > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) > at > org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) > at > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) > at > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) > at > org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1052) > at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown > Source) > at > org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown > Source) > at > org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown > Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16031054#comment-16031054 ] Sebastian Peters commented on AXIS-2909: Hi [~veithen] [~ashlaban], do you know if there are any plans for releasing this as axis patch version 1.4.1? I get a similar error within a legacy project that uses 1.7.0_21 and would like to try this out? How do you deal with those changes after the last official release 1.4? Thanks for any help. Sebastian > ConcurrentModificationException when running under Java 1.8.0_20 or later > - > > Key: AXIS-2909 > URL: https://issues.apache.org/jira/browse/AXIS-2909 > Project: Axis > Issue Type: Bug > Components: Serialization/Deserialization >Affects Versions: 1.4 > Environment: java full version "1.8.0_20-b26" >Reporter: Kim Albertsson >Assignee: Andreas Veithen >Priority: Critical > Fix For: 1.4.1 > > Attachments: axis-concurrent-mod.stack-trace, diff.txt > > Original Estimate: 0h > Remaining Estimate: 0h > > Java 8u20 introduced a change in how Collections.sort is implemented. See > http://bugs.java.com/view_bug.do?bug_id=8032636 and > http://bugs.java.com/view_bug.do?bug_id=8030848. > The sorting is now deferred to the specific list implementation which can > operate directly on the underlying data structure without making a defensive > copy beforehand. This can cause a java.util.ConcurrentModificationException > to occur. > The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java > 1.8.0_20 or later and running the maven test suite (mvn test). The error does > not manifest every single run, but I have never had to run the tests more > than 3 times to reproduce. The test that fails is > test.concurrency.TestApplicationScope. > The issue originates in > org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an > unsynchronized call to Collections.sort is made. Synchronizing over the > sorted array resolves the issue. > A working patch that has been tested in the test suite is appended in > diff.txt. > The stack trace from the axis test-suite is appended below. Do note however > that this stack trace does not show the actual error (The original error is > caught and rethrown). To get the stack trace where the Collections.sort call > is made you can run the specific test and attach the jdb configured to catch > all java.util.ConcurrentModificationExceptions. > The stack trace from my jdb session is appended as > axis-concurrent-mod.stack-trace. It was generated from an apache tomcat > instance running a webservice relying on axis. > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException > faultSubcode: > faultString: java.util.ConcurrentModificationException > faultActor: > faultNode: > faultDetail: > > {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:422) > at java.lang.Class.newInstance(Class.java:442) > at > org.apache.axis.encoding.ser.BeanDeserializer.init(BeanDeserializer.java:104) > at > org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) > at > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) > at > org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) > at > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) > at > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) > at > org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1052) > at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown > Source) > at > org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown > Source) > at > org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown > Source) > at
[jira] [Commented] (AXIS-2909) ConcurrentModificationException when running under Java 1.8.0_20 or later
[ https://issues.apache.org/jira/browse/AXIS-2909?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14613658#comment-14613658 ] Hudson commented on AXIS-2909: -- SUCCESS: Integrated in axis-trunk #280 (See [https://builds.apache.org/job/axis-trunk/280/]) AXIS-2909: Fix a concurrency issue that can be easily reproduced with Java 8. (veithen: rev 1689086) * /axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/description/JavaServiceDesc.java ConcurrentModificationException when running under Java 1.8.0_20 or later - Key: AXIS-2909 URL: https://issues.apache.org/jira/browse/AXIS-2909 Project: Axis Issue Type: Bug Components: Serialization/Deserialization Affects Versions: 1.4 Environment: java full version 1.8.0_20-b26 Reporter: Kim Albertsson Assignee: Andreas Veithen Priority: Minor Fix For: 1.4.1 Attachments: axis-concurrent-mod.stack-trace, diff.txt Original Estimate: 0h Remaining Estimate: 0h Java 8u20 introduced a change in how Collections.sort is implemented. See http://bugs.java.com/view_bug.do?bug_id=8032636 and http://bugs.java.com/view_bug.do?bug_id=8030848. The sorting is now deferred to the specific list implementation which can operate directly on the underlying data structure without making a defensive copy beforehand. This can cause a java.util.ConcurrentModificationException to occur. The error can be reproduced by compiling axis-1.4.1-SNAPSHOT using java 1.8.0_20 or later and running the maven test suite (mvn test). The error does not manifest every single run, but I have never had to run the tests more than 3 times to reproduce. The test that fails is test.concurrency.TestApplicationScope. The issue originates in org.apache.axis.description.JavaServiceDesc.getOperationsByQName where an unsynchronized call to Collections.sort is made. Synchronizing over the sorted array resolves the issue. A working patch that has been tested in the test suite is appended in diff.txt. The stack trace from the axis test-suite is appended below. Do note however that this stack trace does not show the actual error (The original error is caught and rethrown). To get the stack trace where the Collections.sort call is made you can run the specific test and attach the jdb configured to catch all java.util.ConcurrentModificationExceptions. The stack trace from my jdb session is appended as axis-concurrent-mod.stack-trace. It was generated from an apache tomcat instance running a webservice relying on axis. AxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode: faultString: java.util.ConcurrentModificationException faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}stackTrace:java.util.ConcurrentModificationException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:422) at java.lang.Class.newInstance(Class.java:442) at org.apache.axis.encoding.ser.BeanDeserializer.lt;initgt;(BeanDeserializer.java:104) at org.apache.axis.encoding.ser.BeanDeserializerFactory.getGeneralPurpose(BeanDeserializerFactory.java:89) at org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:89) at org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:484) at org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:567) at org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157) at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1052) at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source) at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at