You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by dc...@apache.org on 2012/09/26 16:49:59 UTC

[1/2] git commit: docs: refactor 1.1.x features and other into 1.2.0 docs

Updated Branches:
  refs/heads/docs 838cf30be -> bc489a331


docs: refactor 1.1.x features and other into 1.2.0 docs


Project: http://git-wip-us.apache.org/repos/asf/couchdb/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb/commit/bc489a33
Tree: http://git-wip-us.apache.org/repos/asf/couchdb/tree/bc489a33
Diff: http://git-wip-us.apache.org/repos/asf/couchdb/diff/bc489a33

Branch: refs/heads/docs
Commit: bc489a331a9a152178a02f506531e65c6ea5f17e
Parents: 57d7a58
Author: Dave Cottlehuber <dc...@apache.org>
Authored: Wed Sep 26 16:06:23 2012 +0200
Committer: Dave Cottlehuber <dc...@apache.org>
Committed: Wed Sep 26 16:44:47 2012 +0200

----------------------------------------------------------------------
 share/docs/rst/api-basics.rst       |   14 +-
 share/docs/rst/api/design.rst       |    2 +
 share/docs/rst/changes.rst          |    5 +-
 share/docs/rst/commonjs.rst         |   30 +--
 share/docs/rst/config_reference.rst |  276 +++++++++++++++++++
 share/docs/rst/configuring.rst      |  427 +-----------------------------
 share/docs/rst/ddocs.rst            |    1 +
 share/docs/rst/errors.rst           |   25 ++
 share/docs/rst/features.rst         |  191 -------------
 share/docs/rst/http-proxying.rst    |   82 ++++++
 share/docs/rst/index.rst            |   28 ++-
 share/docs/rst/os-daemons.rst       |   38 +++
 share/docs/rst/other.rst            |  148 -----------
 share/docs/rst/proxy.rst            |   80 ------
 share/docs/rst/replication.rst      |    2 +
 15 files changed, 481 insertions(+), 868 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/api-basics.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/api-basics.rst b/share/docs/rst/api-basics.rst
index 87f2c21..4117f92 100644
--- a/share/docs/rst/api-basics.rst
+++ b/share/docs/rst/api-basics.rst
@@ -208,7 +208,19 @@ below.
 -  ``Etag``
 
    The ``Etag`` HTTP header field is used to show the revision for a
-   document.
+   document, or a view.
+
+   ETags have been assigned to a map/reduce group (the collection of
+   views in a single design document). Any change to any of the indexes
+   for those views would generate a new ETag for all view URL's in a
+   single design doc, even if that specific view's results had not
+   changed.
+
+   Each ``_view`` URL has its own ETag which only gets updated when
+   changes are made to the database that effect that index. If the
+   index for that specific view does not change, that view keeps the
+   original ETag head (therefore sending back 304 Not Modified more
+   often).
 
 .. _json:
 

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/api/design.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/api/design.rst b/share/docs/rst/api/design.rst
index fc7621b..e1dd212 100644
--- a/share/docs/rst/api/design.rst
+++ b/share/docs/rst/api/design.rst
@@ -455,6 +455,8 @@ The individual fields in the returned JSON structure are detailed below:
 
 .. _api-get-view:
 
+.. _views:
+
 ``GET /db/_design/design-doc/_view/view-name``
 ==============================================
 

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/changes.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/changes.rst b/share/docs/rst/changes.rst
index 8c7d5c0..e683606 100644
--- a/share/docs/rst/changes.rst
+++ b/share/docs/rst/changes.rst
@@ -4,6 +4,10 @@
 Changes Feed
 ============
 
+The ``_changes`` feed can now be used to watch changes to specific
+document ID's or the list of ``_design`` documents in a database. If the
+``filters`` parameter is set to ``_doc_ids`` a list of doc IDs can be
+passed in the "doc_ids" as a JSON array.
  
 
 Polling
@@ -25,4 +29,3 @@ Filters
 =======
 
  
-

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/commonjs.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/commonjs.rst b/share/docs/rst/commonjs.rst
index 113c024..5b1144f 100644
--- a/share/docs/rst/commonjs.rst
+++ b/share/docs/rst/commonjs.rst
@@ -1,29 +1,21 @@
-Added CommonJS support to map functions
-=======================================
-
-We didn't have `CommonJS`_ require in map functions because the current
-CommonJS implementation is scoped to the whole design doc, and giving
-views access to load code from anywhere in the design doc would mean
-we'd have to blow away your view index any time you changed anything.
-Having to rebuild views from scratch just because you changed some CSS
-or a show function isn't fun, so we avoided the issue by keeping
-CommonJS require out of map and reduce altogether.
-
-The solution we came up with is to allow CommonJS inside map and reduce
-functions, but only of libraries that are stored inside the views part of the
-design doc.
-
-So you could continue to access CommonJS code in ``design_doc.foo``, from
+CommonJS support for map functions
+==================================
+
+CommonJS support allows you to use CommonJS notation inside map and
+reduce functions, but only of libraries that are stored inside the views
+part of the design doc.
+
+So you could continue to access CommonJS code in design\_doc.foo, from
 your list functions etc, but we'd add the ability to require CommonJS
-modules within map and reduce, but only from ``design_doc.views.lib``
+modules within map and reduce, but only from ``design_doc.views.lib``.
 
 There's no worry here about namespace collisions, as Couch just plucks
 ``views.*.map`` and ``views.*.reduce`` out of the design doc. So you
 could have a view called ``lib`` if you wanted, and still have CommonJS
 stored in ``views.lib.sha1`` and ``views.lib.stemmer`` if you wanted.
 
-We simplified the implementation by enforcing that CommonJS modules to
-be used in map functions be stored in ``views.lib``.
+The implementation is simplified by enforcing that CommonJS modules to
+be used in map functions be stored in views.lib.
 
 A sample design doc (taken from the test suite in Futon) is below:
 

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/config_reference.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/config_reference.rst b/share/docs/rst/config_reference.rst
new file mode 100644
index 0000000..e2fde57
--- /dev/null
+++ b/share/docs/rst/config_reference.rst
@@ -0,0 +1,276 @@
+Configuration options reference
+===============================
+
+
+Configuration Groups
+--------------------
+
++----------------------------------+-------------------------------------------+
+| Section                          | Description                               |
++==================================+===========================================+
+| attachments                      | Attachment options                        |
++----------------------------------+-------------------------------------------+
+| couchdb                          | CouchDB specific options                  |
++----------------------------------+-------------------------------------------+
+| couch_httpd_auth                 | HTTPD Authentication options              |
++----------------------------------+-------------------------------------------+
+| daemons                          | Daemons and background processes          |
++----------------------------------+-------------------------------------------+
+| httpd                            | HTTPD Server options                      |
++----------------------------------+-------------------------------------------+
+| httpd_db_handlers                | Database Operation handlers               |
++----------------------------------+-------------------------------------------+
+| httpd_design_handlers            | Handlers for design document operations   |
++----------------------------------+-------------------------------------------+
+| httpd_global_handlers            | Handlers for global operations            |
++----------------------------------+-------------------------------------------+
+| log                              | Logging options                           |
++----------------------------------+-------------------------------------------+
+| query_servers                    | Query Server options                      |
++----------------------------------+-------------------------------------------+
+| query_server_config              | Query server options                      |
++----------------------------------+-------------------------------------------+
+| replicator                       | Replicator Options                        |
++----------------------------------+-------------------------------------------+
+| ssl                              | SSL (Secure Sockets Layer) Options        |
++----------------------------------+-------------------------------------------+
+| stats                            | Statistics options                        |
++----------------------------------+-------------------------------------------+
+| uuids                            | UUID generation options                   |
++----------------------------------+-------------------------------------------+
+
+attachments Configuration Options
+---------------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| compressible_types                   | compressible_types                    |
++--------------------------------------+---------------------------------------+
+| compression_level                    | compression_level                     |
++--------------------------------------+---------------------------------------+
+
+couchdb Configuration Options
+-----------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| database_dir                         | database_dir                          |
++--------------------------------------+---------------------------------------+
+| delayed_commits                      | delayed_commits                       |
++--------------------------------------+---------------------------------------+
+| max_attachment_chunk_size            | max_attachment_chunk_size             |
++--------------------------------------+---------------------------------------+
+| max_dbs_open                         | max_dbs_open                          |
++--------------------------------------+---------------------------------------+
+| max_document_size                    | max_document_size                     |
++--------------------------------------+---------------------------------------+
+| os_process_timeout                   | os_process_timeout                    |
++--------------------------------------+---------------------------------------+
+| uri_file                             | uri_file                              |
++--------------------------------------+---------------------------------------+
+| util_driver_dir                      | util_driver_dir                       |
++--------------------------------------+---------------------------------------+
+| view_index_dir                       | view_index_dir                        |
++--------------------------------------+---------------------------------------+
+
+daemons Configuration Options
+-----------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| auth_cache                           | auth_cache                            |
++--------------------------------------+---------------------------------------+
+| db_update_notifier                   | db_update_notifier                    |
++--------------------------------------+---------------------------------------+
+| external_manager                     | external_manager                      |
++--------------------------------------+---------------------------------------+
+| httpd                                | httpd                                 |
++--------------------------------------+---------------------------------------+
+| httpsd                               | Enabled HTTPS service                 |
++--------------------------------------+---------------------------------------+
+| query_servers                        | query_servers                         |
++--------------------------------------+---------------------------------------+
+| stats_aggregator                     | stats_aggregator                      |
++--------------------------------------+---------------------------------------+
+| stats_collector                      | stats_collector                       |
++--------------------------------------+---------------------------------------+
+| uuids                                | uuids                                 |
++--------------------------------------+---------------------------------------+
+| view_manager                         | view_manager                          |
++--------------------------------------+---------------------------------------+
+
+httpd_db_handlers Configuration Options
+---------------------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| _changes                             | _changes                              |
++--------------------------------------+---------------------------------------+
+| _compact                             | _compact                              |
++--------------------------------------+---------------------------------------+
+| _design                              | _design                               |
++--------------------------------------+---------------------------------------+
+| _temp_view                           | _temp_view                            |
++--------------------------------------+---------------------------------------+
+| _view_cleanup                        | _view_cleanup                         |
++--------------------------------------+---------------------------------------+
+
+couch_httpd_auth Configuration Options
+--------------------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| auth_cache_size                      | auth_cache_size                       |
++--------------------------------------+---------------------------------------+
+| authentication_db                    | authentication_db                     |
++--------------------------------------+---------------------------------------+
+| authentication_redirect              | authentication_redirect               |
++--------------------------------------+---------------------------------------+
+| require_valid_user                   | require_valid_user                    |
++--------------------------------------+---------------------------------------+
+| timeout                              | timeout                               |
++--------------------------------------+---------------------------------------+
+
+httpd Configuration Options
+---------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| allow_jsonp                          | allow_jsonp                           |
++--------------------------------------+---------------------------------------+
+| authentication_handlers              | authentication_handlers               |
++--------------------------------------+---------------------------------------+
+| bind_address                         | bind_address                          |
++--------------------------------------+---------------------------------------+
+| default_handler                      | default_handler                       |
++--------------------------------------+---------------------------------------+
+| max_connections                      | max_connections                       |
++--------------------------------------+---------------------------------------+
+| nodelay                              | Enable TCP_NODELAY                    |
++--------------------------------------+---------------------------------------+
+| port                                 | port                                  |
++--------------------------------------+---------------------------------------+
+| secure_rewrites                      | secure_rewrites                       |
++--------------------------------------+---------------------------------------+
+| vhost_global_handlers                | vhost_global_handlers                 |
++--------------------------------------+---------------------------------------+
+
+httpd_design_handlers Configuration Options
+-------------------------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| _info                                | _info                                 |
++--------------------------------------+---------------------------------------+
+| _list                                | _list                                 |
++--------------------------------------+---------------------------------------+
+| _rewrite                             | _rewrite                              |
++--------------------------------------+---------------------------------------+
+| _show                                | _show                                 |
++--------------------------------------+---------------------------------------+
+| _update                              | _update                               |
++--------------------------------------+---------------------------------------+
+| _view                                | _view                                 |
++--------------------------------------+---------------------------------------+
+
+httpd_global_handlers Configuration Options
+-------------------------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| /                                    | /                                     |
++--------------------------------------+---------------------------------------+
+| _active_tasks                        | _active_tasks                         |
++--------------------------------------+---------------------------------------+
+| _all_dbs                             | _all_dbs                              |
++--------------------------------------+---------------------------------------+
+| _config                              | _config                               |
++--------------------------------------+---------------------------------------+
+| _log                                 | _log                                  |
++--------------------------------------+---------------------------------------+
+| _oauth                               | _oauth                                |
++--------------------------------------+---------------------------------------+
+| _replicate                           | _replicate                            |
++--------------------------------------+---------------------------------------+
+| _restart                             | _restart                              |
++--------------------------------------+---------------------------------------+
+| _session                             | _session                              |
++--------------------------------------+---------------------------------------+
+| _stats                               | _stats                                |
++--------------------------------------+---------------------------------------+
+| _utils                               | _utils                                |
++--------------------------------------+---------------------------------------+
+| _uuids                               | _uuids                                |
++--------------------------------------+---------------------------------------+
+| favicon.ico                          | favicon.ico                           |
++--------------------------------------+---------------------------------------+
+
+log Configuration Options
+-------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| file                                 | file                                  |
++--------------------------------------+---------------------------------------+
+| include_sasl                         | include_sasl                          |
++--------------------------------------+---------------------------------------+
+| level                                | level                                 |
++--------------------------------------+---------------------------------------+
+
+query_servers Configuration Options
+-----------------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| javascript                           | javascript                            |
++--------------------------------------+---------------------------------------+
+
+query_server_config Configuration Options
+-----------------------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| reduce_limit                         | reduce_limit                          |
++--------------------------------------+---------------------------------------+
+
+replicator Configuration Options
+--------------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| max_http_pipeline_size               | max_http_pipeline_size                |
++--------------------------------------+---------------------------------------+
+| max_http_sessions                    | max_http_sessions                     |
++--------------------------------------+---------------------------------------+
+
+stats Configuration Options
+---------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| rate                                 | rate                                  |
++--------------------------------------+---------------------------------------+
+| samples                              | samples                               |
++--------------------------------------+---------------------------------------+
+
+uuids Configuration Options
+---------------------------
+
++--------------------------------------+---------------------------------------+
+| Option                               | Description                           |
++======================================+=======================================+
+| algorithm                            | algorithm                             |
++--------------------------------------+---------------------------------------+

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/configuring.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/configuring.rst b/share/docs/rst/configuring.rst
index d2e1477..3778d44 100644
--- a/share/docs/rst/configuring.rst
+++ b/share/docs/rst/configuring.rst
@@ -34,6 +34,14 @@ entries. For example, setting the ``bind_address`` parameter in
    re-installation, so localised changes should be made to the
    ``local.ini`` file or files within the ``local.d`` directory.
 
+.. _update-notifications:
+
+Update Notifications
+====================
+
+.. todo:: Update Notifications
+
+
 MochiWeb Server Options
 =======================
 
@@ -45,51 +53,6 @@ option of the ``[httpd]`` section of ``local.ini``. For example:
 
     [httpd]
     server_options = [{backlog, 128}, {acceptor_pool_size, 16}]
-           
-
-OS Daemons
-==========
-
-CouchDB now supports starting external processes. The support is simple
-and enables CouchDB to start each configured OS daemon. If the daemon
-stops at any point, CouchDB will restart it (with protection to ensure
-regularly failing daemons are not repeatedly restarted).
-
-The daemon starting process is one-to-one; for each each configured
-daemon in the configuration file, CouchDB will start exactly one
-instance. If you need to run multiple instances, then you must create
-separate individual configurations. Daemons are configured within the
-``[os_daemons]`` section of your configuration file (``local.ini``). The
-format of each configured daemon is:
-
-.. code-block:: ini
-
-    NAME = PATH ARGS
-
-Where ``NAME`` is an arbitrary (and unique) name to identify the daemon;
-``PATH`` is the full path to the daemon to be executed; ``ARGS`` are any
-required arguments to the daemon.
-
-For example:
-
-.. code-block:: ini
-
-    [os_daemons]
-    basic_responder = /usr/local/bin/responsder.js
-
-There is no interactivity between CouchDB and the running process, but
-you can use the OS Daemons service to create new HTTP servers and
-responders and then use the new proxy service to redirect requests and
-output to the CouchDB managed service. For more information on proxying,
-see :ref:`proxying`. For further background on the OS Daemon service, see
-`CouchDB Externals API`_.
-
-.. _update-notifications:
-
-Update Notifications
-====================
-
-.. todo:: Update Notifications
 
 Socket Options Configuration Setting
 ====================================
@@ -109,6 +72,8 @@ The options supported are a subset of full options supported by the
 TCP/IP stack. A list of the supported options are provided in the
 `Erlang inet`_ documentation.
 
+.. _Erlang inet: http://www.erlang.org/doc/man/inet.html#setopts-2
+
 ``vhosts`` definitions
 ======================
 
@@ -116,375 +81,3 @@ Similar to the rewrites section of a ``_design`` document, the
 ``vhosts`` system uses variables in the form of ``:varname`` or wildcards in
 the form of asterisks. The variable results can be output into the
 resulting path as they are in the rewriter.
-
-Configuring SSL Network Sockets
-===============================
-
-SSL configuration in CouchDB was designed to be as easy as possible. All
-you need is two files; a certificate and a private key. If you bought an
-official SSL certificate from a certificate authority, both should be in
-your possession already.
-
-If you just want to try this out and don't want to pay anything upfront,
-you can create a self-signed certificate. Everything will work the same,
-but clients will get a warning about an insecure certificate.
-
-You will need the OpenSSL command line tool installed. It probably
-already is.
-
-.. code-block:: bash
-
-    shell> mkdir cert && cd cert
-    shell> openssl genrsa > privkey.pem
-    shell> openssl req -new -x509 -key privkey.pem -out mycert.pem -days 1095
-    shell> ls
-    mycert.pem privkey.pem
-
-Now, you need to edit CouchDB's configuration, either by editing your
-``local.ini`` file or using the ``/_config`` API calls or the
-configuration screen in Futon. Here is what you need to do in
-``local.ini``, you can infer what needs doing in the other places.
-
-Be sure to make these edits. Under ``[daemons]`` you should see:
-
-.. code-block:: ini
-
-    ; enable SSL support by uncommenting the following line and supply the PEM's below.
-    ; the default ssl port CouchDB listens on is 6984
-    ;httpsd = {couch_httpd, start_link, [https]}
-
-Here uncomment the last line:
-
-.. code-block:: ini
-
-    httpsd = {couch_httpd, start_link, [https]}
-
-Next, under ``[ssl]`` you will see:
-
-.. code-block:: ini
-
-    ;cert_file = /full/path/to/server_cert.pem
-    ;key_file = /full/path/to/server_key.pem
-
-Uncomment and adjust the paths so it matches your system's paths:
-
-.. code-block:: ini
-
-    cert_file = /home/jan/cert/mycert.pem
-    key_file = /home/jan/cert/privkey.pem
-
-For more information please read
-`http://www.openssl.org/docs/HOWTO/certificates.txt`_.
-
-Now start (or restart) CouchDB. You should be able to connect to it
-using HTTPS on port 6984:
-
-.. code-block:: bash
-
-    shell> curl https://127.0.0.1:6984/
-    curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
-    error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
-    More details here: http://curl.haxx.se/docs/sslcerts.html
-
-    curl performs SSL certificate verification by default, using a "bundle"
-    of Certificate Authority (CA) public keys (CA certs). If the default
-    bundle file isn't adequate, you can specify an alternate file
-    using the --cacert option.
-    If this HTTPS server uses a certificate signed by a CA represented in
-    the bundle, the certificate verification probably failed due to a
-    problem with the certificate (it might be expired, or the name might
-    not match the domain name in the URL).
-    If you'd like to turn off curl's verification of the certificate, use
-    the -k (or --insecure) option.
-
-Oh no what happened?! — Remember, clients will notify their users that
-your certificate is self signed. ``curl`` is the client in this case and
-it notifies you. Luckily you trust yourself (don't you?) and you can
-specify the ``-k`` option as the message reads:
-
-.. code-block:: bash
-
-    shell> curl -k https://127.0.0.1:6984/
-    {"couchdb":"Welcome","version":"|version|"}
-
-.. _CouchDB Externals API: http://davispj.com/2010/09/26/new-couchdb-externals-api.html
-.. _Erlang inet: http://www.erlang.org/doc/man/inet.html#setopts-2
-.. _`http://www.openssl.org/docs/HOWTO/certificates.txt`: http://www.openssl.org/docs/HOWTO/certificates.txt
-
-
-Configuration options reference
-===============================
-
-
-Configuration Groups
---------------------
-
-+----------------------------------+-------------------------------------------+
-| Section                          | Description                               |
-+==================================+===========================================+
-| attachments                      | Attachment options                        |
-+----------------------------------+-------------------------------------------+
-| couchdb                          | CouchDB specific options                  |
-+----------------------------------+-------------------------------------------+
-| couch_httpd_auth                 | HTTPD Authentication options              |
-+----------------------------------+-------------------------------------------+
-| daemons                          | Daemons and background processes          |
-+----------------------------------+-------------------------------------------+
-| httpd                            | HTTPD Server options                      |
-+----------------------------------+-------------------------------------------+
-| httpd_db_handlers                | Database Operation handlers               |
-+----------------------------------+-------------------------------------------+
-| httpd_design_handlers            | Handlers for design document operations   |
-+----------------------------------+-------------------------------------------+
-| httpd_global_handlers            | Handlers for global operations            |
-+----------------------------------+-------------------------------------------+
-| log                              | Logging options                           |
-+----------------------------------+-------------------------------------------+
-| query_servers                    | Query Server options                      |
-+----------------------------------+-------------------------------------------+
-| query_server_config              | Query server options                      |
-+----------------------------------+-------------------------------------------+
-| replicator                       | Replicator Options                        |
-+----------------------------------+-------------------------------------------+
-| ssl                              | SSL (Secure Sockets Layer) Options        |
-+----------------------------------+-------------------------------------------+
-| stats                            | Statistics options                        |
-+----------------------------------+-------------------------------------------+
-| uuids                            | UUID generation options                   |
-+----------------------------------+-------------------------------------------+
-
-attachments Configuration Options
----------------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| compressible_types                   | compressible_types                    |
-+--------------------------------------+---------------------------------------+
-| compression_level                    | compression_level                     |
-+--------------------------------------+---------------------------------------+
-
-couchdb Configuration Options
------------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| database_dir                         | database_dir                          |
-+--------------------------------------+---------------------------------------+
-| delayed_commits                      | delayed_commits                       |
-+--------------------------------------+---------------------------------------+
-| max_attachment_chunk_size            | max_attachment_chunk_size             |
-+--------------------------------------+---------------------------------------+
-| max_dbs_open                         | max_dbs_open                          |
-+--------------------------------------+---------------------------------------+
-| max_document_size                    | max_document_size                     |
-+--------------------------------------+---------------------------------------+
-| os_process_timeout                   | os_process_timeout                    |
-+--------------------------------------+---------------------------------------+
-| uri_file                             | uri_file                              |
-+--------------------------------------+---------------------------------------+
-| util_driver_dir                      | util_driver_dir                       |
-+--------------------------------------+---------------------------------------+
-| view_index_dir                       | view_index_dir                        |
-+--------------------------------------+---------------------------------------+
-
-daemons Configuration Options
------------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| auth_cache                           | auth_cache                            |
-+--------------------------------------+---------------------------------------+
-| db_update_notifier                   | db_update_notifier                    |
-+--------------------------------------+---------------------------------------+
-| external_manager                     | external_manager                      |
-+--------------------------------------+---------------------------------------+
-| httpd                                | httpd                                 |
-+--------------------------------------+---------------------------------------+
-| httpsd                               | Enabled HTTPS service                 |
-+--------------------------------------+---------------------------------------+
-| query_servers                        | query_servers                         |
-+--------------------------------------+---------------------------------------+
-| stats_aggregator                     | stats_aggregator                      |
-+--------------------------------------+---------------------------------------+
-| stats_collector                      | stats_collector                       |
-+--------------------------------------+---------------------------------------+
-| uuids                                | uuids                                 |
-+--------------------------------------+---------------------------------------+
-| view_manager                         | view_manager                          |
-+--------------------------------------+---------------------------------------+
-
-httpd_db_handlers Configuration Options
----------------------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| _changes                             | _changes                              |
-+--------------------------------------+---------------------------------------+
-| _compact                             | _compact                              |
-+--------------------------------------+---------------------------------------+
-| _design                              | _design                               |
-+--------------------------------------+---------------------------------------+
-| _temp_view                           | _temp_view                            |
-+--------------------------------------+---------------------------------------+
-| _view_cleanup                        | _view_cleanup                         |
-+--------------------------------------+---------------------------------------+
-
-couch_httpd_auth Configuration Options
---------------------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| auth_cache_size                      | auth_cache_size                       |
-+--------------------------------------+---------------------------------------+
-| authentication_db                    | authentication_db                     |
-+--------------------------------------+---------------------------------------+
-| authentication_redirect              | authentication_redirect               |
-+--------------------------------------+---------------------------------------+
-| require_valid_user                   | require_valid_user                    |
-+--------------------------------------+---------------------------------------+
-| timeout                              | timeout                               |
-+--------------------------------------+---------------------------------------+
-
-httpd Configuration Options
----------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| allow_jsonp                          | allow_jsonp                           |
-+--------------------------------------+---------------------------------------+
-| authentication_handlers              | authentication_handlers               |
-+--------------------------------------+---------------------------------------+
-| bind_address                         | bind_address                          |
-+--------------------------------------+---------------------------------------+
-| default_handler                      | default_handler                       |
-+--------------------------------------+---------------------------------------+
-| max_connections                      | max_connections                       |
-+--------------------------------------+---------------------------------------+
-| nodelay                              | Enable TCP_NODELAY                    |
-+--------------------------------------+---------------------------------------+
-| port                                 | port                                  |
-+--------------------------------------+---------------------------------------+
-| secure_rewrites                      | secure_rewrites                       |
-+--------------------------------------+---------------------------------------+
-| vhost_global_handlers                | vhost_global_handlers                 |
-+--------------------------------------+---------------------------------------+
-
-httpd_design_handlers Configuration Options
--------------------------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| _info                                | _info                                 |
-+--------------------------------------+---------------------------------------+
-| _list                                | _list                                 |
-+--------------------------------------+---------------------------------------+
-| _rewrite                             | _rewrite                              |
-+--------------------------------------+---------------------------------------+
-| _show                                | _show                                 |
-+--------------------------------------+---------------------------------------+
-| _update                              | _update                               |
-+--------------------------------------+---------------------------------------+
-| _view                                | _view                                 |
-+--------------------------------------+---------------------------------------+
-
-httpd_global_handlers Configuration Options
--------------------------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| /                                    | /                                     |
-+--------------------------------------+---------------------------------------+
-| _active_tasks                        | _active_tasks                         |
-+--------------------------------------+---------------------------------------+
-| _all_dbs                             | _all_dbs                              |
-+--------------------------------------+---------------------------------------+
-| _config                              | _config                               |
-+--------------------------------------+---------------------------------------+
-| _log                                 | _log                                  |
-+--------------------------------------+---------------------------------------+
-| _oauth                               | _oauth                                |
-+--------------------------------------+---------------------------------------+
-| _replicate                           | _replicate                            |
-+--------------------------------------+---------------------------------------+
-| _restart                             | _restart                              |
-+--------------------------------------+---------------------------------------+
-| _session                             | _session                              |
-+--------------------------------------+---------------------------------------+
-| _stats                               | _stats                                |
-+--------------------------------------+---------------------------------------+
-| _utils                               | _utils                                |
-+--------------------------------------+---------------------------------------+
-| _uuids                               | _uuids                                |
-+--------------------------------------+---------------------------------------+
-| favicon.ico                          | favicon.ico                           |
-+--------------------------------------+---------------------------------------+
-
-log Configuration Options
--------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| file                                 | file                                  |
-+--------------------------------------+---------------------------------------+
-| include_sasl                         | include_sasl                          |
-+--------------------------------------+---------------------------------------+
-| level                                | level                                 |
-+--------------------------------------+---------------------------------------+
-
-query_servers Configuration Options
------------------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| javascript                           | javascript                            |
-+--------------------------------------+---------------------------------------+
-
-query_server_config Configuration Options
------------------------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| reduce_limit                         | reduce_limit                          |
-+--------------------------------------+---------------------------------------+
-
-replicator Configuration Options
---------------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| max_http_pipeline_size               | max_http_pipeline_size                |
-+--------------------------------------+---------------------------------------+
-| max_http_sessions                    | max_http_sessions                     |
-+--------------------------------------+---------------------------------------+
-
-stats Configuration Options
----------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| rate                                 | rate                                  |
-+--------------------------------------+---------------------------------------+
-| samples                              | samples                               |
-+--------------------------------------+---------------------------------------+
-
-uuids Configuration Options
----------------------------
-
-+--------------------------------------+---------------------------------------+
-| Option                               | Description                           |
-+======================================+=======================================+
-| algorithm                            | algorithm                             |
-+--------------------------------------+---------------------------------------+

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/ddocs.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/ddocs.rst b/share/docs/rst/ddocs.rst
index a5dc7e7..d966233 100644
--- a/share/docs/rst/ddocs.rst
+++ b/share/docs/rst/ddocs.rst
@@ -4,3 +4,4 @@ Design Docs
 ===========
 
 To be added: information on writing design docs, including views.
+

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/errors.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/errors.rst b/share/docs/rst/errors.rst
new file mode 100644
index 0000000..0f5d5bd
--- /dev/null
+++ b/share/docs/rst/errors.rst
@@ -0,0 +1,25 @@
+Error Messages
+==============
+
+The errors reported when CouchDB is unable to read a required file have
+been updated so that explicit information about the files and problem
+can now be identified from the error message. The errors report file
+permission access either when reading or writing to configuration and
+database files.
+
+The error is raised both through the log file and the error message
+returned through the API call as a JSON error message. For example, when
+setting configuration values:
+
+.. code-block:: bash
+
+    shell> curl -X PUT http://couchdb:5984/_config/couchdb/delayed_commits \
+                -H 'X-Couch-Persist: true' -d '"false"'
+    {"error":"file_permission_error","reason":"/etc/couchdb/local.ini"}
+
+Errors will always be reported using the ``file_permission_error`` error
+type.
+
+During startup permissions errors on key files are also reported in the
+log with a descriptive error message and file location so that
+permissions can be fixed before restart.

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/features.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/features.rst b/share/docs/rst/features.rst
deleted file mode 100644
index ae2415b..0000000
--- a/share/docs/rst/features.rst
+++ /dev/null
@@ -1,191 +0,0 @@
-==========================
-Features and Functionality
-==========================
-
- 
-
-HTTP Range Requests
-===================
-
-HTTP allows you to specify byte ranges for requests. This allows the
-implementation of resumable downloads and skippable audio and video
-streams alike. The following example uses a text file to make the range
-request process easier.
-
-.. code-block:: bash
-
-    shell> cat file.txt
-    My hovercraft is full of eels!
-
-Uploading this as an attachment to a ``text`` database using ``curl``:
-
-.. code-block:: bash
-
-    shell> curl -X PUT http://127.0.0.1:5984/test/doc/file.txt \
-                -H "Content-Type: application/octet-stream" -d@file.txt
-    {"ok":true,"id":"doc","rev":"1-287a28fa680ae0c7fb4729bf0c6e0cf2"}
-
-Requesting the whole file works as normal:
-
-.. code-block:: bash
-
-    shell> curl -X GET http://127.0.0.1:5984/test/doc/file.txt
-    My hovercraft is full of eels!
-
-But to retrieve only the first 13 bytes using ``curl``:
-
-.. code-block:: bash
-
-    shell> curl -X GET http://127.0.0.1:5984/test/doc/file.txt \
-                -H "Range: bytes=0-12"
-    My hovercraft
-
-HTTP supports many ways to specify single and even multiple byte
-rangers. See `RFC 2616`_.
-
-.. note::
-   Databases that have been created with CouchDB 1.0.2 or earlier will
-   support range requests, but they are using a less-optimal algorithm.
-   If you plan to make heavy use of this feature, make sure to compact
-   your database with CouchDB |version| to take advantage of a better
-   algorithm to find byte ranges.
-
-.. _proxying:
-
-HTTP Proxying
-=============
-
-The HTTP proxy feature makes it easy to map and redirect different
-content through your CouchDB URL. The proxy works by mapping a path name
-and passing all content after that prefix through to the configured
-proxy address.
-
-Configuration of the proxy redirect is handled through the
-``[httpd_global_handlers]`` section of the CouchDB configuration file
-(typically ``local.ini``). The format is:
-
-.. code-block:: ini
-
-    [httpd_global_handlers]
-    PREFIX = {couch_httpd_proxy, handle_proxy_req, <<"DESTINATION">>}
-
-Where:
-
--  ``PREFIX``
-
-   Is the string that will be matched. The string can be any valid
-   qualifier, although to ensure that existing database names are not
-   overridden by a proxy configuration, you can use an underscore
-   prefix.
-
--  ``DESTINATION``
-
-   The fully-qualified URL to which the request should be sent. The
-   destination must include the ``http`` prefix. The content is used
-   verbatim in the original request, so you can also forward to servers
-   on different ports and to specific paths on the target host.
-
-The proxy process then translates requests of the form:
-
-.. code-block:: text
-
-    http://couchdb:5984/PREFIX/path
-
-To:
-
-.. code-block:: text
-
-    DESTINATION/path
-
-.. note::
-   Everything after ``PREFIX`` including the required forward slash
-   will be appended to the ``DESTINATION``.
-
-The response is then communicated back to the original client.
-
-For example, the following configuration:
-
-.. code-block:: ini
-
-  _google = {couch_httpd_proxy, handle_proxy_req, <<"http://www.google.com">>}
-
-Would forward all requests for ``http://couchdb:5984/_google`` to the
-Google website.
-
-The service can also be used to forward to related CouchDB services,
-such as Lucene:
-
-.. code-block:: ini
-
-    [httpd_global_handlers]
-    _fti = {couch_httpd_proxy, handle_proxy_req, <<"http://127.0.0.1:5985">>}
-
-.. note::
-   The proxy service is basic. If the request is not identified by the
-   ``DESTINATION``, or the remainder of the ``PATH`` specification is
-   incomplete, the original request URL is interpreted as if the
-   ``PREFIX`` component of that URL does not exist.
-
-   For example, requesting ``http://couchdb:5984/_intranet/media`` when
-   ``/media`` on the proxy destination does not exist, will cause the
-   request URL to be interpreted as ``http://couchdb:5984/media``. Care
-   should be taken to ensure that both requested URLs and destination
-   URLs are able to cope.
-
-CommonJS support for map functions
-==================================
-
-CommonJS support allows you to use CommonJS notation inside map and
-reduce functions, but only of libraries that are stored inside the views
-part of the design doc.
-
-So you could continue to access CommonJS code in design\_doc.foo, from
-your list functions etc, but we'd add the ability to require CommonJS
-modules within map and reduce, but only from ``design_doc.views.lib``.
-
-There's no worry here about namespace collisions, as Couch just plucks
-``views.*.map`` and ``views.*.reduce`` out of the design doc. So you
-could have a view called ``lib`` if you wanted, and still have CommonJS
-stored in ``views.lib.sha1`` and ``views.lib.stemmer`` if you wanted.
-
-The implementation is simplified by enforcing that CommonJS modules to
-be used in map functions be stored in views.lib.
-
-A sample design doc (taken from the test suite in Futon) is below:
-
-.. code-block:: javascript
-
-    {
-       "views" : {
-          "lib" : {
-             "baz" : "exports.baz = 'bam';",
-             "foo" : {
-                "zoom" : "exports.zoom = 'yeah';",
-                "boom" : "exports.boom = 'ok';",
-                "foo" : "exports.foo = 'bar';"
-             }
-          },
-          "commonjs" : {
-             "map" : "function(doc) { emit(null, require('views/lib/foo/boom').boom)}"
-          }
-       },
-       "_id" : "_design/test"
-    }
-
-The ``require()`` statement is relative to the design document, but
-anything loaded form outside of ``views/lib`` will fail.
-
-Granular ETag support
-=====================
-
-ETags have been assigned to a map/reduce group (the collection of views
-in a single design document). Any change to any of the indexes for those
-views would generate a new ETag for all view URL's in a single design
-doc, even if that specific view's results had not changed.
-
-Each ``_view`` URL has it's own ETag which only gets
-updated when changes are made to the database that effect that index. If
-the index for that specific view does not change, that view keeps the
-original ETag head (therefore sending back 304 Not Modified more often).
-
-.. _RFC 2616: http://tools.ietf.org/html/rfc2616#section-14.27

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/http-proxying.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/http-proxying.rst b/share/docs/rst/http-proxying.rst
new file mode 100644
index 0000000..0bc8ac5
--- /dev/null
+++ b/share/docs/rst/http-proxying.rst
@@ -0,0 +1,82 @@
+.. _http-proxying:
+
+HTTP Proxying
+=============
+
+The HTTP proxy feature makes it easy to map and redirect different
+content through your CouchDB URL. The proxy works by mapping a pathname
+and passing all content after that prefix through to the configured
+proxy address.
+
+Configuration of the proxy redirect is handled through the
+``[httpd_global_handlers]`` section of the CouchDB configuration file
+(typically ``local.ini``). The format is:
+
+.. code-block:: ini
+
+    [httpd_global_handlers]
+    PREFIX = {couch_httpd_proxy, handle_proxy_req, <<"DESTINATION">>}
+
+
+Where:
+
+-  ``PREFIX``
+
+   Is the string that will be matched. The string can be any valid
+   qualifier, although to ensure that existing database names are not
+   overridden by a proxy configuration, you can use an underscore
+   prefix.
+
+-  ``DESTINATION``
+
+   The fully-qualified URL to which the request should be sent. The
+   destination must include the ``http`` prefix. The content is used
+   verbatim in the original request, so you can also forward to servers
+   on different ports and to specific paths on the target host.
+
+The proxy process then translates requests of the form:
+
+.. code-block:: text
+
+    http://couchdb:5984/PREFIX/path
+
+To:
+
+.. code-block:: text
+
+    DESTINATION/path
+
+.. note::
+   Everything after ``PREFIX`` including the required forward slash
+   will be appended to the ``DESTINATION``.
+
+The response is then communicated back to the original client.
+
+For example, the following configuration:
+
+.. code-block:: ini
+
+    _google = {couch_httpd_proxy, handle_proxy_req, <<"http://www.google.com">>}
+
+Would forward all requests for ``http://couchdb:5984/_google`` to the
+Google website.
+
+The service can also be used to forward to related CouchDB services,
+such as Lucene:
+
+.. code-block:: ini
+
+    [httpd_global_handlers]
+    _fti = {couch_httpd_proxy, handle_proxy_req, <<"http://127.0.0.1:5985">>}
+
+.. note::
+   The proxy service is basic. If the request is not identified by the
+   ``DESTINATION``, or the remainder of the ``PATH`` specification is
+   incomplete, the original request URL is interpreted as if the
+   ``PREFIX`` component of that URL does not exist.
+
+   For example, requesting ``http://couchdb:5984/_intranet/media`` when
+   ``/media`` on the proxy destination does not exist, will cause the
+   request URL to be interpreted as ``http://couchdb:5984/media``. Care
+   should be taken to ensure that both requested URLs and destination
+   URLs are able to cope.

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/index.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/index.rst b/share/docs/rst/index.rst
index 49f514c..2ed3e81 100644
--- a/share/docs/rst/index.rst
+++ b/share/docs/rst/index.rst
@@ -9,18 +9,24 @@ Apache CouchDB Documentation
 Contents:
 
 .. toctree::
-   :maxdepth: 2
+    :maxdepth: 2
 
-   intro
-   features
-   api-basics
-   configuring
-   replication
-   ddocs
-   changes
-   release
-   api/reference
-   json-structure
+    intro
+    api-basics
+    range
+    configuring
+    ssl
+    os-daemons
+    http-proxying
+    config_reference
+    replication
+    ddocs
+    commonjs
+    errors
+    changes
+    release
+    api/reference
+    json-structure
 
 Indices and tables
 ==================

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/os-daemons.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/os-daemons.rst b/share/docs/rst/os-daemons.rst
new file mode 100644
index 0000000..16f3553
--- /dev/null
+++ b/share/docs/rst/os-daemons.rst
@@ -0,0 +1,38 @@
+OS Daemons
+==========
+
+CouchDB now supports starting external processes. The support is simple
+and enables CouchDB to start each configured OS daemon. If the daemon
+stops at any point, CouchDB will restart it (with protection to ensure
+regularly failing daemons are not repeatedly restarted).
+
+The daemon starting process is one-to-one; for each each configured
+daemon in the configuration file, CouchDB will start exactly one
+instance. If you need to run multiple instances, then you must create
+separate individual configurations. Daemons are configured within the
+``[os_daemons]`` section of your configuration file (``local.ini``). The
+format of each configured daemon is:
+
+.. code-block:: ini
+
+    NAME = PATH ARGS
+
+Where ``NAME`` is an arbitrary (and unique) name to identify the daemon;
+``PATH`` is the full path to the daemon to be executed; ``ARGS`` are any
+required arguments to the daemon.
+
+For example:
+
+.. code-block:: ini
+
+    [os_daemons]
+    basic_responder = /usr/local/bin/responder.js
+
+There is no interactivity between CouchDB and the running process, but
+you can use the OS Daemons service to create new HTTP servers and
+responders and then use the new proxy service to redirect requests and
+output to the CouchDB managed service. For more information on proxying,
+see :ref:`http-proxying`. For further background on the OS Daemon service, see
+`CouchDB Externals API`_.
+
+.. _CouchDB Externals API: http://davispj.com/2010/09/26/new-couchdb-externals-api.html

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/other.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/other.rst b/share/docs/rst/other.rst
deleted file mode 100644
index d577063..0000000
--- a/share/docs/rst/other.rst
+++ /dev/null
@@ -1,148 +0,0 @@
-More granular ETag support for views
-====================================
-
-ETags have been assigned to a map/reduce group (the collection of views
-in a single design document). Any change to any of the indexes for those
-views would generate a new ETag for all view URL's in a single design
-doc, even if that specific view's results had not changed.
-
-Each ``_view`` URL has it's own ETag which only gets updated when changes
-are made to the database that effect that index. If the index for that
-specific view does not change, that view keeps the original ETag head
-(therefore sending back 304 Not Modified more often).
-
-Added built-in filters for ``_changes``: ``_doc_ids`` and ``_design``.
-======================================================================
-
-The ``_changes`` feed can now be used to watch changes to specific
-document ID's or the list of ``_design`` documents in a database. If the
-``filters`` parameter is set to ``_doc_ids`` a list of doc IDs can be
-passed in the "doc_ids" as a JSON array.
-
-Allow wildcards in vhosts definitions
-=====================================
-
-Similar to the rewrites section of a ``_design`` document, the new
-``vhosts`` system uses variables in the form of ``:varname`` or wildcards in
-the form of asterisks. The variable results can be output into the
-resulting path as they are in the rewriter.
-
-OS Daemons
-==========
-
-CouchDB now supports starting external processes. The support is simple
-and enables CouchDB to start each configured OS daemon. If the daemon
-stops at any point, CouchDB will restart it (with protection to ensure
-regularly failing daemons are not repeatedly restarted).
-
-The daemon starting process is one-to-one; for each each configured
-daemon in the configuration file, CouchDB will start exactly one
-instance. If you need to run multiple instances, then you must create
-separate individual configurations. Daemons are configured within the
-``[os_daemons]`` section of your configuration file (``local.ini``). The
-format of each configured daemon is:
-
-::
-
-    NAME = PATH ARGS
-        
-
-Where ``NAME`` is an arbitrary (and unique) name to identify the daemon;
-``PATH`` is the full path to the daemon to be executed; ``ARGS`` are any
-required arguments to the daemon.
-
-For example:
-
-.. code-block:: ini
-
-    [os_daemons]
-    basic_responder = /usr/local/bin/responder.js
-
-There is no interactivity between CouchDB and the running process, but
-you can use the OS Daemons service to create new HTTP servers and
-responders and then use the new proxy service to redirect requests and
-output to the CouchDB managed service. For more information on proxying,
-see :ref:`proxying`. For further background on the OS Daemon service, see
-`CouchDB Externals API`_.
-
-Stale views and ``update_after``
-================================
-
-Currently a view request can include the ``stale=ok`` query argument,
-which allows the contents of a stale view index to be used to produce
-the view output. In order to trigger a build of the outdated view index,
-a second view request must be made.
-
-To simplify this process, the ``update_after`` value can be supplied to
-the ``stale`` query argument. This triggers a rebuild of the view index
-after the results of the view have been retrieved.
-
-Socket Options Configuration Setting
-====================================
-
-The socket options for the listening socket in CouchDB can now be set
-within the CouchDB configuration file. The setting should be added to
-the ``[httpd]`` section of the file using the option name
-``socket_options``. The specification is as a list of tuples. For
-example:
-
-::
-
-    [httpd]
-    socket_options = [{recbuf, 262144}, {sndbuf, 262144}, {nodelay, true}]
-
-The options supported are a subset of full options supported by the
-TCP/IP stack. A list of the supported options are provided in the
-`Erlang inet`_ documentation.
-
-Server Options Configuration Setting
-====================================
-
-Server options for the MochiWeb component of CouchDB can now be added to
-the configuration file. Settings should be added to the
-``server_options`` option of the ``[httpd]`` section of ``local.ini``.
-For example:
-
-.. code-block:: ini
-
-    [httpd]
-    server_options = [{backlog, 128}, {acceptor_pool_size, 16}]
-           
-
-Improved Error Messages
-=======================
-
-The errors reported when CouchDB is unable to read a required file have
-been updated so that explicit information about the files and problem
-can now be identified from the error message. The errors report file
-permission access either when reading or writing to configuration and
-database files.
-
-The error is raised both through the log file and the error message
-returned through the API call as a JSON error message. For example, when
-setting configuration values:
-
-.. code-block:: bash
-
-    shell> curl -X PUT http://couchdb:5984/_config/couchdb/delayed_commits \
-                -H 'X-Couch-Persist: true' -d '"false"'
-    {"error":"file_permission_error","reason":"/etc/couchdb/local.ini"}
-
-Errors will always be reported using the ``file_permission_error`` error
-type.
-
-During startup permissions errors on key files are also reported in the
-log with a descriptive error message and file location so that
-permissions can be fixed before restart.
-
-Multiple micro-optimizations when reading data.
-===============================================
-
-We found a number of places where CouchDB wouldn't do the absolute
-optimal thing when reading data and got rid of quite a few
-inefficiencies. The problem with small optimizations all over the place
-is that you may not notice them with every use-case, but we sure hope
-you can see an improvement overall.
-
-.. _CouchDB Externals API: http://davispj.com/2010/09/26/new-couchdb-externals-api.html
-.. _Erlang inet: http://www.erlang.org/doc/man/inet.html#setopts-2

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/proxy.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/proxy.rst b/share/docs/rst/proxy.rst
deleted file mode 100644
index 344a1d8..0000000
--- a/share/docs/rst/proxy.rst
+++ /dev/null
@@ -1,80 +0,0 @@
-HTTP Proxying
-=============
-
-The HTTP proxy feature makes it easy to map and redirect different
-content through your CouchDB URL. The proxy works by mapping a pathname
-and passing all content after that prefix through to the configured
-proxy address.
-
-Configuration of the proxy redirect is handled through the
-``[httpd_global_handlers]`` section of the CouchDB configuration file
-(typically ``local.ini``). The format is:
-
-.. code-block:: ini
-
-    [httpd_global_handlers]
-    PREFIX = {couch_httpd_proxy, handle_proxy_req, <<"DESTINATION">>}
-      
-
-Where:
-
--  ``PREFIX``
-
-   Is the string that will be matched. The string can be any valid
-   qualifier, although to ensure that existing database names are not
-   overridden by a proxy configuration, you can use an underscore
-   prefix.
-
--  ``DESTINATION``
-
-   The fully-qualified URL to which the request should be sent. The
-   destination must include the ``http`` prefix. The content is used
-   verbatim in the original request, so you can also forward to servers
-   on different ports and to specific paths on the target host.
-
-The proxy process then translates requests of the form:
-
-.. code-block:: text
-
-    http://couchdb:5984/PREFIX/path
-
-To:
-
-.. code-block:: text
-
-    DESTINATION/path
-
-.. note::
-   Everything after ``PREFIX`` including the required forward slash
-   will be appended to the ``DESTINATION``.
-
-The response is then communicated back to the original client.
-
-For example, the following configuration:
-
-.. code-block:: ini
-
-    _google = {couch_httpd_proxy, handle_proxy_req, <<"http://www.google.com">>}
-
-Would forward all requests for ``http://couchdb:5984/_google`` to the
-Google website.
-
-The service can also be used to forward to related CouchDB services,
-such as Lucene:
-
-.. code-block:: ini
-
-    [httpd_global_handlers]
-    _fti = {couch_httpd_proxy, handle_proxy_req, <<"http://127.0.0.1:5985">>}
-
-.. note::
-   The proxy service is basic. If the request is not identified by the
-   ``DESTINATION``, or the remainder of the ``PATH`` specification is
-   incomplete, the original request URL is interpreted as if the
-   ``PREFIX`` component of that URL does not exist.
-
-   For example, requesting ``http://couchdb:5984/_intranet/media`` when
-   ``/media`` on the proxy destination does not exist, will cause the
-   request URL to be interpreted as ``http://couchdb:5984/media``. Care
-   should be taken to ensure that both requested URLs and destination
-   URLs are able to cope.

http://git-wip-us.apache.org/repos/asf/couchdb/blob/bc489a33/share/docs/rst/replication.rst
----------------------------------------------------------------------
diff --git a/share/docs/rst/replication.rst b/share/docs/rst/replication.rst
index 5b9d0d4..c6b3057 100644
--- a/share/docs/rst/replication.rst
+++ b/share/docs/rst/replication.rst
@@ -1,3 +1,5 @@
+.. _replication:
+
 Replicator Database
 ===================