Skip to content

query_supervisor #145: error detection during processing a query

Marcin requested to merge mi_qs_issue144_with_error_detection into develop

Previously, when a pending root query was finished and the end query handler was executed by the Postgres backend executor, the query handlers cleared their state and restarted counting limited values. However, when a pending query was canceled (for example, using the stop button in the PGADMIN query tool), the end handler was not called. As a result, the handlers treated all subsequent queries as subqueries of the already canceled root query. This leaded to situation when new queries were not broken when the time limit was exceeded becaue the timer was not re-armed.

Now an error( including breaking a query) is detected by a handler, and then each created handlers are informed about it. Handlers clear their states during handling an error.

Merge request reports