Re: [INTERFACES] JDBC: detecting lost backend; 8192 byte limit in queries

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Ari Halberstadt <ari(at)shore(dot)net>
Cc: pgsql-interfaces(at)postgreSQL(dot)org
Subject: Re: [INTERFACES] JDBC: detecting lost backend; 8192 byte limit in queries
Date: 1999-02-18 16:15:58
Views: Raw Message | Whole Thread | Download mbox
Lists: pgsql-interfaces

Ari Halberstadt <ari(at)shore(dot)net> writes:
> - how do I store more than 8192 bytes?

Eliminating the restriction on the textual length of a query is on my
to-do list. It's probably not going to happen in time for 6.5, but
maybe for 6.6 (say, this summer).

There is a *separate* restriction on the stored size of a tuple,
namely that it not exceed 1 disk block --- which just happens to be
8K as well by default, but it's a different restriction on a different
kind of data.

If your objective is to be able to insert a text field longer than 8K
then both of these restrictions will get in your way.

There has been some talk of allowing tuples to span multiple disk
blocks, but I get the impression that it's still a ways from happening.
In the meantime it is possible to compile Postgres with a larger
block size; if 16K or so per tuple would solve your problem then that
is a feasible workaround. (Would someone who's done that note for the
record exactly what to change?)

The query length limit appears as a constant in enough different places
that patching it up to a larger value would probably be pretty tedious
:-(. I haven't tried it.

regards, tom lane

Browse pgsql-interfaces by date

  From Date Subject
Next Message Dave Page 1999-02-18 17:02:51 Trigger Information
Previous Message Michael Contzen 1999-02-18 13:56:46 What is SQLForignKeys in ODBC-Driver