Hi, I am seeing unexpected behavior with the timer scoping. I am not using any timer for requests in the 1st half of my test plan (DB operations only) and only using the Gaussian timer (2 - 4 secs) in the 2nd half of the test, i.e., in the === Create Sample Batching Job === simple controller, but it seems to be applied universally anyway. The reason I am saying "applied universally" is because the test runs very fast in GUI mode (~ 1 min) when I use the run without pause option or in non-GUI mode by setting the timer to 0. When I use the 2-4 seconds setting in non-GUI mode, the test ran for more than 5 MINUTES and mostly in the 1st half the DB query part. The timer is placed within the last request in each of the transactions, so my understanding is it will only happen after the last request in each transaction.
Thanks.Jun On Saturday, December 2, 2023 at 01:06:06 PM EST, Jun Zhuang <thornbird...@yahoo.com> wrote: Got it working. Thanks again for your help Felix! 3 things I had to do: - Use TWO double quotes for every double quote, so {"name": "whatever"} becomes {""name"": ""whatever""} - Put the final JSON string in double quotes when making the insertion request. Single quotes don't work! - In the JDBC request for insert, specify the data type as varchar instead of text even though text is the data type for the column I am inserting to. Otherwise, the inert will throw "invalid data type: text" error. So as in your example, the following should be supplied for the insert: "{""name"": ""whatever""}" Jun On Saturday, December 2, 2023 at 08:49:39 AM EST, Felix Schumacher <felix.schumac...@internetallee.de> wrote: Hi Jun, I have attached a working minimal example, that uses a JSON string and inserts that with a prepared statement. It assumes a locally running postgres which can be changed of course. The interesting part is: * You have to escape comma and quotes in the JSON string. Given a JSON object like {"name": "whatever"} you will have to add quotes to mask the comma and quotes to mask the quotes. Your string will have to look like "{""name"": ""whatever""}" * You have to cast the parameter to json in your insert statement. Add a ::json to the placeholder, as in "insert into something values (?::json)" Regards Felix Am 02.12.23 um 14:19 schrieb Jun Zhuang: Hi Filex, Thanks for the response. I tried with the single quotes and singles quotes + ::json, still got the same error. Just to be sure, are you using a Postgres DB? Also one thing I forgot to mentioned in my original email was the field I am trying to insert into is of data type text instead of varchar, I wonder if that makes any difference? Following are some screenshots of what I am trying to do: On Saturday, December 2, 2023 at 05:58:52 AM EST, Felix Schumacher <felix.schumac...@internetallee.de> wrote: Hi Jun, I am not sure, what you tried already. When I place the following text into a JDBC Sampler's query field, I get no errors: create table something (id int, data json); insert into something values (1, '{"name": "whatever"}'::json); Same result, when I remove the casting and use create table something (id int, data json); insert into something values (1, '{"name": "whatever"}'); Can you show us a minimal example that fails for you? Regards Felix Am 01.12.23 um 23:24 schrieb Jun Zhuang: > Hi, > I am getting Cannot have quote-char in plain field:['{"] error when trying > to insert a JSON string into a Postgres DB table using JDBC request. > I tried the following but nothing worked: > - place the JSON string in single quotes, > - escaping the double quotes with \", > - placing the string in $$<JSON string here>$$ but nothing worked. > There is no issue with the connection and other select/insert queries and I > was able to insert from pgAdmin with the same string in single quotes though. > The JSON string looks like this: {"A":"A", "B":[{"C":"C"}]} > I am really out of ideas at this time. Can someone help? > Thanks,Jun > > --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org
--------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org For additional commands, e-mail: user-h...@jmeter.apache.org