2

While testing Blazemeter Parallel Controller (0.9) with Jmeter 5.3 version with multiple https requests in the parallel controller, we are getting the following exception -

java.net.SocketException: Socket Closed 
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at sun.security.ssl.InputRecord.readFully(InputRecord.java:465)
....

I identified that it is passing for only one of the http samplers in the parallel controller. I modified various parameters like ssl socket protocol, or connect timeouts in 5.3 but to no avail.

We tried the same script on JMeter 5.2.1 or lower versions and it works without any changes/issues.Also, if I change the parallel controller to transaction controller in JMeter 5.3, it is starting to work without issues - ruling out any script issues.

It seems to have some issue with newer version of JMeter vs BZM Parallel Controller (0.9) or I may be missing any new setting to be done on JMeter 5.3 to make this work.

As of now we were running on 5.2.1 to avoid the above scenario exception but seems now, we need to move to JMeter 5.3 as part of our Organization SW upgrade and need to get a workaround for the same.

Could you please help if you have faced this and found any workaround for the same?

Sample Script Screenshot displaying the error and test plan

singhabhisek
  • 57
  • 1
  • 8

1 Answers1

0

Had the same problem on my side with bzm - I wanted to perform in one thread group 1 login, parallel execution of send & receive messages, and 1 logout. Everything worked well except the socket closed exception on one parallel thread whenever the other one ended its job.

I ended up removing the parallel controller.

I instead went to using a combination of setup and tear-down thread groups to login and logout, and worked out the cross thread-group variable sharing problems by going through JMeter properties initialization with beanshell assertion (good article on how to that here : https://medium.com/@priyank.it/jmeter-passing-variables-between-threads-a4dc09903b59).

That worked for my use case, but it might not for yours.

  • Thanks but my scenario is bit complex and not as simple as yours.. we have multiple controllers within the same thread group for various transactions as per business flow so cannot skip few things.. – singhabhisek Aug 20 '20 at 18:15
  • This does not work with jMeter 5.4 too. The error has changed to "javax.net.ssl.SSLException: Couldn't kickstart handshaking" though. – singh2005 Feb 13 '21 at 18:59