[Release] MySQL Async Library - 3.0.8

dev
mysql
basemods

#507

Ive been getting these Hitch frame warnings in my server? I found out it was mysql-async that was causing this problem. Any ideas on how to fix this issue?

ive done the basic things like clearing cache, reinstalling the script, update server build.


#508

which version, which scripts, which calls?


#509

Im using the latest version of Mysql Async and latest version of essentialmode


#510

You can add me on discord

Kawiz#6440


#511

Error: (node:17356) UnhandledPromiseRejectionWarning: TypeError: Cannot read property ‘3’ of null
at parseConnectingString (mysql-async.js:5027:30)
at global.on (mysql-async.js:5043:18)
at citizen:/scripting/v8/main.js:193:28
Error: (node:17356) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
Error: (node:17356) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Error calling system call ref function in resource TODO: TypeError: Cannot read property ‘query’ of undefined
stack:
TypeError: Cannot read property ‘query’ of undefined
at Object.global.exports [as callback] (mysql-async.js:4973:10)
at citizen:/scripting/v8/main.js:87:41
Error resuming coroutine: citizen:/scripting/lua/scheduler.lua:707: An error happened while calling export mysql_fetch_all of resource mysql-async (citizen:/scripting/lua/MessagePack.lua:830: missing bytes), see above for details
stack traceback:
[C]: in function ‘error’
citizen:/scripting/lua/scheduler.lua:707: in method ‘mysql_fetch_all’
@mysql-async/lib/MySQL.lua:143: in field ‘fetchAll’
server.lua:305: in function ‘loadBanList’
server.lua:21: in function server.lua:10

Someone an idea?


#512

Use a proper connection string.


#513

Or make a sane connection string interpreter :thinking:


#514

@Syntasu Psst. That usually happens on the default connection string, because it still expects a questionmark at the end.

@Im_Kawiz It does not hitch for me. It has to be one some specific queries?


#515

So it’s not sane then :thinking:

I always want pie, but it’s only a pie if it has chocolate icing on top, otherwise imma spit errors!


#516

Yes, I might throw on when it is not a pie to begin with. But that is not really a priority.


#517

Got it working. Simply reinstalled essentialmode and MySQL async


#518

Hello, I got a Linux server very recently, problem is that in the description it is saying that the new version is not currently ok for linux, but you need to use the 2.1.1…and I mean ok from here , even though nothing makes sense since the version that is downloadable is the 2.0.2!!!Where is the 2.1.1 how do I know how to get the 2.1.1 because I tried to put mysql async in the new server but there are only errors and problems. Thank you for you help in advance.(It is a Linux server just as a reminder).


#519

since 3.0.5 it is okay to use for linux. Just go to github and download it all fine.


#520

Update to 3.0.7

  • Added a version to the resource.lua so scripts can ask for the version by querying the metadata.
  • Refactor to use Promises in preparation for adding transactions.
  • Make the error on the missing connection string clearer.
  • Added a warning on queries that take more than 500ms. Time can be controlled by setting
set mysql_slow_query_warning <time-in-ms>

e.g.

set mysql_slow_query_warning 50

to print all queries that take more than one server-tick to complete. Setting it to 0 should disable the slow query warnings.


#521

Thank you for the support


#522

[MySQL] [Slow Query Warning] [es_extended] [794ms] UPDATE user_inventory SET co unt = 46 WHERE identifier = ‘steam:11000010e6axxxx’ AND item = ‘bread’
[MySQL] [Slow Query Warning] [es_extended] [939ms] UPDATE user_inventory SET co unt = 50 WHERE identifier = ‘steam:11000010e6axxxx’ AND item = ‘opium_pooch’
[MySQL] [Slow Query Warning] [es_extended] [1198ms] UPDATE user_inventory SET c ount = 0 WHERE identifier = ‘steam:11000010e6axxxx’ AND item = ‘opium’

What caused the problem? And how can it be fixed?


#523

@SpecialX How many entries does your table have?


#524


#525

125.466 rows… there is your issue. As @zr0iq kindly pointed out to me, use an index on the table for faster indexing.


#526

that is easy to fix.

ALTER TABLE user_inventory
  ADD INDEX user_inventory_ident_item (identifier, item);