diff options
Diffstat (limited to 'script/compact-xapian-database')
-rwxr-xr-x | script/compact-xapian-database | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/script/compact-xapian-database b/script/compact-xapian-database index 982c0e878..f16c4ca37 100755 --- a/script/compact-xapian-database +++ b/script/compact-xapian-database @@ -3,8 +3,10 @@ export RAILS_ENV=$1 set -e +cd "$(dirname "$0")"/.. + if [ -x /usr/bin/xapian-compact ]; then - XAPIAN_DB_DIR=$( cd "$( dirname "$0" )" && pwd )/../lib/acts_as_xapian/xapiandbs + XAPIAN_DB_DIR=$( pwd )/lib/acts_as_xapian/xapiandbs if [ -e "$XAPIAN_DB_DIR/$RAILS_ENV.new" ]; then echo >&2 "Didn't compact Xapian database because there was an existing database at $XAPIAN_DB_DIR/$RAILS_ENV.new" exit 1 @@ -12,12 +14,12 @@ if [ -x /usr/bin/xapian-compact ]; then OWNER=$(stat -c %U "$XAPIAN_DB_DIR/$RAILS_ENV") export XAPIAN_DB_DIR RAILS_ENV su "$OWNER" <<SU - xapian-compact "\$XAPIAN_DB_DIR/\$RAILS_ENV" "\$XAPIAN_DB_DIR/\$RAILS_ENV.new" + commonlib/bin/output-on-error xapian-compact "\$XAPIAN_DB_DIR/\$RAILS_ENV" "\$XAPIAN_DB_DIR/\$RAILS_ENV.new" SU mv "$XAPIAN_DB_DIR/$RAILS_ENV" "$XAPIAN_DB_DIR/$RAILS_ENV.tmp" mv "$XAPIAN_DB_DIR/$RAILS_ENV.new" "$XAPIAN_DB_DIR/$RAILS_ENV" rm -rf "$XAPIAN_DB_DIR/$RAILS_ENV.tmp" - /etc/init.d/apache2 restart + commonlib/bin/output-on-error /etc/init.d/apache2 restart fi else echo >&2 "Could not find xapian-compact script; have you installed xapian-tools?" |