Usually, a backend refers to exactly one file per namespace. This file can be returned using {\ttfamily kdb file}.\hypertarget{md_doc_decisions_multiple_file_backends_autotoc_md2052}{}\doxysection{Problem}\label{md_doc_decisions_multiple_file_backends_autotoc_md2052}
In some situations a single mountpoint refers to more than one file per namespace\+:


\begin{DoxyItemize}
\item For XDG in the {\ttfamily system} namespace may contain several files (XDG\+\_\+\+CONFIG\+\_\+\+DIRS).
\item A fallback file if some data cannot be stored in some format (Idea from @kodebach\+: writing the same content to several files, merging when reading)
\end{DoxyItemize}\hypertarget{md_doc_decisions_multiple_file_backends_autotoc_md2053}{}\doxysection{Constraints}\label{md_doc_decisions_multiple_file_backends_autotoc_md2053}
\hypertarget{md_doc_decisions_multiple_file_backends_autotoc_md2054}{}\doxysection{Assumptions}\label{md_doc_decisions_multiple_file_backends_autotoc_md2054}
\hypertarget{md_doc_decisions_multiple_file_backends_autotoc_md2055}{}\doxysection{Considered Alternatives}\label{md_doc_decisions_multiple_file_backends_autotoc_md2055}
\hypertarget{md_doc_decisions_multiple_file_backends_autotoc_md2056}{}\doxysection{Decision}\label{md_doc_decisions_multiple_file_backends_autotoc_md2056}
Multiple File Backends are not supported for now in the case of writing files.

Multiple sources in one namespace only work, if the fallback Key\+Set is part of the mountpoint config. That way any change to the fallback Key\+Set would essentially make the whole thing a different mountpoint and thereby invalidate all guarantees.\hypertarget{md_doc_decisions_multiple_file_backends_autotoc_md2057}{}\doxysection{Rationale}\label{md_doc_decisions_multiple_file_backends_autotoc_md2057}
Writeable multiple file backends would\+:


\begin{DoxyItemize}
\item make it impossible for admins to modify content of all files using Elektra
\item do not work atomically (a journal would be needed)
\item do not work together with mmap (as it only checks one file for cache misses)
\end{DoxyItemize}\hypertarget{md_doc_decisions_multiple_file_backends_autotoc_md2058}{}\doxysection{Implications}\label{md_doc_decisions_multiple_file_backends_autotoc_md2058}
\hypertarget{md_doc_decisions_multiple_file_backends_autotoc_md2059}{}\doxysection{Related Decisions}\label{md_doc_decisions_multiple_file_backends_autotoc_md2059}
\hypertarget{md_doc_decisions_multiple_file_backends_autotoc_md2060}{}\doxysection{Notes}\label{md_doc_decisions_multiple_file_backends_autotoc_md2060}
