ydb_app_ensures_isolation provides initial setting for global variables where application design ensures Isolation
Final Release Note
A string value of a comma-separated list of global variable names in the environment variable ydb_app_ensures_isolation
informs YottaDB that application design ensures the transaction property of Isolation for global variables in that list and YottaDB need not do so, potentially increasing application throughput by reducing random, accidental TP restarts. The effect is functionally equivalent to executing the M language command view "noisolation":"<list>"
where "<list>"
is the value of the environment variable. For example, export ydb_app_ensures_isolation="^TMP,^XREF"
is equivalent to a process executing view "noisolation":"^TMP,^XREF"
before it makes any database accesses. Note that using the environment variable ydb_app_ensures_isolation
requires the environment variable ydb_gbldir
to be set to a valid global directory. The setting applies to the global variables mapped by that global directory. (#218 (closed))
Description
Without this enhancement, informing the database engine where application design ensures Isolation, thus allowing the engine to skip certain restarts that are accidental because of unrelated nodes residing in the same database block requires application code changes. The change provides a mechanism to accomplish this with an environment variable, thus removing the need for application code changs.
Draft Release Note
A string value of a comma-separated list of global variable names in the environment variable ydb_app_ensures_isolation
informs YottaDB that application design ensures the transaction property of Isolation for global variables in that list and YottaDB need not do so, potentially increasing application throughput by reducing random, accidental TP restarts. The effect is functionally equivalent to executing the M language command view "noisolation":"<list>"
where "<list>"
is the value of the environment variable. For example, export ydb_app_ensures_isolation="^TMP,^XREF"
is equivalent to a process executing view "noisolation":"^TMP,^XREF"
before it makes any database accesses. Note that using the environment variable ydb_app_ensures_isolation
requires the environment variable ydb_gbldir
to be set to a valid global directory. The setting applies to the global variables mapped by that global directory.