Imagem de fundo

Em um ambiente de banco de dados de um sistema bancário...

Em um ambiente de banco de dados de um sistema bancário, duas transações são executadas simultaneamente: uma delas adquire bloqueio exclusivo em A e, em seguida, em B; a outra adquire bloqueio exclusivo em B e, em seguida, em A. Ambas só liberam todos os bloqueios ao término da execução.


Nesse cenário, é mais provável que ocorra


A

starvation da transação mais lenta, sendo a melhor prevenção a implementação de um escalonador baseado em prioridades.


B

violação de isolamento, sendo a melhor prevenção a elevação do nível de isolamento para serializable.


C

detecção de deadlock por timeout, sendo a melhor prevenção a imposição de limites de tempo para a aquisição de bloqueios.


D

deadlock, sendo a melhor prevenção a imposição de uma ordenação total aos recursos, exigindo-se que todas as transações adquiram bloqueios em uma mesma sequência predefinida.


E

condição de corrida (race condition), sendo a melhor prevenção a utilização de bloqueios compartilhados em vez de exclusivos.