Re: results via pgAdmin but not via psycopg2 - Mailing list psycopg

From Krystian Samp
Subject Re: results via pgAdmin but not via psycopg2
Date
Msg-id 5570D677-2875-4DE2-A6E1-7A615C173E86@gmail.com
Whole thread Raw
In response to Re: results via pgAdmin but not via psycopg2  (Karsten Hilbert <Karsten.Hilbert@gmx.net>)
Responses Re: results via pgAdmin but not via psycopg2  (Karsten Hilbert <Karsten.Hilbert@gmx.net>)
List psycopg
Hi Karsten,

Thank you so much, this was the problem indeed, and “connection.commit()” solved it.

Didn’t think about committing after a SELECT command.

Now I can peacefully end 2013!

Thanks and Happy New Year!

On 31 Dec 2013, at 12:07, Karsten Hilbert <Karsten.Hilbert@gmx.net> wrote:

> now() always returns the transaction start timestamp.
>
> Might that be it ?
>
> Karsten
>
> On Tue, Dec 31, 2013 at 11:44:46AM +0000, Krystian Samp wrote:
>
>> Hello everyone,
>>
>> I’ve been struggling with an issue for 2 days now and couldn’t find the answer via google search.
>>
>> here’s a method of my db class:
>>
>>     def get_old_feeds( self, not_refreshed_for_secs ):
>>         cursor = self.connection.cursor( cursor_factory = psycopg2.extras.RealDictCursor )
>>         cursor.execute( "SELECT id, url FROM feeds WHERE refreshed_on is not NULL AND refreshed_on < ( now() -
interval'%s seconds' );", ( not_refreshed_for_secs, ) ) 
>>         old_feeds = cursor.fetchall()
>>         cursor.close()
>>         return old_feeds
>>
>> there’s a loop that invokes this method every X minutes. All “old_feeds” get their value for “refreshed_on” updated
tothe current date when processed using this method: 
>>
>>     def set_feed_last_refresh( self, feed_id, refresh_datetime ):
>>         cursor = self.connection.cursor()
>>         cursor.execute( "UPDATE feeds SET refreshed_on = %s WHERE id = %s;", ( refresh_datetime, feed_id ) )
>>         self.connection.commit()
>>         cursor.close()
>>
>> The problem is that the select query in the first method returns some results only the first time it is run, all
subsequentexecutions give 0 results. The odd thing is that when I issue exactly the same query via pgAdmin I get the
resultsas one would expect. 
>>
>> I’d highly appreciate your help with this issue,
>>
>> Thank you,
>> Krystian
>>
>> --
>> Sent via psycopg mailing list (psycopg@postgresql.org)
>> To make changes to your subscription:
>> http://www.postgresql.org/mailpref/psycopg
>
> --
> GPG key ID E4071346 @ gpg-keyserver.de
> E167 67FD A291 2BEA 73BD  4537 78B9 A9F9 E407 1346
>
>
> --
> Sent via psycopg mailing list (psycopg@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/psycopg



psycopg by date:

Previous
From: Karsten Hilbert
Date:
Subject: Re: results via pgAdmin but not via psycopg2
Next
From: Karsten Hilbert
Date:
Subject: Re: results via pgAdmin but not via psycopg2