[arch-commits] Commit in memcached/repos (5 files)

Dan McGee dan at archlinux.org
Sun Sep 13 15:26:16 UTC 2009


    Date: Sunday, September 13, 2009 @ 11:26:16
  Author: dan
Revision: 51910

Merged revisions 51908 via svnmerge from 
svn+ssh://gerolde.archlinux.org/srv/svn-packages/memcached/trunk

........
  r51908 | dan | 2009-09-13 10:25:00 -0500 (Sun, 13 Sep 2009) | 2 lines
  
  upgpkg: memcached 1.4.1-1
      bump to 1.4.x series, change conf a bit
........

Modified:
  memcached/repos/extra-i686/	(properties)
  memcached/repos/extra-i686/ChangeLog
  memcached/repos/extra-i686/PKGBUILD
  memcached/repos/extra-i686/memcached.conf
  memcached/repos/extra-i686/memcached.sh

----------------+
 ChangeLog      |    5 +++++
 PKGBUILD       |   18 ++++++++----------
 memcached.conf |    4 +++-
 memcached.sh   |   37 ++++++++++++++++++++++++++++++++-----
 4 files changed, 48 insertions(+), 16 deletions(-)


Property changes on: memcached/repos/extra-i686
___________________________________________________________________
Modified: svnmerge-integrated
   - /memcached/trunk:1-35346
   + /memcached/trunk:1-51909

Modified: extra-i686/ChangeLog
===================================================================
--- extra-i686/ChangeLog	2009-09-13 15:25:17 UTC (rev 51909)
+++ extra-i686/ChangeLog	2009-09-13 15:26:16 UTC (rev 51910)
@@ -1,3 +1,8 @@
+2009-09-13 Dan McGee <dan at archlinux.org>
+	* Bump to 1.4.1
+	* Add new required conf.d option MEMCACHED_USER
+	* Rework the way we store the PID for init script usage
+
 2009-04-12 Dan McGee <dan at archlinux.org>
 	* Bump to 1.2.8
 

Modified: extra-i686/PKGBUILD
===================================================================
--- extra-i686/PKGBUILD	2009-09-13 15:25:17 UTC (rev 51909)
+++ extra-i686/PKGBUILD	2009-09-13 15:26:16 UTC (rev 51910)
@@ -2,7 +2,7 @@
 # Contributor: Michael Irwin <6d6469 at gmail.com>
 
 pkgname=memcached
-pkgver=1.2.8
+pkgver=1.4.1
 pkgrel=1
 pkgdesc="A distributed memory object caching system"
 arch=(i686 x86_64)
@@ -10,15 +10,16 @@
 license=('GPL')
 depends=('libevent')
 backup=('etc/conf.d/memcached')
-source=(http://www.danga.com/memcached/dist/$pkgname-$pkgver.tar.gz
+source=(http://memcached.googlecode.com/files/$pkgname-$pkgver.tar.gz
         memcached.conf
         memcached.sh)
 
 build() {
   cd $startdir/src/$pkgname-$pkgver
-  # enable threads needs to be explicit
-  ./configure --prefix=/usr --enable-threads
+  ./configure --prefix=/usr
+
   make || return 1
+
   make DESTDIR=$startdir/pkg install || return 1
   install -D -m 644 $startdir/src/$pkgname.conf \
   	$startdir/pkg/etc/conf.d/$pkgname
@@ -26,9 +27,6 @@
   	$startdir/pkg/etc/rc.d/$pkgname
 }
 
-md5sums=('e5a4ee04e517a5cad110f29e4490e4ab'
-         'bf5c601297b42be7baa0a3bcca2d6077'
-         '001c5d6dc5d106f5a8aa2fc64525f5ba')
-sha256sums=('9e36702833a9213d607801a44325d108e6b86abc7af82fe265cce4b96eb2269e'
-            '4d3c586a9bd8bd8e8499d08149a5fe534a941e2e5098ef08f9b55eaa3241cc0d'
-            '6b606000c37420f1d7f34e735670daeaad889e2937e7490a71f2584fce6f2922')
+md5sums=('fb1b7e9fcf47b95c5ad3bbeb76342088'
+         'bf15619930dadf0c08669566e4aa809c'
+         '65f88b69cf3112b178725af121327765')

Modified: extra-i686/memcached.conf
===================================================================
--- extra-i686/memcached.conf	2009-09-13 15:25:17 UTC (rev 51909)
+++ extra-i686/memcached.conf	2009-09-13 15:26:16 UTC (rev 51910)
@@ -1,2 +1,4 @@
+# user to run memcached as; also used for pid file ownership
+MEMCACHED_USER="nobody"
 # see 'memcached -h' for available options
-MEMCACHED_ARGS="-u nobody -l 127.0.0.1 -t 1"
+MEMCACHED_ARGS="-l 127.0.0.1 -t 1"

Modified: extra-i686/memcached.sh
===================================================================
--- extra-i686/memcached.sh	2009-09-13 15:25:17 UTC (rev 51909)
+++ extra-i686/memcached.sh	2009-09-13 15:26:16 UTC (rev 51910)
@@ -4,16 +4,42 @@
 . /etc/rc.d/functions
 . /etc/conf.d/memcached
 
-PID=`pidof -o %PPID /usr/bin/memcached`
+PIDFILE='/var/run/memcached.pid'
+
+getpid() {
+  local pid
+  pid=$(cat $PIDFILE 2>/dev/null)
+  # if the process is no longer valid, don't return it
+  if [ -n "$pid" ]; then
+    if ! ps -p $pid >/dev/null; then
+      rm -f $PIDFILE
+      pid=""
+    fi
+  fi
+  echo $pid
+}
+
+PID="$(getpid)"
+
 case "$1" in
   start)
     stat_busy "Starting memcached"
-    [ -z "$PID" ] && /usr/bin/memcached -d $MEMCACHED_ARGS
-    if [ ! -z "$PID" -o $? -gt 0 ]; then
+    # memcached is retarded and doesn't write to the pidfile
+    # before it drops permissions
+    if [ -n "$PID" ]; then
       stat_fail
+    elif [ -z "$MEMCACHED_USER"  ]; then
+      echo "MEMCACHED_USER must be defined in /etc/conf.d/memcached"
+      stat_fail
     else
-      add_daemon memcached
-      stat_done
+      touch $PIDFILE && chown $MEMCACHED_USER $PIDFILE
+      /usr/bin/memcached -d -P $PIDFILE -u $MEMCACHED_USER $MEMCACHED_ARGS
+      if [ $? -gt 0 ]; then
+        stat_fail
+      else
+        add_daemon memcached
+        stat_done
+      fi
     fi
     ;;
   stop)
@@ -22,6 +48,7 @@
     if [ $? -gt 0 ]; then
       stat_fail
     else
+      rm -f $PIDFILE
       rm_daemon memcached
       stat_done
     fi




More information about the arch-commits mailing list