Bug #42841 mysql-proxy / rw-splitting.lua closes client connection: resultset_is_needed
| Submitted: | 13 Feb 2009 16:28 | Modified: | 7 Dec 2009 9:12 |
|---|---|---|---|
| Reporter: | Olav Schettler | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Proxy: Scripts | Severity: | S3 (Non-critical) |
| Version: | 0.7.0 | OS: | Linux (RHEL) |
| Assigned to: | Kay Roepke | CPU Architecture: | Any |
| Tags: | mysql-proxy, resultset_is_needed, rw-splitting | ||
[13 Feb 2009 20:09]
Olav Schettler
This seems to fix it:
*** /usr/local/share/mysql-proxy/rw-splitting.lua.orig 2009-02-11 11:42:17.000000000 +0100
--- /usr/local/share/mysql-proxy/rw-splitting.lua 2009-02-13 17:31:55.000000000 +0100
***************
*** 38,47 ****
min_idle_connections = 4,
max_idle_connections = 8,
! is_debug = true
}
end
---
-- read/write splitting sends all non-transactional SELECTs to the slaves
--
--- 38,49 ----
min_idle_connections = 4,
max_idle_connections = 8,
! is_debug = false
}
end
+ global resultset_is_needed = true
+
---
-- read/write splitting sends all non-transactional SELECTs to the slaves
--
[16 Feb 2009 7:44]
Sveta Smirnova
Thank you for the report. Could you please provide example of query you get this error for?
[16 Feb 2009 7:45]
Sveta Smirnova
MySQL Proxy with rw-splitting.lua will print current query if it is run with debug turned on.
[17 Mar 2009 0:00]
Bugs System
No feedback was provided for this bug for over a month, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open".
[25 May 2009 17:24]
Diego Medina
See this file http://bazaar.launchpad.net/~diego-fmpwizard/mysql-proxy/bug-43424/annotate/head%3A/lib/rw... That file works with version 0.7.0 and greater. It has all the changes you need. And those changes will soon be part of the official mysql proxy branch
[13 Jul 2009 1:47]
Diego Medina
This bug will depend on bug#46141 to be fully fixed.
[14 Jul 2009 12:36]
Enterprise Tools JIRA Robot
Heidi Bergh-Hoff writes: Duplicate of PR-58 / 43424
[7 Dec 2009 9:12]
MC Brown
A note has been added to the 0.8.0 changelog: The supplied script <filename>rw-splitting.lua</filename> had not been updated to use the new <literal>resultset_is_needed</literal> flag or updated <literal>proxy.connections</literal> structure.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.041 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.
Description: Log entries in syslog: db1 mysql-proxy: 2009-02-13 17:10:40: (critical) proxy-plugin.c:247: read_query_result() in /usr/local/share/mysql-proxy/rw-splitting.lua tries to modify the resultset, but hasn't asked to buffer it in proxy.query:append(..., { resultset_is_needed = true }). We ignore the change to the result-set. db1 mysql-proxy: 2009-02-13 17:10:40: (critical) proxy-plugin.c:1196: proxy.queries:append() in /usr/local/share/mysql-proxy/rw-splitting.lua can only have one injected query without { resultset_is_needed = true } set. We close the client connection now. How to repeat: My setup: /usr/local/sbin/mysql-proxy --daemon --keepalive --log-use-syslog --proxy-lua-script=share/mysql-proxy/rw-splitting.lua --proxy-backend-addresses=db1:3306 --proxy-read-only-backend-addresses=db2:3306 Versions: mysql-proxy 0.7.0 glib2: 2.18.4 libevent: 1.1a admin: 0.7.0 proxy: 0.7.0 The proxy runs on "db1" and sits between a CakePHP application and a MySQL server configured as master [db1] and slave [db2] Suggested fix: Modify mysql-proxy/rw-splitting.lua to include suggested resultset_is_needed = true - but where?