
\begin{DoxyItemize}
\item infos = Information about the process plugin is in keys below
\item infos/author = Armin Wurzinger \href{mailto:e1528532@libelektra.org}{\tt e1528532@libelektra.\+org}
\item infos/licence = B\+SD
\item infos/needs =
\item infos/provides =
\item infos/recommends =
\item infos/placements = pregetstorage getstorage postgetstorage presetstorage setstorage
\item infos/status = maintained unittest shelltest configurable experimental unfinished
\item infos/metadata =
\item infos/description = executes other plugins inside an own process
\end{DoxyItemize}

The process plugin uses the {\ttfamily pluginprocess} library in order to execute other plugins inside an own process. This is useful for runtimes or libraries that cannot be reinitialized in the same process after they have been used. It is also useful for plugins which cause memory leaks to be isolated in an own process.

Mount this plugin and specify the plugin configuration parameter {\ttfamily plugin} to a plugin that exists on the system. The proxied plugin will then be executed in a separate process and this plugin handles the communication between the processes.

The {\ttfamily pluginprocess} library, which is only available on P\+O\+S\+IX environments currently.

``{\ttfamily  @section autotoc\+\_\+md505 Mount the dump plugin a separate process via the process plugin to}user\+:/examples/process` sudo kdb mount config.\+file user\+:/tests/process process plugin=dump

kdb set user\+:/tests/process/key value \#$>$ Create a new key user\+:/tests/process/key with string \char`\"{}value\char`\"{}

kdb get user\+:/tests/process/key \#$>$ value\hypertarget{autotoc_md501_autotoc_md506}{}\section{Undo modifications}\label{autotoc_md501_autotoc_md506}
kdb rm -\/r user\+:/tests/process sudo kdb umount user\+:/tests/process ```\hypertarget{autotoc_md501_autotoc_md507}{}\subsection{Limitations}\label{autotoc_md501_autotoc_md507}

\begin{DoxyItemize}
\item Currently only plugins that act on one of the above-\/mentioned {\ttfamily placements} can be proxied successfully. Other metainformation like {\ttfamily needs} or {\ttfamily provides} or {\ttfamily recommends} will not be available when proxying using this plugin.
\item This plugin cannot act as a proxy for itself to prevent loops. 
\end{DoxyItemize}