Re: [psycopg] speed concerns with executemany()
От | Adrian Klaver |
---|---|
Тема | Re: [psycopg] speed concerns with executemany() |
Дата | |
Msg-id | 72b0ddc0-ee36-6a44-760f-7693f85e3304@aklaver.com обсуждение исходный текст |
Ответ на | Re: [psycopg] speed concerns with executemany() (Daniele Varrazzo <daniele.varrazzo@gmail.com>) |
Ответы |
Re: [psycopg] speed concerns with executemany()
|
Список | psycopg |
On 12/23/2016 04:29 PM, Daniele Varrazzo wrote: > On Sat, Dec 24, 2016 at 1:09 AM, Christophe Pettus <xof@thebuild.com> wrote: >> Are you running with the transaction isolation level set to ISOLATION_LEVEL_AUTOCOMMIT? If so, each of those INSERTswill be in its own transaction, and thus will go through the COMMIT overhead. That by itself wouldn't explain a jumpthat large (in most environments), but it will definitely be *much* slower. > > Why do you say this? Psycopg doesn't wrap statements in BEGIN/COMMIT > when in autocommit mode. Are you referring about some implicit I understood it did: http://initd.org/psycopg/docs/usage.html#transactions-control "It is possible to set the connection in autocommit mode: this way all the commands executed will be immediately committed and no rollback is possible. A few commands (e.g. CREATE DATABASE, VACUUM...) require to be run outside any transaction: in order to be able to run these commands from Psycopg, the connection must be in autocommit mode: you can use the autocommit property (set_isolation_level() in older versions)." > transaction created by the database? > > -- Daniele > > -- Adrian Klaver adrian.klaver@aklaver.com
В списке psycopg по дате отправления: