[Twisted-Python] SELECT returns no results without conn.commit()
Glyph Lefkowitz
glyph at twistedmatrix.com
Tue Jun 3 12:57:45 MDT 2014
On Jun 3, 2014, at 6:31 AM, Franz Schwartau <franz at electromail.org> wrote:
> Hi!
>
> I'm trying to extend ppolicy (http://bimbo.fjfi.cvut.cz/ppolicy) a bit. ppolicy uses the twisted framework. On CentOS 6.5 version 8.2.0 of twisted is installed.
I should note that Twisted 8.2.0 is 6 years old at this point, so if you can't upgrade Twisted there might not be much we can do for you :).
> I wrote a separate module called LookupSessionDB:
>
> http://pastebin.com/u4TMNhpd
>
> It looks up some values from a database table. It does some efforts to handle reconnect properly.
>
> If called a second time and more the SELECT statement returns no rows (line 138) if "conn.commit()" is missing in line 125. If "conn.commit()" is called after obtaining a database connection "rows = cursor.fetchall()" (line 138) returns the expected results.
>
> The module inserting the records calls "conn.commit()" after INSERT. If I execute the same SELECT statement in a separate mysql client the results are displayed.
>
> This is quite confusing. Any idea what's going on?
Can you simplify this question somewhat? There's a lot of SQL in here, it's missing a required dependency ("Base") and I suspect that this is really a MySQL question and not a Twisted question. It would be helpful if you could provide a complete schema so we could run your code, in the style of http://sscce.org/.
-glyph
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://twistedmatrix.com/pipermail/twisted-python/attachments/20140603/f95b4928/attachment.html>
More information about the Twisted-Python
mailing list