]> git.sven.stormbind.net Git - sven/scripts.git/blob - mysql-proxy/query-mirror-sqlite3.lua
Ignore timeouts on the envertech portal
[sven/scripts.git] / mysql-proxy / query-mirror-sqlite3.lua
1 -- unfuck the cpath set by mysql-proxy and load sqlite3 driver
2 package.cpath=package.cpath .. ";/usr/lib/i386-linux-gnu/lua/5.1/?.so"
3 require "luasql.sqlite3"
4
5 -- intercept mysql queries
6 function read_query( packet )
7    if packet:byte() == proxy.COM_QUERY then
8       print("DEBUG: we got a normal query: " .. packet:sub(2))
9       local query = string.sub(packet, 2)
10
11       if string.match(string.upper(query), '^%s*INSERT') then
12          print("DEBUG: found a query to process")
13          -- create environment object
14          local env = assert (luasql.sqlite3())
15          -- connect to data source
16          local con = assert (env:connect("mydb.sqlite3"))
17
18          -- act on the database
19          -- local cur = assert (con:execute(query))
20          local cur = con:execute(query)
21
22          -- closing time
23          cur:close()
24          con:close()
25          env:close()
26       end
27    end
28 end
29