You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Bruce Schuchardt (JIRA)" <ji...@apache.org> on 2016/03/10 23:21:41 UTC

[jira] [Commented] (GEODE-986) CI Failure: MultiuserAPIDUnitTest.testMultiUserUnsupportedAPIs failed with SocketException

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

Bruce Schuchardt commented on GEODE-986:
----------------------------------------

This is caused by old backward-compatibility code in TcpClient.  It is assuming that the locator is running v5.7 if it can't fetch the locator's product version information, but the client then goes on to tell the locator that it is running 9.0.  The FindCoordinator request is then serialized with v5.7 but the locator tries to deserialize it with v9.0 and runs into trouble when assembling an InternalDistributedMember.  The on-wire form of this class has changed in 9.0.

> CI Failure: MultiuserAPIDUnitTest.testMultiUserUnsupportedAPIs failed with SocketException
> ------------------------------------------------------------------------------------------
>
>                 Key: GEODE-986
>                 URL: https://issues.apache.org/jira/browse/GEODE-986
>             Project: Geode
>          Issue Type: Bug
>          Components: membership
>            Reporter: Barry Oglesby
>              Labels: ci
>
> Geode_develop_DistributedTests
> Private Build #1662
> Revision: e685fd85ac7e2607f70b47bfb448b1d91a56b103
> {noformat}
> [vm_1][error 2016/02/18 16:24:59.642 PST <RMI TCP Connection(18)-10.118.32.91> tid=0x12] Unexpected problem starting up membership services
> [vm_1]com.gemstone.gemfire.ToDataException: toData failed on DataSerializable class com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.invokeToData(InternalDataSerializer.java:2453)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.writeDSFID(InternalDataSerializer.java:1412)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.basicWriteObject(InternalDataSerializer.java:2150)
> [vm_1]	at com.gemstone.gemfire.DataSerializer.writeObject(DataSerializer.java:3241)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.locator.FindCoordinatorRequest.toData(FindCoordinatorRequest.java:87)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.invokeToData(InternalDataSerializer.java:2419)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.writeDSFID(InternalDataSerializer.java:1412)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.basicWriteObject(InternalDataSerializer.java:2150)
> [vm_1]	at com.gemstone.gemfire.DataSerializer.writeObject(DataSerializer.java:3241)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.tcpserver.TcpClient.requestToServer(TcpClient.java:145)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.membership.GMSJoinLeave$TcpClientWrapper.sendCoordinatorFindRequest(GMSJoinLeave.java:988)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.membership.GMSJoinLeave.findCoordinator(GMSJoinLeave.java:910)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.membership.GMSJoinLeave.join(GMSJoinLeave.java:242)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.mgr.GMSMembershipManager.join(GMSMembershipManager.java:676)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.mgr.GMSMembershipManager.joinDistributedSystem(GMSMembershipManager.java:765)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.Services.start(Services.java:174)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.GMSMemberFactory.newMembershipManager(GMSMemberFactory.java:105)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.MemberFactory.newMembershipManager(MemberFactory.java:93)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.DistributionManager.<init>(DistributionManager.java:1159)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.DistributionManager.<init>(DistributionManager.java:1211)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.DistributionManager.create(DistributionManager.java:573)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:652)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:277)
> [vm_1]	at com.gemstone.gemfire.distributed.DistributedSystem.connect(DistributedSystem.java:1641)
> [vm_1]	at com.gemstone.gemfire.test.dunit.DistributedTestCase.getSystem(DistributedTestCase.java:145)
> [vm_1]	at com.gemstone.gemfire.security.SecurityTestUtil.createSystem(SecurityTestUtil.java:184)
> [vm_1]	at com.gemstone.gemfire.security.SecurityTestUtil.createCacheServer(SecurityTestUtil.java:306)
> [vm_1]	at com.gemstone.gemfire.security.SecurityTestUtil.createCacheServer(SecurityTestUtil.java:278)
> [vm_1]	at com.gemstone.gemfire.security.MultiuserAPIDUnitTest.createCacheServer(MultiuserAPIDUnitTest.java:105)
> [vm_1]	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [vm_1]	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> [vm_1]	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> [vm_1]	at java.lang.reflect.Method.invoke(Method.java:497)
> [vm_1]	at hydra.MethExecutor.execute(MethExecutor.java:199)
> [vm_1]	at com.gemstone.gemfire.test.dunit.standalone.RemoteDUnitVM.executeMethodOnClass(RemoteDUnitVM.java:118)
> [vm_1]	at sun.reflect.GeneratedMethodAccessor452.invoke(Unknown Source)
> [vm_1]	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> [vm_1]	at java.lang.reflect.Method.invoke(Method.java:497)
> [vm_1]	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
> [vm_1]	at sun.rmi.transport.Transport$1.run(Transport.java:200)
> [vm_1]	at sun.rmi.transport.Transport$1.run(Transport.java:197)
> [vm_1]	at java.security.AccessController.doPrivileged(Native Method)
> [vm_1]	at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$95(TCPTransport.java:683)
> [vm_1]	at java.security.AccessController.doPrivileged(Native Method)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
> [vm_1]	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> [vm_1]	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> [vm_1]	at java.lang.Thread.run(Thread.java:745)
> [vm_1]Caused by: java.lang.reflect.InvocationTargetException
> [vm_1]	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [vm_1]	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> [vm_1]	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> [vm_1]	at java.lang.reflect.Method.invoke(Method.java:497)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.invokeToData(InternalDataSerializer.java:2409)
> [vm_1]	... 50 more
> [vm_1]Caused by: java.net.SocketException: Broken pipe
> [vm_1]	at java.net.SocketOutputStream.socketWrite0(Native Method)
> [vm_1]	at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)
> [vm_1]	at java.net.SocketOutputStream.write(SocketOutputStream.java:153)
> [vm_1]	at java.io.DataOutputStream.write(DataOutputStream.java:107)
> [vm_1]	at java.io.DataOutputStream.write(DataOutputStream.java:107)
> [vm_1]	at com.gemstone.gemfire.DataSerializer.writeByteArray(DataSerializer.java:1461)
> [vm_1]	at com.gemstone.gemfire.DataSerializer.writeByteArray(DataSerializer.java:1424)
> [vm_1]	at com.gemstone.gemfire.DataSerializer.writeInetAddress(DataSerializer.java:540)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember.toDataPre_GFE_7_1_0_0(InternalDistributedMember.java:994)
> [vm_1]	... 55 more
> {noformat}
> {noformat}
> [vm_1][info 2016/02/18 16:24:59.650 PST <RMI TCP Connection(18)-10.118.32.91> tid=0x12] Got result: EXCEPTION_OCCURRED
> [vm_1]java.lang.AssertionError: Got unexpected exception when starting peer
> [vm_1]	at com.gemstone.gemfire.test.dunit.Assert.fail(Assert.java:64)
> [vm_1]	at com.gemstone.gemfire.security.SecurityTestUtil.createCacheServer(SecurityTestUtil.java:330)
> [vm_1]	at com.gemstone.gemfire.security.SecurityTestUtil.createCacheServer(SecurityTestUtil.java:278)
> [vm_1]	at com.gemstone.gemfire.security.MultiuserAPIDUnitTest.createCacheServer(MultiuserAPIDUnitTest.java:105)
> [vm_1]	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [vm_1]	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> [vm_1]	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> [vm_1]	at java.lang.reflect.Method.invoke(Method.java:497)
> [vm_1]	at hydra.MethExecutor.execute(MethExecutor.java:199)
> [vm_1]	at com.gemstone.gemfire.test.dunit.standalone.RemoteDUnitVM.executeMethodOnClass(RemoteDUnitVM.java:118)
> [vm_1]	at sun.reflect.GeneratedMethodAccessor452.invoke(Unknown Source)
> [vm_1]	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> [vm_1]	at java.lang.reflect.Method.invoke(Method.java:497)
> [vm_1]	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
> [vm_1]	at sun.rmi.transport.Transport$1.run(Transport.java:200)
> [vm_1]	at sun.rmi.transport.Transport$1.run(Transport.java:197)
> [vm_1]	at java.security.AccessController.doPrivileged(Native Method)
> [vm_1]	at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$95(TCPTransport.java:683)
> [vm_1]	at java.security.AccessController.doPrivileged(Native Method)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
> [vm_1]	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> [vm_1]	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> [vm_1]	at java.lang.Thread.run(Thread.java:745)
> [vm_1]Caused by: com.gemstone.gemfire.SystemConnectException: Problem starting up membership services
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.GMSMemberFactory.newMembershipManager(GMSMemberFactory.java:118)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.MemberFactory.newMembershipManager(MemberFactory.java:93)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.DistributionManager.<init>(DistributionManager.java:1159)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.DistributionManager.<init>(DistributionManager.java:1211)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.DistributionManager.create(DistributionManager.java:573)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:652)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:277)
> [vm_1]	at com.gemstone.gemfire.distributed.DistributedSystem.connect(DistributedSystem.java:1641)
> [vm_1]	at com.gemstone.gemfire.test.dunit.DistributedTestCase.getSystem(DistributedTestCase.java:145)
> [vm_1]	at com.gemstone.gemfire.security.SecurityTestUtil.createSystem(SecurityTestUtil.java:184)
> [vm_1]	at com.gemstone.gemfire.security.SecurityTestUtil.createCacheServer(SecurityTestUtil.java:306)
> [vm_1]	... 24 more
> [vm_1]Caused by: com.gemstone.gemfire.ToDataException: toData failed on DataSerializable class com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.invokeToData(InternalDataSerializer.java:2453)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.writeDSFID(InternalDataSerializer.java:1412)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.basicWriteObject(InternalDataSerializer.java:2150)
> [vm_1]	at com.gemstone.gemfire.DataSerializer.writeObject(DataSerializer.java:3241)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.locator.FindCoordinatorRequest.toData(FindCoordinatorRequest.java:87)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.invokeToData(InternalDataSerializer.java:2419)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.writeDSFID(InternalDataSerializer.java:1412)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.basicWriteObject(InternalDataSerializer.java:2150)
> [vm_1]	at com.gemstone.gemfire.DataSerializer.writeObject(DataSerializer.java:3241)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.tcpserver.TcpClient.requestToServer(TcpClient.java:145)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.membership.GMSJoinLeave$TcpClientWrapper.sendCoordinatorFindRequest(GMSJoinLeave.java:988)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.membership.GMSJoinLeave.findCoordinator(GMSJoinLeave.java:910)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.membership.GMSJoinLeave.join(GMSJoinLeave.java:242)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.mgr.GMSMembershipManager.join(GMSMembershipManager.java:676)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.mgr.GMSMembershipManager.joinDistributedSystem(GMSMembershipManager.java:765)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.Services.start(Services.java:174)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.gms.GMSMemberFactory.newMembershipManager(GMSMemberFactory.java:105)
> [vm_1]	... 34 more
> [vm_1]Caused by: java.lang.reflect.InvocationTargetException
> [vm_1]	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [vm_1]	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> [vm_1]	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> [vm_1]	at java.lang.reflect.Method.invoke(Method.java:497)
> [vm_1]	at com.gemstone.gemfire.internal.InternalDataSerializer.invokeToData(InternalDataSerializer.java:2409)
> [vm_1]	... 50 more
> [vm_1]Caused by: java.net.SocketException: Broken pipe
> [vm_1]	at java.net.SocketOutputStream.socketWrite0(Native Method)
> [vm_1]	at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)
> [vm_1]	at java.net.SocketOutputStream.write(SocketOutputStream.java:153)
> [vm_1]	at java.io.DataOutputStream.write(DataOutputStream.java:107)
> [vm_1]	at java.io.DataOutputStream.write(DataOutputStream.java:107)
> [vm_1]	at com.gemstone.gemfire.DataSerializer.writeByteArray(DataSerializer.java:1461)
> [vm_1]	at com.gemstone.gemfire.DataSerializer.writeByteArray(DataSerializer.java:1424)
> [vm_1]	at com.gemstone.gemfire.DataSerializer.writeInetAddress(DataSerializer.java:540)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.membership.InternalDistributedMember.toDataPre_GFE_7_1_0_0(InternalDistributedMember.java:994)
> [vm_1]	... 55 more
> [vm_1] from com.gemstone.gemfire.security.MultiuserAPIDUnitTest.createCacheServer with 5 args (took 64 ms)
> {noformat}
> Later on in the test MultiuserAPIDUnitTest.testSingleUserUnsupportedAPIs, vm_1 attempts to start a locator, but the one above was never closed so this exception occurs:
> {noformat}
> [vm_1][info 2016/02/18 16:24:59.965 PST <RMI TCP Connection(18)-10.118.32.91> tid=0x12] Got result: EXCEPTION_OCCURRED
> [vm_1]java.lang.AssertionError: Got unexpected exception when starting peer
> [vm_1]	at com.gemstone.gemfire.test.dunit.Assert.fail(Assert.java:64)
> [vm_1]	at com.gemstone.gemfire.security.SecurityTestUtil.createCacheServer(SecurityTestUtil.java:330)
> [vm_1]	at com.gemstone.gemfire.security.SecurityTestUtil.createCacheServer(SecurityTestUtil.java:278)
> [vm_1]	at com.gemstone.gemfire.security.MultiuserAPIDUnitTest.createCacheServer(MultiuserAPIDUnitTest.java:105)
> [vm_1]	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [vm_1]	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> [vm_1]	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> [vm_1]	at java.lang.reflect.Method.invoke(Method.java:497)
> [vm_1]	at hydra.MethExecutor.execute(MethExecutor.java:199)
> [vm_1]	at com.gemstone.gemfire.test.dunit.standalone.RemoteDUnitVM.executeMethodOnClass(RemoteDUnitVM.java:118)
> [vm_1]	at sun.reflect.GeneratedMethodAccessor452.invoke(Unknown Source)
> [vm_1]	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> [vm_1]	at java.lang.reflect.Method.invoke(Method.java:497)
> [vm_1]	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:323)
> [vm_1]	at sun.rmi.transport.Transport$1.run(Transport.java:200)
> [vm_1]	at sun.rmi.transport.Transport$1.run(Transport.java:197)
> [vm_1]	at java.security.AccessController.doPrivileged(Native Method)
> [vm_1]	at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$95(TCPTransport.java:683)
> [vm_1]	at java.security.AccessController.doPrivileged(Native Method)
> [vm_1]	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
> [vm_1]	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> [vm_1]	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> [vm_1]	at java.lang.Thread.run(Thread.java:745)
> [vm_1]Caused by: java.lang.IllegalStateException: A locator can not be created because one already exists in this JVM.
> [vm_1]	at com.gemstone.gemfire.distributed.internal.InternalLocator.createLocator(InternalLocator.java:272)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.InternalDistributedSystem.startInitLocator(InternalDistributedSystem.java:750)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:638)
> [vm_1]	at com.gemstone.gemfire.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:277)
> [vm_1]	at com.gemstone.gemfire.distributed.DistributedSystem.connect(DistributedSystem.java:1641)
> [vm_1]	at com.gemstone.gemfire.test.dunit.DistributedTestCase.getSystem(DistributedTestCase.java:145)
> [vm_1]	at com.gemstone.gemfire.security.SecurityTestUtil.createSystem(SecurityTestUtil.java:184)
> [vm_1]	at com.gemstone.gemfire.security.SecurityTestUtil.createCacheServer(SecurityTestUtil.java:306)
> [vm_1]	... 24 more
> [vm_1] from com.gemstone.gemfire.security.MultiuserAPIDUnitTest.createCacheServer with 5 args (took 12 ms)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)