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.

