Como determino o nível de isolamento padrão para nossa instância 11.5 do DB2 em execução no Linux?
Vejo que há um "registro especial" nesta documentação da IBM , no entanto, não sou um especialista em DB2, portanto não tenho certeza de onde procurar isso ou como "ver" valores para registros "especiais".
Eu também olhei para this , mas também não estou tendo sorte em entender como obter o isolamento atual disso.
No Db2, o nível de isolamento é especificado no nível da instrução ou do pacote (=um grupo pré-compilado de instruções), não no nível do banco de dados ou da instância. Se não for especificado explicitamente como parte de uma instrução (
...WITH <isolation level
) ou por meio do registro que você descobriu, ou por outros meios, seráCS
(estabilidade do cursor). O comportamento do nível CS é controlado pelo parâmetro de configuração do banco de dadoscur_commit
.Você pode ver o valor do
CURRENT ISOLATION
registro emitindoVALUES CURRENT ISOLATION
, e isso determinará como a próxima instrução nesta sessão será compilada/preparada. Entretanto, se você chamar um procedimento armazenado nessa mesma sessão, as instruções nele contidas poderão ser executadas com o nível de isolamento especificado (em vigor) no momento da criação do SP.Você pode ver o nível de isolamento de cada instrução no cache do pacote usando
MON_GET_PKG_CACHE_STMT()
.Você pode ver o nível de isolamento atual de cada transação em andamento via
MON_GET_UNIT_OF_WORK()
.Níveis de isolamento .