\label{doc_decisions_6_implemented_memory_layout_md_md_doc_decisions_6_implemented_memory_layout}%
\Hypertarget{doc_decisions_6_implemented_memory_layout_md_md_doc_decisions_6_implemented_memory_layout}%
 \hypertarget{doc_decisions_6_implemented_memory_layout_md_autotoc_md2423}{}\doxysection{Problem}\label{doc_decisions_6_implemented_memory_layout_md_autotoc_md2423}
{\ttfamily mmapstorage} leaks internals of the {\ttfamily struct \+\_\+\+Key}.\hypertarget{doc_decisions_6_implemented_memory_layout_md_autotoc_md2424}{}\doxysection{Constraints}\label{doc_decisions_6_implemented_memory_layout_md_autotoc_md2424}
\hypertarget{doc_decisions_6_implemented_memory_layout_md_autotoc_md2425}{}\doxysection{Assumptions}\label{doc_decisions_6_implemented_memory_layout_md_autotoc_md2425}
\hypertarget{doc_decisions_6_implemented_memory_layout_md_autotoc_md2426}{}\doxysection{Considered Alternatives}\label{doc_decisions_6_implemented_memory_layout_md_autotoc_md2426}

\begin{DoxyItemize}
\item don\textquotesingle{}t make {\ttfamily Key} opaque
\item don\textquotesingle{}t provide {\ttfamily mmapstorage}
\end{DoxyItemize}\hypertarget{doc_decisions_6_implemented_memory_layout_md_autotoc_md2427}{}\doxysection{Decision}\label{doc_decisions_6_implemented_memory_layout_md_autotoc_md2427}
Have versioning and memory layout checks¹ of cache files written by {\ttfamily mmapstorage}. The cache files get discarded if these checks fail.\hypertarget{doc_decisions_6_implemented_memory_layout_md_autotoc_md2428}{}\doxysection{Rationale}\label{doc_decisions_6_implemented_memory_layout_md_autotoc_md2428}

\begin{DoxyItemize}
\item will also discard cache files from different architectures
\item representation of {\ttfamily struct \+\_\+\+Key} can be changed as wanted
\end{DoxyItemize}\hypertarget{doc_decisions_6_implemented_memory_layout_md_autotoc_md2429}{}\doxysection{Implications}\label{doc_decisions_6_implemented_memory_layout_md_autotoc_md2429}
See Rationale.\hypertarget{doc_decisions_6_implemented_memory_layout_md_autotoc_md2430}{}\doxysection{Related Decisions}\label{doc_decisions_6_implemented_memory_layout_md_autotoc_md2430}
\hypertarget{doc_decisions_6_implemented_memory_layout_md_autotoc_md2431}{}\doxysection{Notes}\label{doc_decisions_6_implemented_memory_layout_md_autotoc_md2431}
¹ A {\ttfamily Key\+Set} with known content gets written and mmapstorage checks if this {\ttfamily Key\+Set} was restored correctly. 