Home > Archive > PostgreSQL Bugs > November 2005 > R: Psql odbc driver version 8.01.01.00 doesn't remember "Cache size" option if it is set









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author R: Psql odbc driver version 8.01.01.00 doesn't remember "Cache size" option if it is set
Cristiano Ansaloni

2005-11-10, 9:24 am







_____

From: pgsql-bugs-owner@postgresql.org
[mailto:pgsql-bugs-owner@postgresql.org] On Behalf Of Cristiano Ansaloni
Sent: 08 November 2005 15:35
To: pgsql-bugs@postgresql.org
Subject: [BUGS] Psql odbc driver version 8.01.01.00 doesn't
remember "Cache size" option if it is set to 0 (to set "unlimited").



Psql odbc driver version 8.01.01.00 doesn't remember "Cache
size" option if it is set to 0 (to set "unlimited").

Cache size of 0/unlimited makes no sense. The cache is only used in
declare/fetch mode, so if you want to fetch all rows at once, just turn
off use declare/fetch.

Instead, the "Maximum rows to retrieve" option in the Tab 3 of
pgAdmin options works good.



pgAdmin III doesn't use ODBC, and besides, that option is not analagous
to psqlODBC's cache size setting in the slightest. I would suggest
reading the appropriate doc pages for each product.

I have read the documentation:

Use Declare/Fetch: If true, the driver automatically uses declare
cursor/fetch to handle SELECT statements and keeps 100 rows in a cache.
This is mostly a great advantage, especially if you are only interested
in reading and not updating. It results in the driver not sucking down
lots of memory to buffer the entire result set. If set to false, cursors
will not be used and the driver will retrieve the entire result set. For
very large tables, this is very inefficient and may use up all the
Windows memory/resources. However, it may handle updates better since
the tables are not kept open, as they are when using cursors. This was
the style of the old podbc32 driver. However, the behavior of the memory
allocation is much improved so even when not using cursors, performance
should at least be better than the old podbc32.


The problem is that this documentation says the opposite of true: with
this option false (the default) there is the 100 rows limit, with this
option true the cursor is "free". I have tested it.

Moreover, this "new" default change the "old" default and so all "old
configurations" odbc are wrong.

Sorry for my english.

Regards, Ans.


Sponsored Links





Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive | Programming forum archive

Copyright 2008 droptable.com