Thread: [SQLObject] How to avoid cached data?
SQLObject is a Python ORM.
Brought to you by:
ianbicking,
phd
From: Matthew W. <ma...@tp...> - 2006-11-27 15:18:48
|
I'm using sqlobject by way of TurboGears. Anyhow, I have some select queries that seem to hit the database initially, then later, I get the cached responses. For example: conn = model.hub.hub.getConnection() results = conn.queryAll('select now()') I always get the first time over and over again. This is a problem because some other processes on other boxes are putting rows into my database. What can I do to purge the cache, or at least inform sqlobject to hit the database, despite what it has in cache? Matt -- A better way of running series of SAS programs: http://overlook.homelinux.net/wilsonwiki/SasAndMakefiles |
From: Oleg B. <ph...@ph...> - 2006-11-27 16:07:22
|
On Mon, Nov 27, 2006 at 03:18:11PM +0000, Matthew Wilson wrote: > conn = model.hub.hub.getConnection() > results = conn.queryAll('select now()') > > I always get the first time over and over again. > > What can I do to purge the cache conn.cache.clear() Oleg. -- Oleg Broytmann http://phd.pp.ru/ ph...@ph... Programmers don't die, they just GOSUB without RETURN. |
From: Matthew W. <ma...@tp...> - 2006-11-28 01:19:25
|
On Mon 27 Nov 2006 11:07:00 AM EST, Oleg Broytmann wrote: > On Mon, Nov 27, 2006 at 03:18:11PM +0000, Matthew Wilson wrote: >> conn = model.hub.hub.getConnection() >> results = conn.queryAll('select now()') >> >> I always get the first time over and over again. >> >> What can I do to purge the cache > > conn.cache.clear() That doesn't seem to do anything: In [18]: conn = model.hub.hub.getConnection() In [19]: conn.queryAll('select now()') Out[19]: [(<DateTime object for '2006-11-27 20:16:12.000' at b71a44f0>,)] In [20]: conn.cache.clear() In [21]: conn.queryAll('select now()') Out[21]: [(<DateTime object for '2006-11-27 20:16:12.000' at b71a43a0>,)] Is it possible that since I'm using ipython, something is awry? Matt > Oleg. -- A better way of running series of SAS programs: http://overlook.homelinux.net/wilsonwiki/SasAndMakefiles |
From: Oleg B. <ph...@ph...> - 2006-11-28 18:44:38
|
On Tue, Nov 28, 2006 at 01:19:04AM +0000, Matthew Wilson wrote: > > conn.cache.clear() > > That doesn't seem to do anything: > > In [18]: conn = model.hub.hub.getConnection() > > In [19]: conn.queryAll('select now()') > Out[19]: [(<DateTime object for '2006-11-27 20:16:12.000' at b71a44f0>,)] > > In [20]: conn.cache.clear() > > In [21]: conn.queryAll('select now()') > Out[21]: [(<DateTime object for '2006-11-27 20:16:12.000' at b71a43a0>,)] > > Is it possible that since I'm using ipython, something is awry? Don't know about ipytohn, but anyway my suggestion was slightly wrong. The results of conn.query*() methods are not cached, so you should not need to clear the cache. The cache stores SQLObjects. Oleg. -- Oleg Broytmann http://phd.pp.ru/ ph...@ph... Programmers don't die, they just GOSUB without RETURN. |
From: sophana <so...@zi...> - 2006-12-04 15:00:47
|
Matthew Wilson a =E9crit : > On Mon 27 Nov 2006 11:07:00 AM EST, Oleg Broytmann wrote: > =20 >> On Mon, Nov 27, 2006 at 03:18:11PM +0000, Matthew Wilson wrote: >> =20 >>> conn =3D model.hub.hub.getConnection() >>> results =3D conn.queryAll('select now()') >>> >>> I always get the first time over and over again. >>> >>> What can I do to purge the cache >>> =20 >> conn.cache.clear() >> =20 > > That doesn't seem to do anything: > > In [18]: conn =3D model.hub.hub.getConnection() > > In [19]: conn.queryAll('select now()') > Out[19]: [(<DateTime object for '2006-11-27 20:16:12.000' at b71a44f0>,= )] > > In [20]: conn.cache.clear() > > In [21]: conn.queryAll('select now()') > Out[21]: [(<DateTime object for '2006-11-27 20:16:12.000' at b71a43a0>,= )] > > Is it possible that since I'm using ipython, something is awry? > > Matt > > =20 These are 2 distinct objects, so it is not the python side cache. Maybe you get the server side cache result. |