Вторая таблица с транзакциями

This commit is contained in:
2024-11-08 16:44:57 +03:00
parent 238f265363
commit 173c7568ca
4 changed files with 67 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

View File

@@ -750,4 +750,71 @@ $$;
\end{table}
В таблице~\ref{tbl:unrepeatable_read} представлены транзакции, на примере которых демонстрируется наличие артефакта <<Неповторяемое чтение>>.
\begin{table}[h!]
\centering
% \addtocounter{table}{-1}
\caption{Транзакции для демонстрации наличия артефакта <<Неповторяемое чтение>>.}
\label{tbl:unrepeatable_read}
\footnotesize
\begin{tabularx}{\textwidth}{|c|X|X|}
\hline
t & Транзакция 1 & Транзакция 2 \\
\hline
\multirow{3}{*}{} & \multicolumn{2}{c|}{
\specialcell{
В первой транзакции происходит чтение записи из таблицы \texttt{judge}. После чего эта же \\ запись обновляется во второй транзакции, изменения фиксируются и вторая транзакция \\ успешно завершается. Затем первая транзакция повторно считывает эту запись и получает \\обновлённые данные, а не исходные, из-за наличия артефакта <<Неповторяемое чтение>>.
}
}\\
\cline{2-3}
& \multicolumn{2}{c|}{Тут что-то ещё. }\\
\cline{2-3}
& \specialcell{Запуск транзакции 1 \\ \texttt{begin;}} & \specialcell{Запуск транзакции 2 \\ \texttt{begin;}}\\
\hline
$t_1$ &
\specialcell{
Получение имени судьи с \texttt{id\_judge = 201}\\ \\
\texttt{select id\_judge, name from judge}\\
\texttt{where id\_judge = 201;}\\
}
\includegraphics[width=1\linewidth]{img/transaction2_1.png}
&
\\
\hline
$t_2$ &
&
\specialcell{
Изменение имени судьи с \texttt{id\_judge = 201} \\
и фиксация транзакции\\ \\
\texttt{update judge set name = 'Софа'}\\
\texttt{where id\_judge = 201;}\\
\texttt{commit;}\\
}
\includegraphics[width=1\linewidth]{img/transaction2_2.png}
\\
\hline
$t_3$ &
\specialcell{
Получение имени судьи с \texttt{id\_judge = 201}\\
и фиксация транзакции \\ \\
\texttt{select id\_judge, name from judge}\\
\texttt{where id\_judge = 201;}\\
\texttt{commit;}\\
}
\includegraphics[width=1\linewidth]{img/transaction2_3.png}
&
\\
\hline
\end{tabularx}
\end{table}
\end{document}