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)
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.
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 commandview "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 executingview "noisolation":"^TMP,^XREF"
before it makes any database accesses. Note that using the environment variableydb_app_ensures_isolation
requires the environment variableydb_gbldir
to be set to a valid global directory. The setting applies to the global variables mapped by that global directory. (#218)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 commandview "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 executingview "noisolation":"^TMP,^XREF"
before it makes any database accesses. Note that using the environment variableydb_app_ensures_isolation
requires the environment variableydb_gbldir
to be set to a valid global directory. The setting applies to the global variables mapped by that global directory.