summaryrefslogtreecommitdiff
path: root/src/docs/processes.dox
diff options
context:
space:
mode:
authorMichael Cahill <michael.cahill@wiredtiger.com>2012-05-09 23:23:43 +1000
committerMichael Cahill <michael.cahill@wiredtiger.com>2012-05-09 23:23:43 +1000
commite0c96aa3ab7b006c7334030d94d46558b41ca33e (patch)
tree657d033eb23a2fcb99453c33dd99c290b9dd9647 /src/docs/processes.dox
parent4feb6ae1ca7c225d867750330c8a5b7fabc75624 (diff)
downloadmongo-e0c96aa3ab7b006c7334030d94d46558b41ca33e.tar.gz
Move docs/src to src/docs.
#199 --HG-- rename : docs/Doxyfile => src/docs/Doxyfile rename : docs/Makefile => src/docs/Makefile rename : docs/src/architecture.dox => src/docs/architecture.dox rename : docs/src/basic-api.dox => src/docs/basic-api.dox rename : docs/build-javadoc.sh => src/docs/build-javadoc.sh rename : docs/build-pydoc.sh => src/docs/build-pydoc.sh rename : docs/src/command-line.dox => src/docs/command-line.dox rename : docs/src/compression.dox => src/docs/compression.dox rename : docs/src/config-file.dox => src/docs/config-file.dox rename : docs/src/config-strings.dox => src/docs/config-strings.dox rename : docs/src/cursor-ops.dox => src/docs/cursor-ops.dox rename : docs/src/cursors.dox => src/docs/cursors.dox rename : docs/src/data_sources.dox => src/docs/data_sources.dox rename : docs/src/dump-formats.dox => src/docs/dump-formats.dox rename : docs/src/examples.dox => src/docs/examples.dox rename : docs/src/file-formats.dox => src/docs/file-formats.dox rename : docs/src/home.dox => src/docs/home.dox rename : docs/src/huffman.dox => src/docs/huffman.dox rename : docs/images/LogoFace-watermark.png => src/docs/images/LogoFace-watermark.png rename : docs/images/LogoFinal-header.png => src/docs/images/LogoFinal-header.png rename : docs/images/architecture.pdf => src/docs/images/architecture.pdf rename : docs/images/architecture.png => src/docs/images/architecture.png rename : docs/src/install.dox => src/docs/install.dox rename : docs/src/introduction.dox => src/docs/introduction.dox rename : docs/src/keyvalue.dox => src/docs/keyvalue.dox rename : docs/src/license.dox => src/docs/license.dox rename : docs/src/namespace.dox => src/docs/namespace.dox rename : docs/src/packing.dox => src/docs/packing.dox rename : docs/src/processes.dox => src/docs/processes.dox rename : docs/src/schema.dox => src/docs/schema.dox rename : docs/src/security.dox => src/docs/security.dox rename : docs/src/signals.dox => src/docs/signals.dox rename : docs/src/snapshot.dox => src/docs/snapshot.dox rename : docs/src/spell.ok => src/docs/spell.ok rename : docs/src/sql-map.dox => src/docs/sql-map.dox rename : docs/style/DoxygenLayout.xml => src/docs/style/DoxygenLayout.xml rename : docs/style/background_navigation.png => src/docs/style/background_navigation.png rename : docs/style/doxygen.png => src/docs/style/doxygen.png rename : docs/style/footer.html => src/docs/style/footer.html rename : docs/style/header.html => src/docs/style/header.html rename : docs/style/img_downArrow.png => src/docs/style/img_downArrow.png rename : docs/style/javadoc.css => src/docs/style/javadoc.css rename : docs/style/tabs.css => src/docs/style/tabs.css rename : docs/style/wiredtiger.css => src/docs/style/wiredtiger.css rename : docs/src/threads.dox => src/docs/threads.dox rename : docs/tools/doxypy.py => src/docs/tools/doxypy.py rename : docs/tools/fixlinks.py => src/docs/tools/fixlinks.py rename : docs/tools/pyfilter => src/docs/tools/pyfilter rename : docs/src/transactions.dox => src/docs/transactions.dox rename : docs/src/tuning.dox => src/docs/tuning.dox rename : docs/src/using.dox => src/docs/using.dox
Diffstat (limited to 'src/docs/processes.dox')
-rw-r--r--src/docs/processes.dox28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/docs/processes.dox b/src/docs/processes.dox
new file mode 100644
index 00000000000..87f715792f9
--- /dev/null
+++ b/src/docs/processes.dox
@@ -0,0 +1,28 @@
+/*! @page processes Sharing Between Processes
+
+@notyet{inter-process sharing}
+
+WiredTiger includes a server that provides remote access to databases. The primary process to open a database can optionally start a server that handles requests from other processes.
+
+The remote interface is the way languages other than C/C++ are supported, and the interface for client processes in multiprocess C/C++ applications.
+
+The server can be embedded in an application or run from the command line. To embed the RPC server in your application, pass <code>"multiprocess"</code> in the configuration string to ::wiredtiger_open. Note that in this case, when your application exits, all client connections are forcibly closed.
+
+For details on running a standalone RPC server, see @ref utility.
+
+@section processes_sharing Opening connections from multiple processes
+
+When ::wiredtiger_open is called for a database, one of the following occurs:
+
+# no process has the database open, it was closed cleanly. In this case, the opening process becomes the primary process and the database is opened without recovery.
+# no process has the database open, but it was not closed cleanly. In this case, the process becomes the primary and recovery is run before the database is opened. See @ref transaction_recovery for details.
+# another process has the database open and is running the RPC server, in which case the opening process becomes a client.
+# another process has the database open but is not running the RPC server, in which case the open fails.
+
+@section processes_example Code samples
+
+The code below is taken from the complete example program @ex_ref{ex_process.c}.
+
+@snippet ex_process.c processes
+
+ */