Questão
ID 66939Disciplina: Tecnologia da Informação
Assuntos: Consistência, Isolamento
Ano: 2025 Banca: PERFIL - ENADE Órgão: Segundo Simulado Pnd
Um professor de Banco de Dados está ensinando sobre transações e a importância das propriedades ACID (Atomicidade, Consistência, Isolamento, Durabilidade) para garantir a integridade dos dados em um sistema multiusuário. Ele percebe que os alunos entendem as propriedades de forma isolada, mas não compreendem como a falta de 'Isolamento' pode levar a problemas de concorrência. Para demonstrar o problema da 'leitura suja' (dirty read), ele propõe um cenário de um sistema bancário e se baseia em um texto de referência: "O Isolamento garante que transações concorrentes não interfiram umas com as outras, fazendo com que o resultado seja o mesmo como se as transações fossem executadas serialmente. Sem isolamento adequado, podem ocorrer vários problemas. Uma 'leitura suja' acontece quando uma Transação A lê um dado que foi modificado por uma Transação B que ainda não foi confirmada (commit). Se a Transação B falhar e for revertida (rollback), a Transação A terá lido um dado que 'nunca existiu', levando a inconsistências." O cenário proposto é o seguinte, envolvendo duas transações simultâneas:
Saldo inicial da Conta X: R$ 500
Transação 1 (T1): Inicia. Debita R$ 100 da Conta X. (Novo saldo temporário = R$ 400). **NÃO CONFIRMA (COMMIT) AINDA.**
Transação 2 (T2): Inicia. Lê o saldo da Conta X. Em um baixo nível de isolamento, ela lê o valor R$ 400 (uma 'leitura suja'). Com base nesse saldo, T2 autoriza um pagamento. **CONFIRMA (COMMIT).**
Transação 1 (T1): Ocorre uma falha. A transação é revertida (ROLLBACK). O saldo da Conta X volta a ser R$ 500.
Qual é a consequência direta do problema de 'leitura suja' neste cenário?