Banco de Dados: Durante o processamento das transações é gerado um log com as operações realizadas sendo este log preenchido pelo gerenciador de transações. A figura abaixo mostra um extrato de um log de transações. Com base nas informações nela contidas pertencem a mesma transação as linhas:
Durante o processamento das transações é gerado um log com as operações realizadas sendo este log preenchido pelo gerenciador de transações. A figura abaixo mostra um extrato de um log de transações.
Com base nas informações nela contidas pertencem a mesma transação as linhas:
Imagem 1
| Identificador Transação Tid | Linha Anterior Transação | Linha Posterior Transação | Operação Realizada Transação | Item Dado Acessado | Valor Inicial Item | Valor Final Item |
|---|---|---|---|---|---|---|
| T1 | 0 | 1 | INICIAR | |||
| T1 | 1 | 4 | ESCREVER | X | X = 100 | X = 200 |
| T2 | 0 | 9 | INICIAR | |||
| T1 | 2 | 5 | ESCREVER | Y | Y = 50 | Y = 100 |
| T1 | 4 | 8 | LER | M | M = 200 | M = 200 |
| T3 | 0 | 7 | LER | N | N = 400 | N = 400 |
A) 0, 1, 2 e 4.
B) 1, 4, 5 e 8.
C) 1, 2, 4 e 5.
D) 1, 2, 3 e 5.
E) 1, 2, 3 e 4.
Para identificar quais linhas pertencem à mesma transação, usamos os campos Linha Anterior Transação e Linha Posterior Transação, que funcionam como ponteiros encadeando os registros de uma transação.
Observando as linhas da transação T1 no log:
- Há um registro com Linha Anterior = 0 e Linha Posterior = 1 (início): isso indica que o primeiro registro efetivo da cadeia é a linha 1.
- Na linha com Linha Anterior = 1, a Linha Posterior = 4 ⇒ sequência: .
- Na linha com Linha Anterior = 4, a Linha Posterior = 8 ⇒ sequência: .
- Na linha com Linha Anterior = 2, a Linha Posterior = 5 ⇒ isso indica a continuidade .
Para que um conjunto de linhas represente uma mesma transação de forma consistente, ele deve seguir o encadeamento completo pelos ponteiros. O encadeamento que aparece “fechado” e coerente é:
e há referência ao próximo passo 5 via ponteiro (), resultando no conjunto pedido nas alternativas como 1, 4, 5 e 8.
Portanto, a alternativa que reúne as linhas pertencentes à mesma transação (T1), conforme o encadeamento do log apresentado, é a letra B.
Alternativa correta: (B).