Author: billa
Date: Thu Jul 12 05:35:01 2007
New Revision: 555612

URL: http://svn.apache.org/viewvc?view=rev&rev=555612
Log:
workaround for cp not having the -l option on Solaris and OS X: SOLR-282

Modified:
    lucene/solr/trunk/src/scripts/abc
    lucene/solr/trunk/src/scripts/abo
    lucene/solr/trunk/src/scripts/backup
    lucene/solr/trunk/src/scripts/commit
    lucene/solr/trunk/src/scripts/optimize
    lucene/solr/trunk/src/scripts/scripts-util
    lucene/solr/trunk/src/scripts/snapinstaller
    lucene/solr/trunk/src/scripts/snappuller
    lucene/solr/trunk/src/scripts/snapshooter

Modified: lucene/solr/trunk/src/scripts/abc
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/src/scripts/abc?view=diff&rev=555612&r1=555611&r2=555612
==============================================================================
--- lucene/solr/trunk/src/scripts/abc (original)
+++ lucene/solr/trunk/src/scripts/abc Thu Jul 12 05:35:01 2007
@@ -131,13 +131,18 @@
   logExit failed 1
 fi
 
-# check status of commit request
+# check status of commit request - original format
 echo $rs | grep '<result.*status="0"' > /dev/null 2>&1
 if [[ $? != 0 ]]
 then
-  logMessage commit request to Solr at ${curl_url} failed:
-  logMessage $rs
-  logExit failed 2
+# check status of commit request - new format
+  echo $rs | grep '<lst name="responseHeader"><int name="status">0</int>' > 
/dev/null 2>&1
+  if [[ $? != 0 ]]
+  then
+    logMessage commit request to Solr at ${curl_url} failed:
+    logMessage $rs
+    logExit failed 2
+  fi
 fi
 
 # successful commit creates a snapshot file synchronously
@@ -170,7 +175,16 @@
 
 # make a backup using hard links into temporary location
 # then move it into place atomically
-cp -lr ${lastsnap} ${data_dir}/${temp}
+if [[ "${OS}" == "SunOS" || "${OS}" == "Darwin" ]]
+then
+  orig_dir=$(pwd)
+  mkdir ${data_dir}/${temp}
+  cd ${lastsnap}
+  find . -print|cpio -pdlmu ${data_dir}/${temp} 1>/dev/null 2>&1
+  cd ${orig_dir}
+else
+  cp -lr ${lastsnap} ${data_dir}/${temp}
+fi
 mv ${data_dir}/${temp} ${data_dir}/${name}
 
 logExit ended 0

Modified: lucene/solr/trunk/src/scripts/abo
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/src/scripts/abo?view=diff&rev=555612&r1=555611&r2=555612
==============================================================================
--- lucene/solr/trunk/src/scripts/abo (original)
+++ lucene/solr/trunk/src/scripts/abo Thu Jul 12 05:35:01 2007
@@ -131,13 +131,18 @@
   logExit failed 1
 fi
 
-# check status of optimize request
+# check status of optimize request - original format
 echo $rs | grep '<result.*status="0"' > /dev/null 2>&1
 if [[ $? != 0 ]]
 then
-  logMessage optimize request to Solr at ${curl_url} failed:
-  logMessage $rs
-  logExit failed 2
+# check status of optimize request - new format
+  echo $rs | grep '<lst name="responseHeader"><int name="status">0</int>' > 
/dev/null 2>&1
+  if [[ $? != 0 ]]
+  then
+    logMessage optimize request to Solr at ${curl_url} failed:
+    logMessage $rs
+    logExit failed 2
+  fi
 fi
 
 # successful optimize creates a snapshot file synchronously
@@ -170,7 +175,16 @@
 
 # make a backup using hard links into temporary location
 # then move it into place atomically
-cp -lr ${lastsnap} ${data_dir}/${temp}
+if [[ "${OS}" == "SunOS" || "${OS}" == "Darwin" ]]
+then
+  orig_dir=$(pwd)
+  mkdir ${data_dir}/${temp}
+  cd ${lastsnap}
+  find . -print|cpio -pdlmu ${data_dir}/${temp} 1>/dev/null 2>&1
+  cd ${orig_dir}
+else
+  cp -lr ${lastsnap} ${data_dir}/${temp}
+fi
 mv ${data_dir}/${temp} ${data_dir}/${name}
 
 logExit ended 0

Modified: lucene/solr/trunk/src/scripts/backup
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/src/scripts/backup?view=diff&rev=555612&r1=555611&r2=555612
==============================================================================
--- lucene/solr/trunk/src/scripts/backup (original)
+++ lucene/solr/trunk/src/scripts/backup Thu Jul 12 05:35:01 2007
@@ -101,7 +101,16 @@
 
 # make a backup using hard links into temporary location
 # then move it into place atomically
-cp -lr ${data_dir}/index ${data_dir}/${temp}
+if [[ "${OS}" == "SunOS" || "${OS}" == "Darwin" ]]
+then
+  orig_dir=$(pwd)
+  mkdir ${data_dir}/${temp}
+  cd ${data_dir}/index
+  find . -print|cpio -pdlmu ${data_dir}/${temp} 1>/dev/null 2>&1
+  cd ${orig_dir}
+else
+  cp -lr ${data_dir}/index ${data_dir}/${temp}
+fi
 mv ${data_dir}/${temp} ${data_dir}/${name}
 
 logExit ended 0

Modified: lucene/solr/trunk/src/scripts/commit
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/src/scripts/commit?view=diff&rev=555612&r1=555611&r2=555612
==============================================================================
--- lucene/solr/trunk/src/scripts/commit (original)
+++ lucene/solr/trunk/src/scripts/commit Thu Jul 12 05:35:01 2007
@@ -116,13 +116,18 @@
   logExit failed 1
 fi
 
-# check status of commit request
+# check status of commit request - original format
 echo $rs | grep '<result.*status="0"' > /dev/null 2>&1
 if [[ $? != 0 ]]
 then
-  logMessage commit request to Solr at ${curl_url} failed:
-  logMessage $rs
-  logExit failed 2
+# check status of commit request - new format
+  echo $rs | grep '<lst name="responseHeader"><int name="status">0</int>' > 
/dev/null 2>&1
+  if [[ $? != 0 ]]
+  then
+    logMessage commit request to Solr at ${curl_url} failed:
+    logMessage $rs
+    logExit failed 2
+  fi
 fi
 
 logExit ended 0

Modified: lucene/solr/trunk/src/scripts/optimize
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/src/scripts/optimize?view=diff&rev=555612&r1=555611&r2=555612
==============================================================================
--- lucene/solr/trunk/src/scripts/optimize (original)
+++ lucene/solr/trunk/src/scripts/optimize Thu Jul 12 05:35:01 2007
@@ -117,13 +117,18 @@
   logExit failed 1
 fi
 
-# check status of optimize request
+# check status of optimize request - original format
 rc=`echo $rs|cut -f2 -d'"'`
 if [[ $? != 0 ]]
 then
-  logMessage optimize request to Solr at ${curl_url} failed:
-  logMessage $rs
-  logExit failed 2
+# check status of optimize request - new format
+  echo $rs | grep '<lst name="responseHeader"><int name="status">0</int>' > 
/dev/null 2>&1
+  if [[ $? != 0 ]]
+  then
+    logMessage optimize request to Solr at ${curl_url} failed:
+    logMessage $rs
+    logExit failed 2
+  fi
 fi
 
 logExit ended 0

Modified: lucene/solr/trunk/src/scripts/scripts-util
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/src/scripts/scripts-util?view=diff&rev=555612&r1=555611&r2=555612
==============================================================================
--- lucene/solr/trunk/src/scripts/scripts-util (original)
+++ lucene/solr/trunk/src/scripts/scripts-util Thu Jul 12 05:35:01 2007
@@ -21,6 +21,7 @@
 
 # set up variables
 prog=${0##*/}
+OS=`uname`
 
 # source the config file if present
 confFile=${solr_root}/conf/scripts.conf

Modified: lucene/solr/trunk/src/scripts/snapinstaller
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/src/scripts/snapinstaller?view=diff&rev=555612&r1=555611&r2=555612
==============================================================================
--- lucene/solr/trunk/src/scripts/snapinstaller (original)
+++ lucene/solr/trunk/src/scripts/snapinstaller Thu Jul 12 05:35:01 2007
@@ -141,9 +141,20 @@
 # install using hard links into temporary directory
 # remove original index and then atomically copy new one into place
 logMessage installing snapshot ${name}
-cp -lr ${name}/ ${data_dir}/index.tmp$$ && \
-/bin/rm -rf ${data_dir}/index && \
-mv -f ${data_dir}/index.tmp$$ ${data_dir}/index
+if [[ "${OS}" == "SunOS" || "${OS}" == "Darwin" ]]
+then
+  orig_dir=$(pwd)
+  mkdir ${data_dir}/index.tmp$$ && \
+  cd ${name} && \
+  find . -print|cpio -pdlmu ${data_dir}/index.tmp$$ 1>/dev/null 2>&1 && \
+  /bin/rm -rf ${data_dir}/index && \
+  mv -f ${data_dir}/index.tmp$$ ${data_dir}/index
+  cd ${orig_dir}
+else
+  cp -lr ${name}/ ${data_dir}/index.tmp$$ && \
+  /bin/rm -rf ${data_dir}/index && \
+  mv -f ${data_dir}/index.tmp$$ ${data_dir}/index
+fi
 
 # update distribution stats
 echo ${name} > ${solr_root}/logs/snapshot.current

Modified: lucene/solr/trunk/src/scripts/snappuller
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/src/scripts/snappuller?view=diff&rev=555612&r1=555611&r2=555612
==============================================================================
--- lucene/solr/trunk/src/scripts/snappuller (original)
+++ lucene/solr/trunk/src/scripts/snappuller Thu Jul 12 05:35:01 2007
@@ -200,7 +200,16 @@
 # take a snapshot of current index so that only modified files will be rsync-ed
 # put the snapshot in the 'work-in-progress" directory to prevent it from
 # being installed while the copying is still in progress
-cp -lr ${data_dir}/index ${data_dir}/${name}-wip
+if [[ "${OS}" == "SunOS" || "${OS}" == "Darwin" ]]
+then
+  orig_dir=$(pwd)
+  mkdir ${data_dir}/${name}-wip
+  cd ${data_dir}/index
+  find . -print|cpio -pdlmu ${data_dir}/${name}-wip 1>/dev/null 2>&1
+  cd ${orig_dir}
+else
+  cp -lr ${data_dir}/index ${data_dir}/${name}-wip
+fi
 # force rsync of segments and .del files since we are doing size-only
 if [[ -n ${sizeonly} ]]
 then

Modified: lucene/solr/trunk/src/scripts/snapshooter
URL: 
http://svn.apache.org/viewvc/lucene/solr/trunk/src/scripts/snapshooter?view=diff&rev=555612&r1=555611&r2=555612
==============================================================================
--- lucene/solr/trunk/src/scripts/snapshooter (original)
+++ lucene/solr/trunk/src/scripts/snapshooter Thu Jul 12 05:35:01 2007
@@ -102,7 +102,16 @@
 
 # take a snapshot using hard links into temporary location
 # then move it into place atomically
-cp -lr ${data_dir}/index ${temp}
+if [[ "${OS}" == "SunOS" || "${OS}" == "Darwin" ]]
+then
+  orig_dir=$(pwd)
+  mkdir ${temp}
+  cd ${data_dir}/index
+  find . -print|cpio -pdlmu ${temp} 1>/dev/null 2>&1
+  cd ${orig_dir}
+else
+  cp -lr ${data_dir}/index ${temp}
+fi
 mv ${temp} ${name}
 
 logExit ended 0


Reply via email to