diff options
| -rw-r--r-- | databases/mysql-proxy/Makefile | 3 | ||||
| -rw-r--r-- | databases/mysql-proxy/distinfo | 6 | ||||
| -rw-r--r-- | databases/mysql-proxy/files/patch-Makefile.in | 11 | ||||
| -rw-r--r-- | databases/mysql-proxy/files/patch-lib-rw-splitting.lua | 73 | ||||
| -rw-r--r-- | databases/mysql-proxy/files/patch-src-network-injection-lua.c | 93 | ||||
| -rw-r--r-- | databases/mysql-proxy/pkg-plist | 48 | 
6 files changed, 62 insertions, 172 deletions
diff --git a/databases/mysql-proxy/Makefile b/databases/mysql-proxy/Makefile index 1b47e3352f9e..7e9ea7a97543 100644 --- a/databases/mysql-proxy/Makefile +++ b/databases/mysql-proxy/Makefile @@ -6,8 +6,7 @@  #  PORTNAME=	mysql-proxy -PORTVERSION=	0.7.2 -PORTREVISION=	4 +PORTVERSION=	0.8.0  CATEGORIES=	databases  MASTER_SITES=	${MASTER_SITE_MYSQL}  MASTER_SITE_SUBDIR=	MySQL-Proxy diff --git a/databases/mysql-proxy/distinfo b/databases/mysql-proxy/distinfo index f6ed2877b72f..c61a92892354 100644 --- a/databases/mysql-proxy/distinfo +++ b/databases/mysql-proxy/distinfo @@ -1,3 +1,3 @@ -MD5 (mysql-proxy-0.7.2.tar.gz) = 85caf142acfb4ee7ae5a8bce175579f7 -SHA256 (mysql-proxy-0.7.2.tar.gz) = c2962bc4e2c143c4c181d9014396c4e3b8c72c1eed6b9dd808bee6b3cb5e73fc -SIZE (mysql-proxy-0.7.2.tar.gz) = 704438 +MD5 (mysql-proxy-0.8.0.tar.gz) = b6a9748d72e8db7fe3789fbdd60ff451 +SHA256 (mysql-proxy-0.8.0.tar.gz) = 0a195fe0f86d12df8d9ffc27e91347680521c8702460bac5ed591608a740bc1c +SIZE (mysql-proxy-0.8.0.tar.gz) = 756371 diff --git a/databases/mysql-proxy/files/patch-Makefile.in b/databases/mysql-proxy/files/patch-Makefile.in new file mode 100644 index 000000000000..72e9dc2be56f --- /dev/null +++ b/databases/mysql-proxy/files/patch-Makefile.in @@ -0,0 +1,11 @@ +--- Makefile.in.orig	2010-01-26 13:59:52.000000000 +0100 ++++ Makefile.in	2010-01-26 14:00:16.000000000 +0100 +@@ -238,7 +238,7 @@ + 		deps +  + ACLOCAL_AMFLAGS = -I m4 +-pkgconfigdir = $(libdir)/pkgconfig ++pkgconfigdir = $(libexecdir)/pkgconfig + pkgconfig_DATA = mysql-proxy.pc mysql-chassis.pc + all: config.h + 	$(MAKE) $(AM_MAKEFLAGS) all-recursive diff --git a/databases/mysql-proxy/files/patch-lib-rw-splitting.lua b/databases/mysql-proxy/files/patch-lib-rw-splitting.lua deleted file mode 100644 index 3b4aaac738c4..000000000000 --- a/databases/mysql-proxy/files/patch-lib-rw-splitting.lua +++ /dev/null @@ -1,73 +0,0 @@ ---- lib/rw-splitting.lua.orig	2009-06-30 22:47:39.000000000 +0600 -+++ lib/rw-splitting.lua	2009-10-20 12:06:21.000000000 +0600 -@@ -65,7 +65,7 @@ -  - 	if is_debug then - 		print() --		print("[connect_server] " .. proxy.connection.client.address) -+		print("[connect_server] " .. proxy.connection.client.src.name) - 	end -  - 	local rw_ndx = 0 -@@ -143,7 +143,7 @@ - -- auth.packet is the packet - function read_auth_result( auth ) - 	if is_debug then --		print("[read_auth_result] " .. proxy.connection.client.address) -+		print("[read_auth_result] " .. proxy.connection.client.src.name) - 	end - 	if auth.packet:byte() == proxy.MYSQLD_PACKET_OK then - 		-- auth was fine, disconnect from the server -@@ -175,7 +175,7 @@ -  - 	-- looks like we have to forward this statement to a backend - 	if is_debug then --		print("[read_query] " .. proxy.connection.client.address) -+		print("[read_query] " .. proxy.connection.client.src.name) - 		print("  current backend   = " .. proxy.connection.backend_ndx) - 		print("  client default db = " .. c.default_db) - 		print("  client username   = " .. c.username) -@@ -198,7 +198,7 @@ - 		return proxy.PROXY_SEND_RESULT - 	end -  --	proxy.queries:append(1, packet) -+	proxy.queries:append(1, packet, { resultset_is_needed = true }) -  - 	-- read/write splitting  - 	-- -@@ -278,14 +278,14 @@ - 		print("    server default db: " .. s.default_db) - 		print("    client default db: " .. c.default_db) - 		print("    syncronizing") --		proxy.queries:prepend(2, string.char(proxy.COM_INIT_DB) .. c.default_db) -+		proxy.queries:prepend(2, string.char(proxy.COM_INIT_DB) .. c.default_db, { resultset_is_needed = true }) - 	end -  - 	-- send to master - 	if is_debug then - 		if proxy.connection.backend_ndx > 0 then - 			local b = proxy.global.backends[proxy.connection.backend_ndx] --			print("  sending to backend : " .. b.address); -+			print("  sending to backend : " .. b.dst.name); - 			print("    is_slave         : " .. tostring(b.type == proxy.BACKEND_TYPE_RO)); - 			print("    server default db: " .. s.default_db) - 			print("    server username  : " .. s.username) -@@ -319,7 +319,7 @@ - 				proxy.response = { - 					type = proxy.MYSQLD_PACKET_ERR, - 					errmsg = "can't change DB ".. proxy.connection.client.default_db .. --						" to on slave " .. proxy.global.backends[proxy.connection.backend_ndx].address -+						" to on slave " .. proxy.global.backends[proxy.connection.backend_ndx].dst.name - 				} -  - 				return proxy.PROXY_SEND_RESULT -@@ -352,7 +352,7 @@ - function disconnect_client() - 	local is_debug = proxy.global.config.rwsplit.is_debug - 	if is_debug then --		print("[disconnect_client] " .. proxy.connection.client.address) -+		print("[disconnect_client] " .. proxy.connection.client.src.name) - 	end -  - 	-- make sure we are disconnection from the connection diff --git a/databases/mysql-proxy/files/patch-src-network-injection-lua.c b/databases/mysql-proxy/files/patch-src-network-injection-lua.c deleted file mode 100644 index f876f7a8585c..000000000000 --- a/databases/mysql-proxy/files/patch-src-network-injection-lua.c +++ /dev/null @@ -1,93 +0,0 @@ ---- src/network-injection-lua.c.orig	2009-06-30 22:47:39.000000000 +0600 -+++ src/network-injection-lua.c	2009-11-17 09:39:32.000000000 +0500 -@@ -33,17 +33,18 @@ - #define TIME_DIFF_US(t2, t1) \ - ((t2.tv_sec - t1.tv_sec) * 1000000.0 + (t2.tv_usec - t1.tv_usec)) -  -+typedef enum { -+	PROXY_QUEUE_ADD_PREPEND, -+	PROXY_QUEUE_ADD_APPEND -+} proxy_queue_add_t; -  - /** -- * proxy.queries:append(id, packet[, { options }]) -+ * handle _append() and _prepend()  -  * -- *   id:      opaque numeric id (numeric) -- *   packet:  mysql packet to append (string)  FIXME: support table for multiple packets -- *   options: table of options (table) -- *     backend_ndx:  backend_ndx to send it to (numeric) -- *     resultset_is_needed: expose the result-set into lua (bool) -+ * _append() and _prepend() have the same behaviour, parameters, ...  -+ * just different in position -  */ --static int proxy_queue_append(lua_State *L) { -+static int proxy_queue_add(lua_State *L, proxy_queue_add_t type) { - 	GQueue *q = *(GQueue **)luaL_checkself(L); - 	int resp_type = luaL_checkinteger(L, 2); - 	size_t str_len; -@@ -68,7 +69,12 @@ - 		} else if (lua_isboolean(L, -1)) { - 			inj->resultset_is_needed = lua_toboolean(L, -1); - 		} else { --			luaL_argerror(L, 4, ":append(..., { resultset_is_needed = boolean } ), is %s"); -+			switch (type) { -+			case PROXY_QUEUE_ADD_APPEND: -+				return luaL_argerror(L, 4, ":append(..., { resultset_is_needed = boolean } ), is %s"); -+			case PROXY_QUEUE_ADD_PREPEND: -+				return luaL_argerror(L, 4, ":prepend(..., { resultset_is_needed = boolean } ), is %s"); -+			} - 		} -  - 		lua_pop(L, 1); -@@ -78,25 +84,34 @@ - 		luaL_typerror(L, 4, "table"); - 		break; - 	} --     --	network_injection_queue_append(q, inj); --     --	return 0; -+ -+	switch (type) { -+	case PROXY_QUEUE_ADD_APPEND: -+		network_injection_queue_append(q, inj); -+		return 0; -+	case PROXY_QUEUE_ADD_PREPEND: -+		network_injection_queue_prepend(q, inj); -+		return 0; -+	} -+ -+	g_assert_not_reached(); -+} -+ -+/** -+ * proxy.queries:append(id, packet[, { options }]) -+ * -+ *   id:      opaque numeric id (numeric) -+ *   packet:  mysql packet to append (string)  FIXME: support table for multiple packets -+ *   options: table of options (table) -+ *     backend_ndx:  backend_ndx to send it to (numeric) -+ *     resultset_is_needed: expose the result-set into lua (bool) -+ */ -+static int proxy_queue_append(lua_State *L) { -+	return proxy_queue_add(L, PROXY_QUEUE_ADD_APPEND); - } -  - static int proxy_queue_prepend(lua_State *L) { --	/* we expect 2 parameters */ --	GQueue *q = *(GQueue **)luaL_checkself(L); --	int resp_type = luaL_checkinteger(L, 2); --	size_t str_len; --	const char *str = luaL_checklstring(L, 3, &str_len); --     --	GString *query = g_string_sized_new(str_len); --	g_string_append_len(query, str, str_len); --     --	network_injection_queue_prepend(q, injection_new(resp_type, query)); --     --	return 0; -+	return proxy_queue_add(L, PROXY_QUEUE_ADD_PREPEND); - } -  - static int proxy_queue_reset(lua_State *L) { diff --git a/databases/mysql-proxy/pkg-plist b/databases/mysql-proxy/pkg-plist index f715a72aad52..a8ef7bd1d659 100644 --- a/databases/mysql-proxy/pkg-plist +++ b/databases/mysql-proxy/pkg-plist @@ -1,13 +1,57 @@  @comment $FreeBSD$ -sbin/mysql-proxy +bin/mysql-proxy  bin/mysql-binlog-dump  bin/mysql-myisam-dump +include/network-mysqld.h +include/network-mysqld-lua.h +include/network-mysqld-proto.h +include/network-mysqld-binlog.h +include/network-mysqld-packet.h +include/network-mysqld-masterinfo.h +include/network-conn-pool.h +include/network-conn-pool-lua.h +include/network-queue.h +include/network-socket.h +include/network-socket-lua.h +include/network-address.h +include/network-address-lua.h +include/sys-pedantic.h +include/chassis-plugin.h +include/chassis-log.h +include/chassis-keyfile.h +include/chassis-mainloop.h +include/chassis-path.h +include/chassis-filemode.h +include/chassis-limits.h +include/chassis-event-thread.h +include/glib-ext.h +include/glib-ext-ref.h +include/string-len.h +include/lua-load-factory.h +include/lua-scope.h +include/lua-env.h +include/network-injection.h +include/network-injection-lua.h +include/chassis-exports.h +include/network-exports.h +include/network-backend.h +include/network-backend-lua.h +include/disable-dtrace.h +include/lua-registry-keys.h +include/chassis-stats.h +include/chassis-timings.h +include/my_rdtsc.h  libexec/mysql-proxy  libexec/mysql-binlog-dump  libexec/mysql-myisam-dump +libexec/pkgconfig/mysql-proxy.pc +libexec/pkgconfig/mysql-chassis.pc  lib/libmysql-chassis.so.0  lib/libmysql-chassis.so  lib/libmysql-chassis.la +lib/libmysql-chassis-timing.so.0 +lib/libmysql-chassis-timing.so +lib/libmysql-chassis-timing.la  lib/libmysql-proxy.so.0  lib/libmysql-proxy.so  lib/libmysql-proxy.la @@ -62,6 +106,7 @@ lib/mysql-proxy/plugins/libdebug.la  %%EXAMPLESDIR%%/tutorial-resultset.lua  %%EXAMPLESDIR%%/tutorial-rewrite.lua  %%EXAMPLESDIR%%/tutorial-routing.lua +%%EXAMPLESDIR%%/tutorial-scramble.lua  %%EXAMPLESDIR%%/tutorial-states.lua  %%EXAMPLESDIR%%/tutorial-tokenize.lua  %%EXAMPLESDIR%%/tutorial-union.lua @@ -70,6 +115,7 @@ lib/mysql-proxy/plugins/libdebug.la  @dirrmtry lib/mysql-proxy/lua/proxy  @dirrmtry lib/mysql-proxy/lua  @dirrmtry lib/mysql-proxy +@dirrmtry libexec/pkgconfig  @dirrmtry %%EXAMPLESDIR%%  @dirrmtry %%DATADIR%%/lua/proxy  @dirrmtry %%DATADIR%%/lua  | 
