Log Message: ----------- Rewrite the client3 PQ transaction manager. The prior design processed one message at a time to transition state. This resulted in a substantial impediment on performance as the invocation overhead per message held the messages per second down(From the tests I've done, it appears to be around a factor of 3(primarily copies)). The new version is implemented using one class, and rather than custom interface to message instantiation, a simple list of message instances are passed in. State is kept using a command offset and a mapping that designates the acceptable messages for a command and ultimately what message causes the command to end. Modified Files: -------------- pq/src: buffer.c (r1.6 -> r1.7) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/pq/src/buffer.c.diff?r1=1.6&r2=1.7) client3.py (r1.27 -> r1.28) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/pq/src/client3.py.diff?r1=1.27&r2=1.28) element3.py (r1.17 -> r1.18) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/pq/src/element3.py.diff?r1=1.17&r2=1.18) version.py (r1.3 -> r1.4) (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/pq/src/version.py.diff?r1=1.3&r2=1.4) Removed Files: ------------- pq/src: transam.py (http://cvs.pgfoundry.org/cgi-bin/cvsweb.cgi/python/pq/src/transam.py)
pgsql-committers by date:
Соглашаюсь с условиями обработки персональных данных