WebSocket message size

Hello!

I’m using Gatling v3.0 and have simple code like from the documentation:

exec(ws(“Send”).sendText(“hello”)

.await(1 second) (

ws.checkTextMessage(“checkName”)

.matching(jsonPath(“$.uuid”).is(“${correlation}”))

.check(jsonPath(“$.code”).ofType[Int].is(1))

))

When I run test I get an exception:

Jodd failed to parse into a valid AST: j.j.JsonException: Syntax error! End of JSON

offset: 136778 near: “…format”:“#”

jodd.json.JsonException: Syntax error! End of JSON

offset: 136778 near: “…format”:“#”

at jodd.json.JsonParser.syntaxError(JsonParser.java:1231)

at jodd.json.JsonParser._parse(JsonParser.java:416)

at jodd.json.JsonParser.parse(JsonParser.java:382)

at io.gatling.core.json.JoddJson.parse(JoddJson.scala:27)

at io.gatling.core.json.JsonParsers.$anonfun$safeParseJodd$1(JsonParsers.scala:43)

at io.gatling.commons.validation.package$.safely(package.scala:34)

at io.gatling.core.json.JsonParsers.safeParseJodd(JsonParsers.scala:43)

at io.gatling.core.json.JsonParsers.safeParse(JsonParsers.scala:49)

at io.gatling.http.check.ws.WsJsonPathCheckMaterializer.$anonfun$preparer$1(WsJsonPathCheckMaterializer.scala:27)

at io.gatling.core.check.CheckBase.memoizedPrepared$1(Check.scala:74)

at io.gatling.core.check.CheckBase.$anonfun$check$6(Check.scala:88)

at io.gatling.commons.validation.Success.flatMap(Validation.scala:43)

at io.gatling.core.check.CheckBase.$anonfun$check$4(Check.scala:87)

at io.gatling.commons.validation.Success.flatMap(Validation.scala:43)

at io.gatling.core.check.CheckBase.check(Check.scala:86)

at io.gatling.http.check.ws.WsTextCheck.check(WsCheck.scala:28)

at io.gatling.http.check.ws.WsTextCheck.check(WsCheck.scala:26)

at io.gatling.http.action.ws.fsm.WhenPerformingCheck.$anonfun$tryApplyingChecks$1(WhenPerformingCheck.scala:122)

at io.gatling.http.action.ws.fsm.WhenPerformingCheck.$anonfun$tryApplyingChecks$1$adapted(WhenPerformingCheck.scala:122)

at scala.collection.LinearSeqOptimized.forall(LinearSeqOptimized.scala:81)

at scala.collection.LinearSeqOptimized.forall$(LinearSeqOptimized.scala:78)

at scala.collection.immutable.List.forall(List.scala:85)

at io.gatling.http.action.ws.fsm.WhenPerformingCheck.io$gatling$http$action$ws$fsm$WhenPerformingCheck$$tryApplyingChecks(WhenPerformingCheck.scala:122)

at io.gatling.http.action.ws.fsm.WhenPerformingCheck$$anonfun$1.applyOrElse(WhenPerformingCheck.scala:60)

at io.gatling.http.action.ws.fsm.WhenPerformingCheck$$anonfun$1.applyOrElse(WhenPerformingCheck.scala:30)

at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:34)

at akka.actor.FSM.processEvent(FSM.scala:684)

at akka.actor.FSM.processEvent$(FSM.scala:681)

at io.gatling.http.action.ws.fsm.WsActorFSM.processEvent(WsActorFSM.scala:52)

at akka.actor.FSM.akka$actor$FSM$$processMsg(FSM.scala:678)

at akka.actor.FSM$$anonfun$receive$1.applyOrElse(FSM.scala:672)

at akka.actor.Actor.aroundReceive(Actor.scala:517)

at akka.actor.Actor.aroundReceive$(Actor.scala:515)

at io.gatling.core.akka.BaseActor.aroundReceive(BaseActor.scala:24)

at akka.actor.ActorCell.receiveMessage(ActorCell.scala:588)

at akka.actor.ActorCell.invoke(ActorCell.scala:557)

at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:258)

at akka.dispatch.Mailbox.run(Mailbox.scala:225)

at akka.dispatch.Mailbox.exec(Mailbox.scala:235)

at akka.dispatch.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)

at akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)

at akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)

at akka.dispatch.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

I know that my incoming message is quite big and most likely Gatling cuts it off because there are some limits on message size. I can see it my simulation.log in TRACE mode.

How can I increase max message size?

Thank you

A bug indeed: https://github.com/gatling/gatling/issues/3589

Thanks for reporting.

When are you going to release 3.0.1?

Is there workaround which I can apply until 3.0.1?