Considere o seguinte cenário hipotético de um sistema de controle de estoque para uma Secretaria de Fazenda, que utiliza um SGBD relacional com suporte a transações ACID. Dois processos concorrentes, P1 e P2, executam as seguintes operações sobre a tabela Estoque(Codigo, Quantidade), inicialmente com o item de código 100 contendo quantidade 50:
BEGIN; UPDATE Estoque SET Quantidade = Quantidade - 30 WHERE Codigo = 100; -- pausa longa -- COMMIT;BEGIN; UPDATE Estoque SET Quantidade = Quantidade + 20 WHERE Codigo = 100; COMMIT;O SGBD adota o nível de isolamento READ COMMITTED e utiliza bloqueios de duas fases (2PL) estrito, com bloqueios de escrita (X) mantidos até o final da transação. Durante a pausa de P1, P2 tenta executar sua atualização. Considerando que não há outros conflitos e que o sistema segue rigorosamente as definições da norma SQL para níveis de isolamento, assinale a alternativa que descreve corretamente o comportamento do sistema e o resultado final da quantidade para o código 100.
Selecione uma alternativa pra criar sua conta e salvar o progresso.