Yes. psycopg2 has priority over pg8000.

On Tuesday, 17 December 2013 09:03:46 UTC-6, Jayadevan M wrote:
>
> I did a pip install psycopg2. If it is there,web2py will use it by 
> default? Now the repeat fetches have disappeared.
>
> On Tuesday, December 17, 2013 7:58:26 PM UTC+5:30, Massimo Di Pierro wrote:
>>
>> What if you use psycopg2?
>>
>> Massimo
>>
>> On Tuesday, 17 December 2013 08:25:01 UTC-6, Jayadevan M wrote:
>>>
>>> No. The number of fetches go up when the number of records go up. It is 
>>> a very simple test case. First I inserted 100 records. 
>>> insert into myt (nm, title) select generate_series(1,100), 'A';
>>>
>>> There was just one fetch. Then I inserted many more 
>>>  insert into myt (nm, title) select generate_series(100,100000), 'A';
>>>
>>> If I see the log, it is like this . A parse, a bind, an execute, then 
>>> all 'execute fetch'es.
>>> 2013-12-17 19:07:57 IST [19893]: [23-1] user=myserrhpa,db=everest1 LOG:  
>>> duration: 0.577 ms  parse <unnamed>: select * from myt
>>> 2013-12-17 19:07:57 IST [19893]: [24-1] user=myserrhpa,db=everest1 LOG:  
>>> duration: 0.420 ms  bind <unnamed>/pg8000_portal_10: select * from myt
>>> 2013-12-17 19:07:57 IST [19893]: [25-1] user=myserrhpa,db=everest1 LOG:  
>>> duration: 0.148 ms  execute <unnamed>/pg8000_portal_10: select * from myt
>>> 2013-12-17 19:07:57 IST [19893]: [26-1] user=myserrhpa,db=everest1 LOG:  
>>> duration: 0.151 ms  execute fetch from <unnamed>/pg8000_portal_10: select * 
>>> from myt
>>> 2013-12-17 19:07:58 IST [19893]: [27-1] user=myserrhpa,db=everest1 LOG:  
>>> duration: 0.116 ms  execute fetch from <unnamed>/pg8000_portal_10: select * 
>>> from myt
>>>
>>> My test.py has just this 
>>> def querytest():
>>>         sql="select * from myt "
>>>         rows=db.executesql(sql)
>>>         return dict(rows=rows)
>>>
>>> On Tuesday, December 17, 2013 7:46:45 PM UTC+5:30, Massimo Di Pierro 
>>> wrote:
>>>>
>>>> You may have hidden recursive selects, for example in a represent 
>>>> function.
>>>>
>>>> On Tuesday, 17 December 2013 07:41:47 UTC-6, Jayadevan M wrote:
>>>>>
>>>>> When I turned on logging for PostgreSQL during testing, I see that the 
>>>>> number of fetches goes up dramatically for tables with a large number of 
>>>>> rows. For example - 
>>>>> 2013-12-17 19:08:03 IST [19893]: [791-1] user=myserrhpa,db=everest1 
>>>>> LOG:  duration: 0.093 ms  execute fetch from <unnamed>/pg8000_portal_10: 
>>>>> select * from myt 
>>>>> 2013-12-17 19:08:03 IST [19893]: [792-1] user=myserrhpa,db=everest1 
>>>>> LOG:  duration: 0.137 ms  execute fetch from <unnamed>/pg8000_portal_10: 
>>>>> select * from myt 
>>>>> 2013-12-17 19:08:03 IST [19893]: [793-1] user=myserrhpa,db=everest1 
>>>>> LOG:  duration: 0.093 ms  execute fetch from <unnamed>/pg8000_portal_10: 
>>>>> select * from myt 
>>>>> 2013-12-17 19:08:03 IST [19893]: [794-1] user=myserrhpa,db=everest1 
>>>>> LOG:  duration: 0.096 ms  execute fetch from <unnamed>/pg8000_portal_10: 
>>>>> select * from myt 
>>>>> 2013-12-17 19:08:03 IST [19893]: [795-1] user=myserrhpa,db=everest1 
>>>>> LOG:  duration: 0.063 ms  execute fetch from <unnamed>/pg8000_portal_10: 
>>>>> select * from myt 
>>>>> 2013-12-17 19:08:03 IST [19893]: [796-1] user=myserrhpa,db=everest1 
>>>>> LOG:  duration: 0.091 ms  execute fetch from <unnamed>/pg8000_portal_10: 
>>>>> select * from myt 
>>>>> 2013-12-17 19:08:03 IST [19893]: [797-1] user=myserrhpa,db=everest1 
>>>>> LOG:  duration: 0.064 ms  execute fetch from <unnamed>/pg8000_portal_10: 
>>>>> select * from myt 
>>>>> 2013-12-17 19:08:03 IST [19893]: [798-1] user=myserrhpa,db=everest1 
>>>>> LOG:  duration: 0.094 ms  execute fetch from <unnamed>/pg8000_portal_10: 
>>>>> select * from myt 
>>>>> 2013-12-17 19:08:03 IST [19893]: [799-1] user=myserrhpa,db=everest1 
>>>>> LOG:  duration: 0.068 ms  execute fetch from <unnamed>/pg8000_portal_10: 
>>>>> select * from myt 
>>>>> Is this normal? How can we control the number of fetches - some 
>>>>> parameter to set like array_size?
>>>>>
>>>>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to