You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Date: 2016-08-23 12:39:59 +0200
From: Richard Hughes <<richard.monetdb>>
To: clients devs <>
Version: 11.21.19 (Jul2015-SP4)
Last updated: 2019-04-30 12:36:01 +0200
Comment 22318
Date: 2016-08-23 12:39:59 +0200
From: Richard Hughes <<richard.monetdb>>
Created attachment 401
Implement mapi_settimeout
Here's a patch to implement it.
Note that this changes the semantics of mnstr_settimeout in libstream based on the documentation in the changelog comment "a callback function (no arguments, int result) that should return TRUE if the timeout should cause the function to abort or continue what it was doing". The previous code would act on the callback function even if the timeout hadn't expired. The only existing user of that feature (monetdb5/mal/mal_session.c) looks like it would be happy with either semantic.
Check for timeout after check for error and only if no data.
Also, implement the check for the timeout function in accordance with
the comment (no function is equivalent to a function returning true).
This does the same as what the patch in bug #4056 does.
However, this does not mean that mapi_settimeout now causes the query to be stopped when it takes too long, only that the library stop listening for an answer. The application using this can cause the query to (eventually) stop by closing the connection after the timeout triggered (and then opening a new connection if it wants to do more). The closed connection will be noticed in the server and cause the query to be aborted.
Still closing since the patch was incorporated.
The text was updated successfully, but these errors were encountered:
Date: 2016-08-23 12:39:59 +0200
From: Richard Hughes <<richard.monetdb>>
To: clients devs <>
Version: 11.21.19 (Jul2015-SP4)
Last updated: 2019-04-30 12:36:01 +0200
Comment 22318
Date: 2016-08-23 12:39:59 +0200
From: Richard Hughes <<richard.monetdb>>
Created attachment 401
Implement mapi_settimeout
Here's a patch to implement it.
Note that this changes the semantics of mnstr_settimeout in libstream based on the documentation in the changelog comment "a callback function (no arguments, int result) that should return TRUE if the timeout should cause the function to abort or continue what it was doing". The previous code would act on the callback function even if the timeout hadn't expired. The only existing user of that feature (monetdb5/mal/mal_session.c) looks like it would be happy with either semantic.
Comment 26835
Date: 2019-01-22 14:41:28 +0100
From: MonetDB Mercurial Repository <>
Changeset 771a2d5a9079 made by Sjoerd Mullender sjoerd@acm.org in the MonetDB repo, refers to this bug.
For complete details, see https//devmonetdborg/hg/MonetDB?cmd=changeset;node=771a2d5a9079
Changeset description:
Comment 26836
Date: 2019-01-22 15:02:40 +0100
From: @sjoerdmullender
The essence of the patch has been taken over.
However, this does not mean that mapi_settimeout now causes the query to be stopped when it takes too long, only that the library stop listening for an answer. The application using this can cause the query to (eventually) stop by closing the connection after the timeout triggered (and then opening a new connection if it wants to do more). The closed connection will be noticed in the server and cause the query to be aborted.
Still closing since the patch was incorporated.
The text was updated successfully, but these errors were encountered: