From: | "Mike Landl" <mlandl(at)4glsol(dot)com> |
---|---|
To: | "'Inoue, Hiroshi'" <inoue(at)tpf(dot)co(dot)jp>, <pgsql-odbc(at)postgresql(dot)org> |
Subject: | Re: Is this typical psqlodbc behavior? |
Date: | 2013-12-10 13:06:41 |
Message-ID: | 003401cef5a8$ac321fc0$04965f40$@com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-odbc |
Thank you. Can you tell me how I can disable the savepoints using odbc.ini
in Linux?
Apologies if I should know this, I haven't been able to find it.
Is there a list of odbc.ini options that psqlodbc recognizes anywhere?
Thanks again.
-----Original Message-----
From: Inoue, Hiroshi [mailto:inoue(at)tpf(dot)co(dot)jp]
Sent: Monday, December 09, 2013 7:06 PM
To: Mike Landl; pgsql-odbc(at)postgresql(dot)org
Subject: Re: [ODBC] Is this typical psqlodbc behavior?
(2013/12/10 0:07), Mike Landl wrote:
> Hi there,
>
> I am trying to figure out if the behavior below is something that
> psqlodbc is doing automatically of if there is something else at play.
>
> The programming language I am using to access PostgreSQL is a high
> level 4^th generation language called ProIV and I believe it is doing
> strange and/or unnecessary things behind the scenes. When I run a
> simple query (SELECT CUSTOMER_BILL_TO,CUSMS_BILL_NAME FROM CUS_MST
> WHERE
> CUSTOMER_BILL_TO='00000675';) against PostgreSQL the following shows
> up in the PostgreSQL log file:
>
> LOG: statement: SAVEPOINT _EXEC_SVP_0x1b42080
>
> LOG: duration: 0.017 ms
>
> LOG: statement: select n.nspname, c.relname, a.attname, a.atttypid,
> t.typname, a.attnum, a.attlen, a.atttypmod, a.attnotnull,
> c.relhasrules, c.relkind, c.oid, pg_get_expr(d.adbin, d.adrelid), case
> t.typtype when 'd' then t.typbasetype else 0 end, t.typtypmod,
> c.relhasoids from (((pg_catalog.pg_class c inner join
> pg_catalog.pg_namespace n on n.oid = c.relnamespace and c.oid =
> 481563) inner join pg_catalog.pg_attribute a on (not a.attisdropped)
> and a.attnum > 0 and a.attrelid = c.oid) inner join pg_catalog.pg_type
> t on t.oid = a.atttypid) left outer join pg_attrdef d on a.atthasdef
> and d.adrelid = a.attrelid and d.adnum = a.attnum order by n.nspname,
> c.relname, attnum
>
> LOG: duration: 2.487 ms
>
> LOG: statement: RELEASE _EXEC_SVP_0x1b42080
>
> LOG: duration: 0.034 ms
>
> LOG: statement: PREPARE "_KEYSET_0x1af2180"(tid,tid) as SELECT
> CUSTOMER_BILL_TO,CUSMS_BILL_NAME , "ctid" FROM CUS_MST where ctid in
> ($1,$2)
>
> LOG: duration: 0.089 ms
>
> LOG: statement: SAVEPOINT _per_query_svp_;DEALLOCATE
> "_KEYSET_0x1af2180";RELEASE _per_query_svp_
>
> LOG: duration: 0.027 ms
>
> LOG: statement: SAVEPOINT _per_query_svp_;select relhasoids, c.oid
> from pg_class c, pg_namespace n where relname = 'cus_mst' and nspname
> = 'public' and c.relnamespace = n.oid;RELEASE _per_query_svp_
>
> LOG: duration: 0.180 ms
>
> LOG: statement: SAVEPOINT _per_query_svp_;select a.attname,
> a.atttypid from pg_index i, pg_attribute a where indrelid=481563 and
> indnatts=1 and indisunique and indexprs is null and indpred is null
> and i.indrelid = a.attrelid and a.attnum=i.indkey[0] and attnotnull
> and atttypid in (23, 26);RELEASE _per_query_svp_
>
> LOG: duration: 0.246 ms
>
> LOG: statement: SELECT CUSTOMER_BILL_TO,CUSMS_BILL_NAME , "ctid" FROM
> CUS_MST WHERE CUSTOMER_BILL_TO='00000675'
>
> LOG: duration: 0.100 ms
>
> LOG: statement: SAVEPOINT _EXEC_SVP_0x1af2180
>
> LOG: duration: 0.018 ms
>
> LOG: statement: select n.nspname, c.relname, a.attname, a.atttypid,
> t.typname, a.attnum, a.attlen, a.atttypmod, a.attnotnull,
> c.relhasrules, c.relkind, c.oid, pg_get_expr(d.adbin, d.adrelid), case
> t.typtype when 'd' then t.typbasetype else 0 end, t.typtypmod,
> c.relhasoids from (((pg_catalog.pg_class c inner join
> pg_catalog.pg_namespace n on n.oid = c.relnamespace and c.oid =
> 481563) inner join pg_catalog.pg_attribute a on (not a.attisdropped)
> and a.attnum > 0 and a.attrelid = c.oid) inner join pg_catalog.pg_type
> t on t.oid = a.atttypid) left outer join pg_attrdef d on a.atthasdef
> and d.adrelid = a.attrelid and d.adnum = a.attnum order by n.nspname,
> c.relname, attnum
>
> LOG: duration: 2.412 ms
>
> LOG: statement: RELEASE _EXEC_SVP_0x1af2180
>
> LOG: duration: 0.020 ms
>
> What I am wondering are 2 things:
>
> 1.Are the savepoints something that the odbc driver is automatically
> creating or could it be the programming language be adding additional
> things to my query?
Psqlodbc driver does it.
You can avoid the behavior using the driver option setting or connection
string.
> 2.Is the odbc driver automatically reading pg_class, pg_catalog, etc.
> or again, could it be the programming language adding additional
> queries behind the scenes?
Psqlodbc driver does it.
regards,
Hiroshi Inoue
--
I am using the free version of SPAMfighter.
SPAMfighter has removed 1065 of my spam emails to date.
Get the free SPAMfighter here: http://www.spamfighter.com/len
Do you have a slow PC? Try a Free scan
http://www.spamfighter.com/SLOW-PCfighter?cid=sigen
From | Date | Subject | |
---|---|---|---|
Next Message | Hiroshi Inoue | 2013-12-10 15:00:22 | Re: Is this typical psqlodbc behavior? |
Previous Message | Michael Paquier | 2013-12-10 10:37:33 | Re: Time for a new release? |