Re: Something's not (de)compressing right

Started by Elliot Leeover 22 years ago3 messageshackers
Jump to latest
#1Elliot Lee
sopwith@redhat.com

http://archives.postgresql.org/pgsql-hackers/2000-07/msg00483.php

I'm having this same problem with postgresql 7.3.4. Easy to reproduce by
running an 'INSERT' query. Here is some of the debugging info if I break
near the beginning of the pglz_decompress function:

(gdb) p dend
$1 = (unsigned char *) 0xc47f0602 <Address 0xc47f0602 out of bounds>
(gdb) p dp
$2 = (unsigned char *) 0xb605153c ""
(gdb) p *source
$3 = {varsize = 1316614350, rawsize = 2328}
(gdb) up
#1 0x0807c0b0 in heap_tuple_untoast_attr (attr=0xb6051534)
at tuptoaster.c:151
151 pglz_decompress((PGLZ_Header *) attr,
VARATT_DATA(result));
(gdb) p *attr
$4 = {va_header = 1316614350, va_content = {va_compressed = {
va_rawsize = 2328, va_data = ""}, va_external = {va_rawsize = 2328,
va_extsize = 786432, va_valueid = 1048579,
va_toastrelid = 1316614344}, va_data = "\030"}}

Ideas? Any more information I can provide? Looks like the bad value is
coming in through 'dend', but I don't understand VARATT_SIZE well enough
to know where the bad value is coming from.

Ciao,
-- Elliot
"The mark of an immature man is that he wants to die nobly for a cause,
while the mark of a mature man is that he wants to live humbly for
one."

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Elliot Lee (#1)

Elliot Lee <sopwith@redhat.com> writes:

http://archives.postgresql.org/pgsql-hackers/2000-07/msg00483.php
I'm having this same problem with postgresql 7.3.4.

You aren't having the "same" problem, because that UNION bug was fixed
ages ago.

Easy to reproduce by running an 'INSERT' query.

Let's see the test case then ...

regards, tom lane

#3Elliot Lee
sopwith@redhat.com
In reply to: Tom Lane (#2)

On Mon, 8 Dec 2003, Tom Lane wrote:

Elliot Lee <sopwith@redhat.com> writes:

http://archives.postgresql.org/pgsql-hackers/2000-07/msg00483.php
I'm having this same problem with postgresql 7.3.4.

You aren't having the "same" problem, because that UNION bug was fixed
ages ago.

You're right. However, I saw the exact same symptoms, with a very similar
stack trace.

Easy to reproduce by running an 'INSERT' query.

Let's see the test case then ...

A 'REINDEX' made the symptoms go away. Nice for me, unfortunate for fixing
postgresql. :\

I do have another bug related to vacuuming tables that contain binary
large objects, inside a UTF-8 encoded database. If that's not a known
issue, I'll work up a reproduction case for that.

-- Elliot
http://www.barbiecollectibles.com/shop/product.aspx?sku=B3449
One ring to rule the malls, a website to supply them. The Tolkien "Ken and
Barbie" dolls - now 60 bucks can buy them!