Getting error when running jmeter master-slave Error in rconfigure() method - jmeter

I have a existing jmeter Master/Slave configuration which works fine. The existing jmeter is 3.0
I installed 3.3 version in the Master server and added the necessary library jar which enabled me to open the existing jmx file.
I copied the exisitng jmeter properties file to the new directory as well. But when I try to run that, I am getting the below error message
Error in rconfigure() method java.rmi.MarshalException: error marshalling arguments; nested exception is:
java.net.SocketException: Software caused connection abort: socket write error
Should I need to install my slave server with 3.3 as well? I tried upgrading the library files, but the jmeter version displayed remains 3.0 even after that. Hence not sure if that is the right way to upgrade it.

Yes, using the same JMeter version is amust in Remote Testing step 0:
Step 0: Configure the nodes
Make sure that all the nodes (client and servers) :
are running exactly the same version of JMeter.
are using the same version of Java on all systems. Using different versions of Java may work but is discouraged
You should use the download version in all computers there is no upgrade option in JMeter

Related

JMeter, MSSQL, JDBC, and Integrated Security with sqljdbc_auth.dll

Notwithstanding this question, I still have not determined the error in my configuration causing the JMeter JDBC sampler to reject integrated security.
Downloaded the SQL Server JDBC package for x64 and installed mssql-jdbc-9.4.1.jre8.jar in JMETER_PATH\lib.
Installed mssql-jdbc_auth-9.4.1.x86.dll in JMETER_PATH\lib, too, but, as advised on the Blazemeter comments, I also installed it in C:\windows\system32, since it is on my java.library.path.
Restarted JMeter.
Still getting the error in the Response:
Cannot create PoolableConnectionFactory (This driver is not configured for integrated authentication. ClientConnectionId:9c225a40-362d-4aba-8339-cfab9270048f)
JMeter version is 5.4.1.
Updating with screenshot showing os.arch, java.library.path, and placement of the DLL.
Database URL: jdbc:sqlserver://myservername:1433;integratedSecurity=true
Add a Debug Sampler to your Test Plan and configure it like:
Look for os.arch property, it should be amd64 or x86_64, if it isn't - geta 64-bit Java SDK
Look for java.library.path property, copy the mssql-jdbc_auth-9.4.1.x64.dll library to one of the folders which are in the java.library.path
Restart JMeter to pick up the .dll
Make sure that integratedSecurity=true stanza is in your JDBC URL like
jdbc:sqlserver://somehost:1433;integratedSecurity=true

Custom ListenTCP processor works fine on 1.11.4 but fails to deploy on version 1.11.4.2.0.4.0-80

I created a Custom ListenTCP processor by creating new socket handlers and referring them in CustomListen TCP. I was able to deploy it on my mac and tested it with a sample file that has a different incoming delimiter and works great on my mac.(version 11.4)
However, My org is using this version: Cloudera Cloudera Flow Management (CFM) 2.0.4.0 1.11.4.2.0.4.0-80, Tagged nifi-1.11.4-RC1
So, I tried to change the version appropriately on my mac for deploying the nar file into our Cloudera cluster but it is failing with ClientAuth class not found in SSLContextService( version 1.11.4.2.0.4.0-80)
Here is the link for 1.11.4 on my mac works fine
Modified to 1.11.4.2.0.4.0-80 and fails with not finding $ClientAuth
I looked at the source code
it was deprecated and somehow not found in your CFM jar.
Maybe putting this enum in your custom code solves your problem .
enum ClientAuth {
WANT,
REQUIRED,
NONE
}

Java.lang.StackOverflowError due to regex.Perl5Matcher

The issue is reproducible when running a JMeter test under specific machine. The number of users is 1. The JMeter test uses regex to exclude certain domains ^((?!somerealdomain\.com).)*$. The thread is closed almost immediately and the error in the jmeter log is:
2018-09-03 15:53:12,596 ERROR o.a.j.JMeter: Uncaught exception:
java.lang.StackOverflowError: null
at org.apache.oro.text.regex.Perl5Matcher.__match(Unknown Source) ~[oro-2.0.8.jar:?]
at org.apache.oro.text.regex.Perl5Matcher.__match(Unknown Source) ~[oro-2.0.8.jar:?]
at org.apache.oro.text.regex.Perl5Matcher.__match(Unknown Source) ~[oro-2.0.8.jar:?]
The Perl5Matcher error is present approximately 1000 times.
As the issue is reproducible only on one from our 3 performance agents, I am not sure what is causing it.
The heap is 1GB on all machines:
HEAP=-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m
Java version is the 1.8.0_181 an all three agents.
Do you have ideas where to look?
Try settings Xss to same value everywhere:
-Xss256k
Also please show all the jmeter.log of:
jmeter.log
jmeter-server.log
If only one machine is affected it means that it is not the same as other machines therefore it can produce not the same load as you expect so I would start with identifying the differences.
Double check that your load generators are running the same OS
Double check that your load generators use the same JVM version (preferably from Oracle, preferably server JRE or JDK) vendor, architecture, build, etc.
Double check that your load generators use the same (preferably latest) JMeter version
Double check that your load generators have the same configuration, the best way is setting up one node according to JMeter Best Practices and copy the installation over to all slave machines
Save response data for failing request and verify that it is the same for all slaves, you can do this by adding the next 2 lines to user.properties file:
jmeter.save.saveservice.output_format=xml
meter.save.saveservice.response_data=true
Try amending your regular expression to exclude the domain to something like:
^((?!somerealdomain).)*$
or
^((?!somerealdomain.com).)*$
I found the solution. I added to the start of the PATH C:\Program Files\Java\jre1.8.0_181\bin; and then restarted the computer as explained here.
What lead me to this was that after I have installed latest Java JRE 64-bit version and I run java -version, the message was "Java is not recognized as an internal or external command". It was strange that the JMeter test has even started its execution on this machine.
There was no need to do this on the other two agents. Thank you all for your kind suggestions.

Distributed JMeter test fails with java error but test will run from JMeter UI (non-distributed)

My goal is to run a load test using 4 Azure servers as load generators and 1 Azure server to initiate the test and gather results. I had the distributed test running and I was getting good data. But today when I remote start the test 3 of the 4 load generators fail with all the http transactions erroring. The failed transactions log the following error:
Non HTTP response message: java.lang.ClassNotFoundException: org.apache.commons.logging.impl.Log4jFactory (Caused by java.lang.ClassNotFoundException: org.apache.commons.logging.impl.Log4jFactory)
I confirmed the presence of commons-logging-1.2.jar in the jmeter\lib folder on each machine.
To try to narrow down the issue I set up one Azure server to both initiate the load and run JMeter-server but this fails too. However, if I start the test from the JMeter UI on that same server the test runs OK. I think this rules out a problem in the script or a problem with the Azure machines talking to each other.
I also simplified my test plan down to where it only runs one simple http transaction and this still fails.
I've gone through all the basics: reinstalled jmeter, updated java to the latest version (1.8.0_111), updated the JAVA_HOME environment variable and backed out the most recent Microsoft Security update on the server. Any advice on how to pick this problem apart would be greatly appreciated.
I'm using JMeter 3.0r1743807 and Java 1.8
The Azure servers are running Windows Server 2008 R2
I did get a resolution to this problem. It turned out to be a conflict between some extraneous code in a jar file and a component of JMeter. It was “spooky” because something influenced the load order of referenced jar files and JMeter components.
I had included a jar file in my JMeter script using the “Add directory or jar to classpath” function in the Test Plan. This jar file has a piece of code I needed for my test along with many other components and one of those components, probably a similar logging function, conflicted with a logging function in JMeter. The problem was spooky; the test ran fine for months but started failing at the maximally inconvenient time. The problem was revealed by creating a very simple JMeter test that would load and run just fine. If I opened the simple test in JMeter then, without closing JMeter, opened my problem test, my problem test would not fail. If I reversed the order, opening the problem test followed by the simple test then the simple test would fail too. Given that the problem followed the order in which things loaded I started looking at the jar files and found my suspect.
When I built the script I left the jar file alone thinking that the functions I need might have dependencies to other pieces within the jar. Now that things are broken I need to find out if that is true and happily it is not. So, to fix the problem I changed the extension on my jar file to zip then edited it in 7-zip. I removed all the code except what I needed. I kept all the folders in the path to my needed code, I did this for two reasons; I did not have to update my code that called the functions and when I tried changing the path the functions did not work.
Next I changed the extension on the file back to jar and changed the reference in JMeter’s “Add directory or jar to classpath” function to point to the revised jar. I haven’t seen the failure since.
Many thanks to the folks who looked at this. I hope the resolution will help someone out.

MQ - 2142 error

I am new to Java-MQ programming. I am facing a strange issue.
I am trying to send a text message to WMQ V7 using java.
In my code I have a property called identifier which I am setting to the message by using the method msg.setStringProperty("IDENTIFIER", "XXXXX");
I deployed the code in Unix system and while testing I am getting MQ-2142 error MQRC_HEADER_ERROR.
The strange thing is when I am running the same code from my local desktop using netbeans-6.9 (like a standalone application) it is executing successfully.
Please help me out with this issue?

Resources