performance issue with psycopg - Mailing list psycopg

From Sushant Sinha
Subject performance issue with psycopg
Date
Msg-id 1323708082.2132.6.camel@dragflick
Whole thread Raw
Responses Re: performance issue with psycopg
List psycopg
I am using psycopg 2.4.2 and facing performance issue. An explain
analyze of the query on the database shows 0.75secs. But when used
through the psycopg layer I am seeing 1.5 secs. Any idea why the extra
cost and how to optimize it?

from psycopg2.extras import DictCursor
from psycopg2.extensions import UNICODE, UNICODEARRAY
psycopg2.extensions.register_type(UNICODE)
psycopg2.extensions.register_type(UNICODEARRAY)


cursor = dbCnx.cursor(cursor_factory=DictCursor)
cursor.execute(query, params)
results = cursor.fetchall()

Here is the profiling for extras.py:

       35    0.896    0.026    0.896    0.026 extras.py:118(execute)
       35    0.296    0.008    0.778    0.022 extras.py:80(fetchall)
   276433    0.270    0.000    0.314    0.000 extras.py:148(__setitem__)
        1    0.001    0.001    0.129    0.129 extras.py:5(<module>)
    25153    0.112    0.000    0.116    0.000 extras.py:139(__init__)
    17176    0.018    0.000    0.028    0.000 extras.py:143(__getitem__)
        1    0.000    0.000    0.002    0.002
extras.py:566(HstoreAdapter)
        1    0.000    0.000    0.002    0.002
extras.py:762(CompositeCaster)
     4001    0.001    0.000    0.001    0.000 extras.py:162(has_key)
       35    0.000    0.000    0.000    0.000
extras.py:128(_build_index)
       35    0.000    0.000    0.000    0.000 extras.py:113(__init__)
       35    0.000    0.000    0.000    0.000 extras.py:50(__init__)
       46    0.000    0.000    0.000    0.000 extras.py:914(<lambda>)
        1    0.000    0.000    0.000    0.000
extras.py:254(NamedTupleCursor)
       10    0.000    0.000    0.000    0.000 extras.py:156(keys)
        1    0.000    0.000    0.000    0.000 extras.py:134(DictRow)
        1    0.000    0.000    0.000    0.000
extras.py:373(LoggingCursor)
        1    0.000    0.000    0.000    0.000
extras.py:47(DictCursorBase)
        1    0.000    0.000    0.000    0.000
extras.py:433(UUID_adapter)
        1    0.000    0.000    0.000    0.000
extras.py:389(MinTimeLoggingConnection)
        1    0.000    0.000    0.000    0.000 extras.py:110(DictCursor)
        1    0.000    0.000    0.000    0.000 extras.py:493(Inet)
        1    0.000    0.000    0.000    0.000 extras.py:233(RealDictRow)
        1    0.000    0.000    0.000    0.000
extras.py:203(RealDictCursor)
        1    0.000    0.000    0.000    0.000
extras.py:326(LoggingConnection)
        1    0.000    0.000    0.000    0.000
extras.py:248(NamedTupleConnection)
        1    0.000    0.000    0.000    0.000
extras.py:195(RealDictConnection)
        1    0.000    0.000    0.000    0.000
extras.py:416(MinTimeLoggingCursor)
        1    0.000    0.000    0.000    0.000
extras.py:102(DictConnection)



psycopg by date:

Previous
From: Federico Di Gregorio
Date:
Subject: Re: RELEASE: psycopg 2.4.3
Next
From: Daniele Varrazzo
Date:
Subject: Re: performance issue with psycopg