Considere um sistema de gerenciamento de banco de dados (SGBD) que implementa o controle de concorrência por meio do protocolo de bloqueio de duas fases (2PL - Two-Phase Locking). Um analista de banco de dados observa que, em certas situações de alta concorrência envolvendo transações que acessam os mesmos itens de dados, o SGBD experimenta uma degradação de desempenho significativa, principalmente devido a esperas e aborts. Qual das alternativas a seguir descreve corretamente uma característica ou consequência do protocolo 2PL que pode levar a esse cenário de gargalo?
- A)O 2PL garante que as transações leiam apenas dados confirmados, eliminando leituras sujas (dirty reads).
- B)O 2PL permite que as transações liberem bloqueios a qualquer momento, desde que todos os bloqueios necessários tenham sido adquiridos.
- C)O 2PL, em sua versão estrita (Rigorous 2PL), pode introduzir deadlocks e contenção de bloqueios devido à fase de crescimento e encolhimento.gabarito
- D)O 2PL exige que todas as transações adquiram todos os bloqueios necessários antes de iniciar qualquer operação de leitura ou escrita.
- E)O 2PL sempre utiliza bloqueios de nível de linha, independentemente da granularidade de acesso dos dados.