From owner-freebsd-ports-bugs@FreeBSD.ORG Tue Jan 24 11:30:09 2012 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CD32F1065670 for ; Tue, 24 Jan 2012 11:30:09 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id A21168FC15 for ; Tue, 24 Jan 2012 11:30:09 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q0OBU9Uc072385 for ; Tue, 24 Jan 2012 11:30:09 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q0OBU91R072383; Tue, 24 Jan 2012 11:30:09 GMT (envelope-from gnats) Resent-Date: Tue, 24 Jan 2012 11:30:09 GMT Resent-Message-Id: <201201241130.q0OBU91R072383@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, "Mikhail T." Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8E28A1065767 for ; Tue, 24 Jan 2012 11:24:34 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22]) by mx1.freebsd.org (Postfix) with ESMTP id 7CF948FC17 for ; Tue, 24 Jan 2012 11:24:34 +0000 (UTC) Received: from red.freebsd.org (localhost [127.0.0.1]) by red.freebsd.org (8.14.4/8.14.4) with ESMTP id q0OBOYuq022455 for ; Tue, 24 Jan 2012 11:24:34 GMT (envelope-from nobody@red.freebsd.org) Received: (from nobody@localhost) by red.freebsd.org (8.14.4/8.14.4/Submit) id q0OBOYb4022454; Tue, 24 Jan 2012 11:24:34 GMT (envelope-from nobody) Message-Id: <201201241124.q0OBOYb4022454@red.freebsd.org> Date: Tue, 24 Jan 2012 11:24:34 GMT From: "Mikhail T." To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: ports/164442: [maintainer] [patch] databases/memcacheq: some small fixes X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Jan 2012 11:30:09 -0000 >Number: 164442 >Category: ports >Synopsis: [maintainer] [patch] databases/memcacheq: some small fixes >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Tue Jan 24 11:30:09 UTC 2012 >Closed-Date: >Last-Modified: >Originator: Mikhail T. >Release: 9.0 >Organization: >Environment: >Description: - Integrate a upstream patch to fix lock bug when creating queue and switch to DB5 - Add a patch to fix configure to proper handling of --enable-threads - Add LICENSE - Bump PORTREVISION >How-To-Repeat: >Fix: Index: Makefile =================================================================== RCS file: /home/ncvs/ports/databases/memcacheq/Makefile,v retrieving revision 1.4 diff -u -r1.4 Makefile --- Makefile 19 Nov 2011 15:44:00 -0000 1.4 +++ Makefile 24 Jan 2012 11:22:43 -0000 @@ -7,7 +7,7 @@ PORTNAME= memcacheq PORTVERSION= 0.2.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= databases MASTER_SITES= ${MASTER_SITE_GOOGLE_CODE} \ ${MASTER_SITE_GENTOO} @@ -16,6 +16,8 @@ MAINTAINER= m.tsatsenko@gmail.com COMMENT= Simple queue service over Memcache +LICENSE= BSD + LIB_DEPENDS= event-1.4:${PORTSDIR}/devel/libevent USE_CSTD= gnu89 @@ -23,7 +25,7 @@ LDFLAGS+= -l"${BDB_LIB_NAME}" -L"${LOCALBASE}/lib" USE_RC_SUBR= memcacheq -USE_BDB= 47+ +USE_BDB= 5 GNU_CONFIGURE= YES CONFIGURE_ARGS= --with-libevent=${LOCALBASE} --with-bdb=${LOCALBASE} --enable-threads cvs diff: Diffing files Index: files/patch-bdb.c =================================================================== RCS file: files/patch-bdb.c diff -N files/patch-bdb.c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/patch-bdb.c 24 Jan 2012 11:22:43 -0000 @@ -0,0 +1,41 @@ +--- bdb.c.orig 2012-01-24 14:49:12.248201883 +0400 ++++ bdb.c 2012-01-24 14:50:35.801194396 +0400 +@@ -264,8 +264,6 @@ + } + + int bdb_create_queue(char *queue_name) { +- pthread_rwlock_wrlock(&qlist_ht_lock); +- + char *k = strdup(queue_name); + assert(k != NULL); + queue_t *q = (queue_t *)calloc(1, sizeof(queue_t)); +@@ -309,14 +307,12 @@ + CHECK_DB_RET(ret); + int result = hashtable_insert(qlist_htp, (void *)k, (void *)q); + assert(result != 0); +- pthread_rwlock_unlock(&qlist_ht_lock); + return 0; + dberr: + if (txnp != NULL){ + txnp->abort(txnp); + } + fprintf(stderr, "bdb_create_queue: %s %s\n", queue_name, db_strerror(ret)); +- pthread_rwlock_unlock(&qlist_ht_lock); + return -1; + } + +@@ -554,12 +550,13 @@ + + if (NULL == q) { + pthread_rwlock_unlock(&qlist_ht_lock); ++ /* switch to write lock */ ++ pthread_rwlock_wrlock(&qlist_ht_lock); + ret = bdb_create_queue(key); + if (0 != ret){ + return -1; + } + /* search again */ +- pthread_rwlock_rdlock(&qlist_ht_lock); + q = (queue_t *)hashtable_search(qlist_htp, (void *)key); + } + Index: files/patch-configure =================================================================== RCS file: files/patch-configure diff -N files/patch-configure --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ files/patch-configure 24 Jan 2012 11:22:43 -0000 @@ -0,0 +1,11 @@ +--- configure.orig 2011-10-14 14:34:47.367393592 +0400 ++++ configure 2011-10-14 14:34:57.769420421 +0400 +@@ -5505,7 +5505,7 @@ + enableval=$enable_threads; + fi + +-if test "x$enable_threads" == "xyes"; then ++if test "x$enable_threads" = "xyes"; then + { echo "$as_me:$LINENO: checking for library containing pthread_create" >&5 + echo $ECHO_N "checking for library containing pthread_create... $ECHO_C" >&6; } + if test "${ac_cv_search_pthread_create+set}" = set; then >Release-Note: >Audit-Trail: >Unformatted: