On 24/12/2021 07:12, Mark Rotteveel wrote:
> Checking the changes of Firebird 4.0.1 to update the docs, I noticed
> that a new statement `SET DEBUG OPTION` has been introduced, but I can't
> find much about it, except for "To make isc_info_sql_exec_path_blr_*
> work, session must be first execute set debug option dsql_keep_blr =
> true." in https://github.com/FirebirdSQL/firebird/issues/6910
> 
> Questions:
> 
> 1. Is dsql_keep_blr the only option at the moment, or are there more?
> (the code suggests not)

It's the only one.


> 2. Is SET DEBUG OPTION general for an entire connection, or does it need
> to be executed on the statement handle you want to retrieve one of the
> isc_info_sql_exec_path_blr_* options from? (checking the commit, it
> seems to be attachment level, but I'd like confirmation

It's for the attachment.


> 3. How do you clear an option, set value to false, can you set to null?
> 

SET DEBUG OPTION valid_symbol_name '=' constant

The general command accepts any constant (NULL is not included).

DSQL_KEEP_BLR requires a boolean constant. But it can also be implicit
converted via strings ('true' or 'false').

> Also, is there more to it than this?

It's good to reproduce the warning put in the issue:

----
Warning: this feature is very tied to engine internals and its usage is
discouraged
if you do not understand very well how these internals are subject to
change between
versions.
----


Adriano


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to