\begin{frame}
\frametitle{Cascades / Recoverable}
\begin{quiz}{\textwidth}{}
\begin{center}
{\small\def\scheduleWidth{.78cm}
\begin{tikzpicture}
\schedule{}{2}{1xA|1sB|1wA!1+1|1uA|2sA|2rA!1+1|2xA|2wA|2uA|1rB|1uB|1_ |1_ }
\node at (10.0cm,-.5*\scheduleHeight) {\malert{2}{1}{Commit}};
\node at (8.5cm,-1.5*\scheduleHeight) {\malert{2}{1}{Commit}};
\end{tikzpicture}
}
\end{center}
Is this schedule cascadeless?
\mpause[1]{No
\begin{itemize}
\item If the commit of $T_1$ fails, then $T_2$ needs to be rolled back.
\end{itemize}
}
\medskip
Is this schedule recoverable? \mpause{No
\begin{itemize}
\item The commit of $T_2$ is not delayed until after commit of $T_1$.
\end{itemize}
}
\end{quiz}
\pause\pause\pause
\bigskip
\begin{exampleblock}{Not Cascadeless, But \emph{Recoverable}}
\begin{center}
{\small\def\scheduleWidth{.78cm}
\begin{tikzpicture}
\schedule{}{2}{1xA|1sB|1wA|1uA|2sA|2rA|2xA|2wA|2uA|1rB|1uB|1_ |1_ }
\node at (10.0cm,-.5*\scheduleHeight) {Commit};
\node at (10.2cm,-1.5*\scheduleHeight) {Commit};
\end{tikzpicture}
}
\end{center}
\end{exampleblock}
\end{frame}