diff options
author | Jun Kuriyama <kuriyama@FreeBSD.org> | 2010-01-19 03:52:31 +0000 |
---|---|---|
committer | Jun Kuriyama <kuriyama@FreeBSD.org> | 2010-01-19 03:52:31 +0000 |
commit | ae4d8268eae817bf4d05ea7b614306957dca6675 (patch) | |
tree | caf489f8ed3aeddefa506fae257e462ed710c0b6 /databases | |
parent | 58ea3885ec8465def118ea4d3476d872f063c3aa (diff) |
Notes
Diffstat (limited to 'databases')
-rw-r--r-- | databases/Makefile | 1 | ||||
-rw-r--r-- | databases/kumofs/Makefile | 43 | ||||
-rw-r--r-- | databases/kumofs/distinfo | 3 | ||||
-rw-r--r-- | databases/kumofs/files/patch-framework.cc | 11 | ||||
-rw-r--r-- | databases/kumofs/files/patch-kazuhiki.cc | 29 | ||||
-rw-r--r-- | databases/kumofs/files/patch-mod_replace_stream.cc | 28 | ||||
-rw-r--r-- | databases/kumofs/pkg-descr | 3 | ||||
-rw-r--r-- | databases/kumofs/pkg-plist | 9 |
8 files changed, 127 insertions, 0 deletions
diff --git a/databases/Makefile b/databases/Makefile index bf4f8d99dbca..bc5972564d62 100644 --- a/databases/Makefile +++ b/databases/Makefile @@ -123,6 +123,7 @@ SUBDIR += kpogre SUBDIR += ksqlanalyzer SUBDIR += ksqlshell + SUBDIR += kumofs SUBDIR += libdbi SUBDIR += libdbi-drivers SUBDIR += libgda diff --git a/databases/kumofs/Makefile b/databases/kumofs/Makefile new file mode 100644 index 000000000000..814e9207dbc1 --- /dev/null +++ b/databases/kumofs/Makefile @@ -0,0 +1,43 @@ +# New ports collection makefile for: msgpack +# Date created: 18 Jan 2010 +# Whom: Jun Kuriyama <kuriyama@FreeBSD.org> +# +# $FreeBSD$ +# + +PORTNAME= kumofs +PORTVERSION= 0.3.0 +CATEGORIES= databases +MASTER_SITES= ${MASTER_SITE_LOCAL} +MASTER_SITE_SUBDIR= kuriyama +DISTNAME= kumofs-${GIT_REVISION} + +MAINTAINER= kuriyama@FreeBSD.org +COMMENT= Scalabe and highly available distributed key-value store + +LIB_DEPENDS= msgpack:${PORTSDIR}/devel/msgpack \ + tokyocabinet:${PORTSDIR}/databases/tokyocabinet +RUN_DEPENDS= rubygem-msgpack>0:${PORTSDIR}/devel/rubygem-msgpack + +WRKSRC= ${WRKDIR}/etolabo-kumofs-${GIT_REVISION} +USE_AUTOTOOLS= libtool:22 autoheader:262 autoconf:262 automake:110 aclocal:110 +ACLOCAL_ARGS= # empty +AUTOMAKE_ARGS= --add-missing --copy +CONFIGURE_ARGS= --with-msgpack=${LOCALBASE} +USE_GMAKE= yes +USE_RUBY= yes + +GIT_REVISION= 2a0c402 + +MAN1= kumoctl.1 \ + kumohash.1 \ + kumolog.1 \ + kumomergedb.1 \ + kumostat.1 \ + kumotop.1 + +pre-configure: + cd ${WRKSRC}; ${TOUCH} README + cd ${WRKSRC}; ${LIBTOOLIZE} --force --copy + +.include <bsd.port.mk> diff --git a/databases/kumofs/distinfo b/databases/kumofs/distinfo new file mode 100644 index 000000000000..bb918c3152f2 --- /dev/null +++ b/databases/kumofs/distinfo @@ -0,0 +1,3 @@ +MD5 (kumofs-2a0c402.tar.gz) = 1c28fc033edb95bff48fa7b4b865561a +SHA256 (kumofs-2a0c402.tar.gz) = dd453c6eb6d0e1b794df368308c588af772960db7c1f450ffae9c27c2e848b21 +SIZE (kumofs-2a0c402.tar.gz) = 158931 diff --git a/databases/kumofs/files/patch-framework.cc b/databases/kumofs/files/patch-framework.cc new file mode 100644 index 000000000000..ae6e5fa5722a --- /dev/null +++ b/databases/kumofs/files/patch-framework.cc @@ -0,0 +1,11 @@ +--- src/logic/manager/framework.cc.orig 2010-01-19 12:35:26.982220174 +0900 ++++ src/logic/manager/framework.cc 2010-01-19 12:35:39.546813770 +0900 +@@ -66,7 +66,7 @@ + + void framework::new_node(address addr, role_type id, shared_node n) + { +- LOG_WARN("new node ",id," ",addr); ++ LOG_WARN("new node ",(uint16_t)id," ",addr); + if(id == ROLE_MANAGER) { + if(addr != share->partner()) { + TLOGPACK("eP",3, diff --git a/databases/kumofs/files/patch-kazuhiki.cc b/databases/kumofs/files/patch-kazuhiki.cc new file mode 100644 index 000000000000..d08ab1844f75 --- /dev/null +++ b/databases/kumofs/files/patch-kazuhiki.cc @@ -0,0 +1,29 @@ +--- src/kazuhiki/kazuhiki.cc.orig 2010-01-18 06:06:16.000000000 +0900 ++++ src/kazuhiki/kazuhiki.cc 2010-01-19 11:56:44.907400335 +0900 +@@ -330,12 +330,16 @@ + memset(&hints, 0, sizeof(hints)); + hints.ai_family = UseIPv6 ? AF_UNSPEC : AF_INET; + hints.ai_socktype = SOCK_STREAM; // FIXME ++#ifdef __FreeBSD__ ++ hints.ai_flags = AI_ADDRCONFIG; ++#else + hints.ai_flags = AI_V4MAPPED | AI_ADDRCONFIG; ++#endif + + addrinfo *res = NULL; + int err; + if( (err=getaddrinfo(host, NULL, &hints, &res)) != 0 ) { +- parser::raise("can't resolve host name: %s", host); ++ parser::raise("can't resolve host name (%s): %s", gai_strerror(err), host); + } + + for(addrinfo* rp=res; rp; rp = rp->ai_next) { +@@ -349,7 +353,7 @@ + } + } + +- parser::raise("can't resolve host name: %s", host); ++ parser::raise("can't resolve host name (no suitable family): %s", host); + } + + void addr_any(unsigned short port, bool dummy) diff --git a/databases/kumofs/files/patch-mod_replace_stream.cc b/databases/kumofs/files/patch-mod_replace_stream.cc new file mode 100644 index 000000000000..6da66956eaa8 --- /dev/null +++ b/databases/kumofs/files/patch-mod_replace_stream.cc @@ -0,0 +1,28 @@ +--- src/logic/server/mod_replace_stream.cc.orig 2010-01-18 23:49:40.347505120 +0900 ++++ src/logic/server/mod_replace_stream.cc 2010-01-18 23:49:59.399149969 +0900 +@@ -277,6 +277,17 @@ + size -= rl; + } + #else ++#ifdef __FreeBSD__ ++ size_t sent = 0; ++ while(sent < size) { ++ size_t len = size - sent; ++ off_t sbytes = 0; ++ if(::sendfile(m_fd.get(), sock, sent, len, NULL, &sbytes, 0) < 0) { ++ throw mp::system_error(errno, "offer send error"); ++ } ++ sent += sbytes; ++ } ++#else + off_t sent = 0; + while(sent < size) { + off_t len = size - sent; +@@ -286,6 +297,7 @@ + sent += len; + } + #endif ++#endif + } + + diff --git a/databases/kumofs/pkg-descr b/databases/kumofs/pkg-descr new file mode 100644 index 000000000000..dc689a035939 --- /dev/null +++ b/databases/kumofs/pkg-descr @@ -0,0 +1,3 @@ +kumofs is a scalabe and highly available distributed key-value store. + +WWW: http://github.com/etolabo/kumofs diff --git a/databases/kumofs/pkg-plist b/databases/kumofs/pkg-plist new file mode 100644 index 000000000000..77052ef507f4 --- /dev/null +++ b/databases/kumofs/pkg-plist @@ -0,0 +1,9 @@ +bin/kumo-gateway +bin/kumo-manager +bin/kumo-server +bin/kumoctl +bin/kumohash +bin/kumolog +bin/kumomergedb +bin/kumostat +bin/kumotop |