https://bz.apache.org/bugzilla/show_bug.cgi?id=64425
Bug ID: 64425 Summary: Distributed client/server test couldn't fixate the port when using RMI SSL Product: JMeter Version: 5.2.1 Hardware: PC OS: All Status: NEW Severity: normal Priority: P2 Component: Main Assignee: issues@jmeter.apache.org Reporter: liu_xp2...@sina.com Target Milestone: JMETER_5.3.0 Created attachment 37227 --> https://bz.apache.org/bugzilla/attachment.cgi?id=37227&action=edit JMeter client log Steps: 1. Generated RMI keystore and put it on JMeter client and server side. 2. Because of firewall, I need to fixate RMI port in jmeter.properties for both JMeter client and JMeter server server_port=1099 client.rmi.localport=2096 server.rmi.localport=2099 Sub caseA: 3.1. If I ignore security with server.rmi.ssl.disable=true in jmeter.properties and then start JMeter server & JMeter client. 4.1. I can run distribution test without RMI SSL. Sub caseB: 3.2. If I setted security with server.rmi.ssl.disable=false in jmeter.properties and then start JMeter server & JMeter client. 4.2. I got following log message when starting distribution test. jmeter -n -R 10.100.159.156 -t Debug.jmx 2020-05-12 15:48:16,899 INFO o.a.j.JMeter: Creating summariser <summary> 2020-05-12 15:48:16,902 INFO o.a.j.e.DistributedRunner: Configuring remote engine: 10.100.159.156 2020-05-12 15:48:17,735 INFO o.a.j.e.DistributedRunner: Starting distributed test with remote engines: [10.100.159.156] @ Tue May 12 15:48:17 CST 2020 (1589269697733) 2020-05-12 15:48:17,735 INFO o.a.j.e.ClientJMeterEngine: running clientengine run method 2020-05-12 15:48:17,739 INFO o.a.j.e.u.CompoundVariable: Note: Function class names must contain the string: '.functions.' 2020-05-12 15:48:17,739 INFO o.a.j.e.u.CompoundVariable: Note: Function class names must not contain the string: '.gui.' 2020-05-12 15:48:17,912 INFO o.a.j.r.RmiUtils: System property 'java.rmi.server.hostname' is not defined, using localHost address 2020-05-12 15:48:17,912 INFO o.a.j.r.RmiUtils: Local IP address=10.101.22.54 2020-05-12 15:48:17,914 INFO o.a.j.s.SampleEvent: List of sample_variables: [] 2020-05-12 15:48:18,055 INFO o.a.j.r.SSLRMIServerSocketFactory: Created SSLSocket: [SSL: ServerSocket[addr=tcn1010365/10.101.22.54,localport=2098]] 2020-05-12 15:48:18,063 INFO o.a.j.s.BatchSampleSender: Using batching (client settings) for this run. Thresholds: num=100, time=60000 2020-05-12 15:48:18,063 INFO o.a.j.s.DataStrippingSampleSender: Using DataStrippingSampleSender for this run 2020-05-12 15:48:18,063 INFO o.a.j.r.RmiUtils: System property 'java.rmi.server.hostname' is not defined, using localHost address 2020-05-12 15:48:18,063 INFO o.a.j.r.RmiUtils: Local IP address=10.101.22.54 2020-05-12 15:48:18,204 ERROR o.a.j.e.ConvertListeners: RemoteException occurred while replacing Remotable item. java.rmi.server.ExportException: Listen failed on port: 2098; nested exception is: java.io.IOException: Could not bind to tcn1010365/10.101.22.54 using port 2098 at sun.rmi.transport.tcp.TCPTransport.listen(TCPTransport.java:337) ~[?:?] at sun.rmi.transport.tcp.TCPTransport.exportObject(TCPTransport.java:243) ~[?:?] at sun.rmi.transport.tcp.TCPEndpoint.exportObject(TCPEndpoint.java:412) ~[?:?] at sun.rmi.transport.LiveRef.exportObject(LiveRef.java:147) ~[?:?] at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:234) ~[?:?] at java.rmi.server.UnicastRemoteObject.exportObject(UnicastRemoteObject.java:470) ~[?:?] at java.rmi.server.UnicastRemoteObject.exportObject(UnicastRemoteObject.java:381) ~[?:?] at java.rmi.server.UnicastRemoteObject.<init>(UnicastRemoteObject.java:260) ~[?:?] at org.apache.jmeter.samplers.RemoteSampleListenerImpl.<init>(RemoteSampleListenerImpl.java:44) ~[ApacheJMeter_core.jar:5.2.1] at org.apache.jmeter.engine.ConvertListeners.addNode(ConvertListeners.java:78) [ApacheJMeter_core.jar:5.2.1] at org.apache.jorphan.collections.HashTree.traverse(HashTree.java:976) [jorphan.jar:5.2.1] at org.apache.jmeter.engine.ClientJMeterEngine.runTest(ClientJMeterEngine.java:137) [ApacheJMeter_core.jar:5.2.1] at org.apache.jmeter.engine.DistributedRunner.start(DistributedRunner.java:135) [ApacheJMeter_core.jar:5.2.1] at org.apache.jmeter.engine.DistributedRunner.start(DistributedRunner.java:157) [ApacheJMeter_core.jar:5.2.1] at org.apache.jmeter.JMeter.runNonGui(JMeter.java:1094) [ApacheJMeter_core.jar:5.2.1] at org.apache.jmeter.JMeter.startNonGui(JMeter.java:992) [ApacheJMeter_core.jar:5.2.1] at org.apache.jmeter.JMeter.start(JMeter.java:564) [ApacheJMeter_core.jar:5.2.1] It looks like the following code couldn't be executed again for RMI SSL mode when adding node in org.apache.jmeter.engine.ConvertListeners.java super(DEFAULT_LOCAL_PORT, RmiUtils.createClientSocketFactory(), RmiUtils.createServerSocketFactory()); // RemoteSampleListenerImpl.java Refer fixed Bug: https://bz.apache.org/bugzilla/show_bug.cgi?id=62463 -- You are receiving this mail because: You are the assignee for the bug.