+ 55,734 Sec. Network - What does that mean?

veloopity's profile image veloopity posted 4 years ago in General Permalink

I have performance problems with a huge table (3 columns, more than 50 million rows), and a specific question about a console message in Heidisql that I don't understand.

This query (on a slower test server) takes 40-50 seconds until the 25000 results appear:

"SELECT col1,col2,col3 from table where ID IN (42996,43240,43700,44890,45049,46207)"

The console tells me this (my translation from German):

"Found rows: 25.093 Warnings: 0 Elapsed time of 1 query: 0,235 Sec. (+ 55,734 Sec. Network)"

Does this mean that the query execution actually took just a fraction of a second but the retrieval of the data to the HeidiSQL screen took almost a minute? And "Network" - everything happens on the same computer, so what does "network" mean exactly here?

ansgar's profile image ansgar posted 4 years ago Permalink

That "network time" is what the C API function mysql_store_result takes: https://mariadb.com/kb/en/mysql_store_result/

HeidiSQL fires mysql_real_query (which takes 0,235s), and then mysql_store_result (55s).

This is named "network" as the protocol is TCP/IP based, anyway where the server is located.

veloopity's profile image veloopity posted 4 years ago Permalink

Is mysql_real_query only the sending of the query to the database, without getting the data back yet?

ansgar's profile image ansgar posted 4 years ago Permalink

Yes, at least that is my understanding.

veloopity's profile image veloopity posted 4 years ago Permalink

thanks!!

Please login to leave a reply, or register at first.