ODBC: pgsql 09.03.0200;
OS: Windows 8.1 Pro;
Postgres version: 9.3.3;
In using pgsqlODBC 09.03.0200 or any version prior that we have tested we seem to be having a performance decrease to only 625 inserts per second when using UUID as the primary key and using the UUID-OSSP to generate the default value of uuid_generate_v1() whereas if we generate the UUID client side for the primary key and send it with the values in the insert transaction we can increase it to 1500 inserts per second bypassing the UUID-OSSP extension. This is consistent and repeatable. The only change being made is Postgres generating the UUID using the extension or us passing the value in the insert statement. If Postgres generates it internally while inserting using a script through PgAdmin then it can generate at near 2000 inserts per second so uuid-ossp shouldn't be the problem since it can keep up inside PgAdmin, but when used over default settings in ODBC it is 2/3 slower. The data being tested is the same in all cases. I am using a default System DSN on Windows 8.1 Pro (no special settings). Is this a bug, expected behavior, or a settings adjustment that needs to be made?
DSN settings:
AB = 0
BI = 0
BoolsAsChar = 1
ByteaAsLongVarbinary = 1
CancelAsFreeStmt = 0
CommLog = 0
Debug = 0
DisallowPremature = 0
Driver = 0903\bin\psqlodbc30a.dll
ExtraSysTablePrefixes = dd_;
FakeOidIndex = 0
Fetch = 100
GssAuthUseGSS = 0
Ksqo = 1
LFConversion = 1
LowerCaseIdentifier = 0
MaxLongVarcharSize = 8190
MaxVarCharSize = 255
Optimizer = 0
Parse = 0
Port = 5432
Protocol = 7.4-1
ReadOnly = 0
RowVersioning = 0
ShowOidColumn = 0
ShowSystemTables = 0
SSLmode = allow
TextAsLongVarchar = 1
TurelsMinus1 = 0
UniqueIndex = 1
UnknownsAsLongVarChar = 1
UnkownSizes = 0
UpdatableCursors = 1
UseDeclareFetch = 0
UseServerSidePrepare = 1
XaOpt = 1