From dev-return-3981-apmail-couchdb-dev-archive=couchdb.apache.org@couchdb.apache.org Tue Apr 21 15:50:07 2009 Return-Path: Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: (qmail 87412 invoked from network); 21 Apr 2009 15:50:07 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 21 Apr 2009 15:50:07 -0000 Received: (qmail 8963 invoked by uid 500); 21 Apr 2009 15:50:06 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 8865 invoked by uid 500); 21 Apr 2009 15:50:06 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 8855 invoked by uid 99); 21 Apr 2009 15:50:06 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 21 Apr 2009 15:50:06 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of robert.newson@gmail.com designates 209.85.220.163 as permitted sender) Received: from [209.85.220.163] (HELO mail-fx0-f163.google.com) (209.85.220.163) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 21 Apr 2009 15:49:57 +0000 Received: by fxm7 with SMTP id 7so2910116fxm.11 for ; Tue, 21 Apr 2009 08:49:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=hMpqeSOVFiwPCZ79ltLi9H+GpdvZCgISkxkLbMom4uk=; b=sN2I9Fa3MQSA/5mPG/zDAmOvcfubmQHPonYWFz86uBk0Ghc6ClZbh+9f8MWiE7oUAy XnIAxkD75D/Q2VpFunPkuGgGFUCswWwJBDNi65tuD+chKhBqzuc3+jK23r2uDqOl1nOm WA3tMLzwJYN/yER+XSKYwT19q3SVKB3cYKLXI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=h2ug2pCWnz+QGZpfTBtUdy17KI5mnB7WIzBIjPtvNKz6+OQpunK1Ir5lRBlaX/nBAy O8r8KC6Bz+CwWu+Y/ZHa67HAZAt8yXbvIr8fc04tlP6N4K5R/UCvXpsjRMWKJjnu4p1X 6OuGSbVaO3S/2uBTqP/KAuPQDvvL9jAG/xwT8= MIME-Version: 1.0 Received: by 10.239.157.147 with SMTP id q19mr317209hbc.61.1240328976102; Tue, 21 Apr 2009 08:49:36 -0700 (PDT) In-Reply-To: <20090421150308.GB15587@tumbolia.org> References: <20090421145117.94D1723889FD@eris.apache.org> <20090421150308.GB15587@tumbolia.org> Date: Tue, 21 Apr 2009 16:49:36 +0100 Message-ID: <46aeb24f0904210849x1af092e8x86b57ddff5c3c764@mail.gmail.com> Subject: Re: New configuration mechanism (Was: Re: svn commit: r767164 - in /couchdb/trunk: bin/couchdb.tpl.in etc/couchdb/Makefile.am etc/couchdb/default.d/ etc/couchdb/default.ini.tpl.in etc/couchdb/local.d/) From: Robert Newson To: dev@couchdb.apache.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org That looks like exactly what I need when I package couchdb-lucene. I'd include /etc/couchdb/default.d/couchdb-lucene.ini as a config file, and that would hook couchdb-lucene up neatly. Remove the package and it'll remove the config, nice and clean. I assume that later configuration settings override former ones? I'd like to guarantee that couchdb-lucene's os_process_timeout is applied. I suggest using numeric prefixes in the .ini files you supply in the core couchdb package (assuming, actually, that /etc/couchdb/default.d/ would not be empty by default), much like the rc.d and network hook scripts work (01couchdb.ini, for example). Thanks for this, I'll be sure to test it out as soon as I can. B. On Tue, Apr 21, 2009 at 4:03 PM, Noah Slater wrote: > Hey, > > I have been talking to Robert Newson about CouchDB configuration extensib= ility. > He wants to create a Debian package for Lucene that drops in some configu= ration > snippets in a location they are picked up. Automatically editing the defa= ult.ini > or local.ini files are out of the question for obvious reasons. > > In the spirit of doing now, and asking questions later, I have committed = a > changeset that adds a default.d and local.d directory to PREFIX/etc/couch= db. Any > configuration files in these directories are picked up in this order: > > =A0PREFIX/etc/couchdb/default.ini > =A0PREFIX/etc/couchdb/default.d/* > =A0PREFIX/etc/couchdb/local.ini > =A0PREFIX/etc/couchdb/local.d/* > > Along with this I have made a backwards incompatible change to the CLI op= tions: > >> - =A0-c FILE =A0 =A0 use configuration FILE (chainable, resets system de= fault) >> - =A0-C FILE =A0 =A0 use configuration FILE (chainable, does not reset s= ystem >> - =A0-default) >> + =A0-a FILE =A0 =A0 add configuration FILE to chain >> + =A0-n =A0 =A0 =A0 =A0 =A0reset configuration file chain (including sys= tem default) >> + =A0-c =A0 =A0 =A0 =A0 =A0print configuration file chain and exit > > The same functionality is still there, but with a different way of using = it. > > Please test this change, and let me know your thoughts. > > On Tue, Apr 21, 2009 at 02:51:17PM -0000, nslater@apache.org wrote: >> Author: nslater >> Date: Tue Apr 21 14:51:17 2009 >> New Revision: 767164 >> >> URL: http://svn.apache.org/viewvc?rev=3D767164&view=3Drev >> Log: >> added new configuration system >> >> Added: >> =A0 =A0 couchdb/trunk/etc/couchdb/default.d/ >> =A0 =A0 couchdb/trunk/etc/couchdb/local.d/ >> Modified: >> =A0 =A0 couchdb/trunk/bin/couchdb.tpl.in >> =A0 =A0 couchdb/trunk/etc/couchdb/Makefile.am >> =A0 =A0 couchdb/trunk/etc/couchdb/default.ini.tpl.in >> >> Modified: couchdb/trunk/bin/couchdb.tpl.in >> URL: http://svn.apache.org/viewvc/couchdb/trunk/bin/couchdb.tpl.in?rev= =3D767164&r1=3D767163&r2=3D767164&view=3Ddiff >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D >> --- couchdb/trunk/bin/couchdb.tpl.in (original) >> +++ couchdb/trunk/bin/couchdb.tpl.in Tue Apr 21 14:51:17 2009 >> @@ -12,28 +12,28 @@ >> =A0# License for the specific language governing permissions and limitat= ions under >> =A0# the License. >> >> -SCRIPT_OK=3D0 >> -SCRIPT_ERROR=3D1 >> - >> -INTERACTIVE=3Dfalse >> =A0BACKGROUND=3Dfalse >> +DEFAULT_CONFIG_DIR=3D%localconfdir%/default.d >> +DEFAULT_CONFIG_FILE=3D%localconfdir%/default.ini >> +HEART_BEAT_TIMEOUT=3D11 >> +HEART_COMMAND=3D"%bindir%/%couchdb_command_name% -k" >> +INTERACTIVE=3Dfalse >> =A0KILL=3Dfalse >> -SHUTDOWN=3Dfalse >> +LOCAL_CONFIG_DIR=3D%localconfdir%/local.d >> +LOCAL_CONFIG_FILE=3D%localconfdir%/local.ini >> +PID_FILE=3D%localstatedir%/run/couchdb/couchdb.pid >> =A0RECURSED=3Dfalse >> =A0RESET_CONFIG=3Dtrue >> - >> =A0RESPAWN_TIMEOUT=3D0 >> - >> -DEFAULT_INI_FILE=3D%localconfdir%/%defaultini% >> -LOCAL_INI_FILE=3D%localconfdir%/%localini% >> - >> -PID_FILE=3D%localstatedir%/run/couchdb/couchdb.pid >> - >> -STDOUT_FILE=3Dcouchdb.stdout >> +SCRIPT_ERROR=3D1 >> +SCRIPT_OK=3D0 >> +SHUTDOWN=3Dfalse >> =A0STDERR_FILE=3Dcouchdb.stderr >> +STDOUT_FILE=3Dcouchdb.stdout >> >> -HEART_COMMAND=3D"%bindir%/%couchdb_command_name% -k" >> -HEART_BEAT_TIMEOUT=3D11 >> +print_arguments=3D"" >> +start_arguments=3D"" >> +background_start_arguments=3D"" >> >> =A0basename=3D`basename $0` >> >> @@ -70,8 +70,9 @@ >> >> =A0 =A0-h =A0 =A0 =A0 =A0 =A0display a short help message and exit >> =A0 =A0-V =A0 =A0 =A0 =A0 =A0display version information and exit >> - =A0-c FILE =A0 =A0 use configuration FILE (chainable, resets system de= fault) >> - =A0-C FILE =A0 =A0 use configuration FILE (chainable, does not reset s= ystem default) >> + =A0-a FILE =A0 =A0 add configuration FILE to chain >> + =A0-n =A0 =A0 =A0 =A0 =A0reset configuration file chain (including sys= tem default) >> + =A0-c =A0 =A0 =A0 =A0 =A0print configuration file chain and exit >> =A0 =A0-i =A0 =A0 =A0 =A0 =A0use the interactive Erlang shell >> =A0 =A0-b =A0 =A0 =A0 =A0 =A0spawn as a background process >> =A0 =A0-p FILE =A0 =A0 set the background PID FILE (overrides system def= ault) >> @@ -92,7 +93,7 @@ >> =A0 =A0 =A0fi >> =A0 =A0 =A0echo >&2 >> =A0 =A0 =A0echo "Try \`"$basename" -h' for more information." >&2 >> - =A0 =A0exit $SCRIPT_ERROR >> + =A0 =A0false >> =A0} >> >> =A0_get_pid () { >> @@ -102,6 +103,48 @@ >> =A0 =A0 =A0echo $PID >> =A0} >> >> +_add_config_file () { >> + =A0 =A0if test -n "$start_arguments"; then >> + =A0 =A0 =A0 =A0start_arguments=3D"$start_arguments, "; >> + =A0 =A0fi >> + =A0 =A0if test -z "$print_arguments"; then >> + =A0 =A0 =A0 =A0print_arguments=3D"$1" >> + =A0 =A0else >> + =A0 =A0 =A0 =A0print_arguments=3D"`cat <> +$print_arguments >> +$1 >> +EOF >> +`" >> + =A0 =A0fi >> + =A0 =A0start_arguments=3D"$start_arguments \\\"$1\\\"" >> + =A0 =A0background_start_arguments=3D"$background_start_arguments -c \\= \"$1\\\"" >> +} >> + >> +_add_config_dir () { >> + =A0 =A0for file in `find "$1" -mindepth 1`; do >> + =A0 =A0 =A0 =A0_add_config_file $file >> + =A0 =A0done >> +} >> + >> +_load_config () { >> + =A0 =A0_add_config_file "$DEFAULT_CONFIG_FILE" >> + =A0 =A0_add_config_dir "$DEFAULT_CONFIG_DIR" >> + =A0 =A0_add_config_file "$LOCAL_CONFIG_FILE" >> + =A0 =A0_add_config_dir "$LOCAL_CONFIG_DIR" >> +} >> + >> +_reset_config () { >> + =A0 =A0print_arguments=3D"" >> + =A0 =A0start_arguments=3D"" >> + =A0 =A0background_start_arguments=3D"" >> +} >> + >> +_print_config () { >> + =A0 =A0cat <> +$print_arguments >> +EOF >> +} >> + >> =A0check_status () { >> =A0 =A0 =A0PID=3D`_get_pid` >> =A0 =A0 =A0if test -n "$PID"; then >> @@ -129,35 +172,35 @@ >> =A0 =A0 =A0message_prefix=3D"Apache CouchDB needs write permission on th= e" >> =A0 =A0 =A0if test ! -w $PID_FILE; then >> =A0 =A0 =A0 =A0 =A0echo "$message_prefix PID file: $PID_FILE" >&2 >> - =A0 =A0 =A0 =A0exit $SCRIPT_ERROR >> + =A0 =A0 =A0 =A0false >> =A0 =A0 =A0fi >> =A0 =A0 =A0if test ! -w $STDOUT_FILE; then >> =A0 =A0 =A0 =A0 =A0echo "$message_prefix STDOUT file: $STDOUT_FILE" >&2 >> - =A0 =A0 =A0 =A0exit $SCRIPT_ERROR >> + =A0 =A0 =A0 =A0false >> =A0 =A0 =A0fi >> =A0 =A0 =A0if test ! -w $STDERR_FILE; then >> =A0 =A0 =A0 =A0 =A0echo "$message_prefix STDERR file: $STDERR_FILE" >&2 >> - =A0 =A0 =A0 =A0exit $SCRIPT_ERROR >> + =A0 =A0 =A0 =A0false >> =A0 =A0 =A0fi >> =A0 =A0 =A0message_prefix=3D"Apache CouchDB needs a regular" >> =A0 =A0 =A0if test `echo 2> /dev/null >> $PID_FILE; echo $?` -gt 0; then >> =A0 =A0 =A0 =A0 =A0echo "$message_prefix PID file: $PID_FILE" >&2 >> - =A0 =A0 =A0 =A0exit $SCRIPT_ERROR >> + =A0 =A0 =A0 =A0false >> =A0 =A0 =A0fi >> =A0 =A0 =A0if test `echo 2> /dev/null >> $STDOUT_FILE; echo $?` -gt 0; t= hen >> =A0 =A0 =A0 =A0 =A0echo "$message_prefix STDOUT file: $STDOUT_FILE" >&2 >> - =A0 =A0 =A0 =A0exit $SCRIPT_ERROR >> + =A0 =A0 =A0 =A0false >> =A0 =A0 =A0fi >> =A0 =A0 =A0if test `echo 2> /dev/null >> $STDERR_FILE; echo $?` -gt 0; t= hen >> =A0 =A0 =A0 =A0 =A0echo "$message_prefix STDERR file: $STDERR_FILE" >&2 >> - =A0 =A0 =A0 =A0exit $SCRIPT_ERROR >> + =A0 =A0 =A0 =A0false >> =A0 =A0 =A0fi >> =A0} >> >> =A0start_couchdb () { >> =A0 =A0 =A0if test ! "$RECURSED" =3D "true"; then >> =A0 =A0 =A0 =A0 =A0if check_status 2> /dev/null; then >> - =A0 =A0 =A0 =A0 =A0 =A0exit $SCRIPT_OK >> + =A0 =A0 =A0 =A0 =A0 =A0exit >> =A0 =A0 =A0 =A0 =A0fi >> =A0 =A0 =A0 =A0 =A0check_environment >> =A0 =A0 =A0fi >> @@ -169,22 +212,6 @@ >> =A0 =A0 =A0 =A0 =A0touch $PID_FILE >> =A0 =A0 =A0 =A0 =A0interactive_option=3D"+Bd -noinput" >> =A0 =A0 =A0fi >> - =A0 =A0if test -n "$INI_FILES"; then >> - =A0 =A0 =A0 =A0if test "$RESET_CONFIG" =3D "true"; then >> - =A0 =A0 =A0 =A0 =A0 =A0ini_files=3D"$INI_FILES" >> - =A0 =A0 =A0 =A0else >> - =A0 =A0 =A0 =A0 =A0 =A0ini_files=3D"$DEFAULT_INI_FILE $INI_FILES" >> - =A0 =A0 =A0 =A0fi >> - =A0 =A0else >> - =A0 =A0 =A0 =A0ini_files=3D"$DEFAULT_INI_FILE $LOCAL_INI_FILE" >> - =A0 =A0fi >> - =A0 =A0for file in $ini_files; do >> - =A0 =A0 =A0 =A0if test -n "$start_arguments"; then >> - =A0 =A0 =A0 =A0 =A0 =A0start_arguments=3D"$start_arguments, "; >> - =A0 =A0 =A0 =A0fi >> - =A0 =A0 =A0 =A0start_arguments=3D"$start_arguments \\\"$file\\\"" >> - =A0 =A0 =A0 =A0background_start_arguments=3D"$background_start_argumen= ts -c \\\"$file\\\"" >> - =A0 =A0done >> =A0 =A0 =A0command=3D"`%ICU_CONFIG% --invoke` \ >> =A0 =A0 =A0 =A0 =A0%ERL% $interactive_option -smp auto -sasl errlog_type= error +K true \ >> =A0 =A0 =A0 =A0 =A0-pa %localerlanglibdir%/%couchdbebindir% \ >> @@ -196,8 +223,7 @@ >> =A0 =A0 =A0 =A0 =A0-eval \"crypto:start()\" \ >> =A0 =A0 =A0 =A0 =A0-eval \"ibrowse:start()\" \ >> =A0 =A0 =A0 =A0 =A0-eval \"couch_server:start([$start_arguments]), recei= ve done -> done end.\" " >> - =A0 =A0if test "$BACKGROUND" =3D "true" \ >> - =A0 =A0 =A0 =A0-a "$RECURSED" =3D "false"; then >> + =A0 =A0if test "$BACKGROUND" =3D "true" -a "$RECURSED" =3D "false"; th= en >> =A0 =A0 =A0 =A0 =A0$0 $background_start_arguments -b -r $RESPAWN_TIMEOUT= -p $PID_FILE \ >> =A0 =A0 =A0 =A0 =A0 =A0 =A0-o $STDOUT_FILE -e $STDERR_FILE -R & >> =A0 =A0 =A0 =A0 =A0echo "Apache CouchDB has started, time to relax." >> @@ -263,8 +289,9 @@ >> =A0} >> >> =A0parse_script_option_list () { >> + =A0 =A0_load_config >> =A0 =A0 =A0set +e >> - =A0 =A0options=3D`getopt hVc:C:ibp:r:Ro:e:skd $@` >> + =A0 =A0options=3D`getopt hVa:ncibp:r:Ro:e:skd $@` >> =A0 =A0 =A0if test ! $? -eq 0; then >> =A0 =A0 =A0 =A0 =A0display_error >> =A0 =A0 =A0fi >> @@ -272,10 +299,11 @@ >> =A0 =A0 =A0eval set -- $options >> =A0 =A0 =A0while [ $# -gt 0 ]; do >> =A0 =A0 =A0 =A0 =A0case "$1" in >> - =A0 =A0 =A0 =A0 =A0 =A0-h) shift; display_help; exit $SCRIPT_OK;; >> - =A0 =A0 =A0 =A0 =A0 =A0-V) shift; display_version; exit $SCRIPT_OK;; >> - =A0 =A0 =A0 =A0 =A0 =A0-c) shift; INI_FILES=3D"$INI_FILES $1"; shift;; >> - =A0 =A0 =A0 =A0 =A0 =A0-C) shift; RESET_CONFIG=3Dfalse; INI_FILES=3D"$= INI_FILES $1"; shift;; >> + =A0 =A0 =A0 =A0 =A0 =A0-h) shift; display_help; exit;; >> + =A0 =A0 =A0 =A0 =A0 =A0-V) shift; display_version; exit;; >> + =A0 =A0 =A0 =A0 =A0 =A0-a) shift; _add_config_file "$1"; shift;; >> + =A0 =A0 =A0 =A0 =A0 =A0-n) shift; _reset_config;; >> + =A0 =A0 =A0 =A0 =A0 =A0-c) shift; _print_config; exit;; >> =A0 =A0 =A0 =A0 =A0 =A0 =A0-i) shift; INTERACTIVE=3Dtrue;; >> =A0 =A0 =A0 =A0 =A0 =A0 =A0-b) shift; BACKGROUND=3Dtrue;; >> =A0 =A0 =A0 =A0 =A0 =A0 =A0-r) shift; RESPAWN_TIMEOUT=3D$1; shift;; >> @@ -283,7 +311,7 @@ >> =A0 =A0 =A0 =A0 =A0 =A0 =A0-p) shift; PID_FILE=3D$1; shift;; >> =A0 =A0 =A0 =A0 =A0 =A0 =A0-o) shift; STDOUT_FILE=3D$1; shift;; >> =A0 =A0 =A0 =A0 =A0 =A0 =A0-e) shift; STDERR_FILE=3D$1; shift;; >> - =A0 =A0 =A0 =A0 =A0 =A0-s) shift; check_status; exit $SCRIPT_OK;; >> + =A0 =A0 =A0 =A0 =A0 =A0-s) shift; check_status; exit;; >> =A0 =A0 =A0 =A0 =A0 =A0 =A0-k) shift; KILL=3Dtrue;; >> =A0 =A0 =A0 =A0 =A0 =A0 =A0-d) shift; SHUTDOWN=3Dtrue;; >> =A0 =A0 =A0 =A0 =A0 =A0 =A0--) shift; break;; >> >> Modified: couchdb/trunk/etc/couchdb/Makefile.am >> URL: http://svn.apache.org/viewvc/couchdb/trunk/etc/couchdb/Makefile.am?= rev=3D767164&r1=3D767163&r2=3D767164&view=3Ddiff >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D >> --- couchdb/trunk/etc/couchdb/Makefile.am (original) >> +++ couchdb/trunk/etc/couchdb/Makefile.am Tue Apr 21 14:51:17 2009 >> @@ -48,6 +48,14 @@ >> =A0 =A0 =A0 if test ! -f "$(DESTDIR)/$(localconfdir)/local.ini"; then \ >> =A0 =A0 =A0 =A0 =A0 cp $(srcdir)/local.ini "$(DESTDIR)/$(localconfdir)/l= ocal.ini"; \ >> =A0 =A0 =A0 fi >> + =A0 =A0 if test ! "$(mkdir_p)" =3D ""; then \ >> + =A0 =A0 =A0 =A0 $(mkdir_p) "$(DESTDIR)/$(localconfdir)/default.d"; \ >> + =A0 =A0 =A0 =A0 $(mkdir_p) "$(DESTDIR)/$(localconfdir)/local.d"; \ >> + =A0 =A0 else \ >> + =A0 =A0 =A0 =A0 echo "WARNING: You may have to create these directorie= s by hand."; \ >> + =A0 =A0 =A0 =A0 mkdir -p "$(DESTDIR)/$(localconfdir)/default.d"; \ >> + =A0 =A0 =A0 =A0 mkdir -p "$(DESTDIR)/$(localconfdir)/local.d"; \ >> + =A0 =A0 fi >> >> =A0uninstall-local: >> =A0 =A0 =A0 rm -f "$(DESTDIR)/$(localconfdir)/local.ini" >> >> Modified: couchdb/trunk/etc/couchdb/default.ini.tpl.in >> URL: http://svn.apache.org/viewvc/couchdb/trunk/etc/couchdb/default.ini.= tpl.in?rev=3D767164&r1=3D767163&r2=3D767164&view=3Ddiff >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D >> --- couchdb/trunk/etc/couchdb/default.ini.tpl.in (original) >> +++ couchdb/trunk/etc/couchdb/default.ini.tpl.in Tue Apr 21 14:51:17 200= 9 >> @@ -52,7 +52,6 @@ >> =A0_stats =3D {couch_httpd_stats_handlers, handle_stats_req} >> >> =A0[httpd_db_handlers] >> -_compact =3D {couch_httpd_db, handle_compact_req} >> =A0_design =3D {couch_httpd_db, handle_design_req} >> =A0_temp_view =3D {couch_httpd_view, handle_temp_view_req} >> >> >> > > -- > Noah Slater, http://tumbolia.org/nslater >