Thread: NOTICE-message

NOTICE-message

From
Ulf Mehlig
Date:
Hello postgreSQL folks,

when retrieving data from a join of two tables (one of them having
many columns, very bad designed ;-) I get the following "notice":

----------------------------------------------------------------------
[psql (PostgreSQL) 7.0.2
 contains readline, history support. i386er Linux 2.2.16]

  [...]
  NOTICE:  PortalHeapMemoryFree: 0x0x40b139c8 not in alloc set!
  NOTICE:  PortalHeapMemoryFree: 0x0x40b139c8 not in alloc set!
  NOTICE:  PortalHeapMemoryFree: 0x0x40b139c8 not in alloc set!
  NOTICE:  PortalHeapMemoryFree: 0x0x40b139c8 not in alloc set!
  NOTICE:  PortalHeapMemoryFree: 0x0x40b13f80 not in alloc set!
  NOTICE:  PortalHeapMemoryFree: 0x0x40b13f80 not in alloc set!
  NOTICE:  PortalHeapMemoryFree: 0x0x40b13f80 not in alloc set!
  NOTICE:  PortalHeapMemoryFree: 0x0x40b13f80 not in alloc set!
  NOTICE:  PortalHeapMemoryFree: 0x0x40b14538 not in alloc set!
  NOTICE:  PortalHeapMemoryFree: 0x0x40b14538 not in alloc set!
  NOTICE:  PortalHeapMemoryFree: 0x0x40b14538 not in alloc set!
  [...]
----------------------------------------------------------------------

Something to worry about?

Regards, Ulf



P.S.: Here's the query, I hope that helps!

         select s_id,nummer,
                min(timest::time) as timest,
                round(avg(photo),2),round(stddev(photo),3),
                round(avg(trmmol),2),round(stddev(photo),3),
                round(avg(pari),2),round(stddev(pari),2),
                round(min(pari),2),round(max(pari),2),
                round(avg(paro),2),round(stddev(paro),2),
                round(min(paro),2), round(max(paro),2),
                min(timest::date)-beobachtet_seit as ageInDays
         from blatt,li64_daten
         where dkopf_nummer=187 and
               blatt_nummer=nummer and
               not deakt
         group by s_id,nummer,nummer,beobachtet_seit
         order by 8,1,2,7;

      BTW, looking at queries like that: Is there a possibility to
      adhust the precision for displaying floating point numbers in
      general, to reduce so many "rounds()"?

--
=======================================================================
 Ulf Mehlig    <ulf.mehlig@zmt.uni-bremen.de>
               Center for Tropical Marine Ecology/ZMT, Bremen, Germany
-----------------------------------------------------------------------

Re: NOTICE-message

From
Karel Zak
Date:
On Thu, 19 Oct 2000, Ulf Mehlig wrote:

> Hello postgreSQL folks,
>
> when retrieving data from a join of two tables (one of them having
> many columns, very bad designed ;-) I get the following "notice":
>
>   NOTICE:  PortalHeapMemoryFree: 0x0x40b139c8 not in alloc set!

 Some portal routine wants free not existing chunk?

 IMHO this problem is dead, because this part of backend is total
rewrited in 7.1 (Tom?).

                    Karel


Re: NOTICE-message

From
Tom Lane
Date:
Karel Zak <zakkr@zf.jcu.cz> writes:
> On Thu, 19 Oct 2000, Ulf Mehlig wrote:
>> NOTICE:  PortalHeapMemoryFree: 0x0x40b139c8 not in alloc set!

>  Some portal routine wants free not existing chunk?

>  IMHO this problem is dead, because this part of backend is total
> rewrited in 7.1 (Tom?).

Most likely it's gone, but I would like to confirm that.  Ulf, could
we see the declarations of the tables used by your query, too?
(pg_dump -s -t <table> is a handy way to dump out a table declaration
if you don't have it stored in a script someplace.)

            regards, tom lane

Re: NOTICE-message

From
Tom Lane
Date:
Ulf Mehlig <umehlig@uni-bremen.de> writes:
>   NOTICE:  PortalHeapMemoryFree: 0x0x40b139c8 not in alloc set!
>   NOTICE:  PortalHeapMemoryFree: 0x0x40b139c8 not in alloc set!
>
>          select s_id,nummer,
>                 min(timest::time) as timest,
                  ^^^^^^^^^^^^^^^^^
>                 round(avg(photo),2),round(stddev(photo),3),

It turns out that the problem is in the above min() function: min() and
max() are broken in 7.0.* for types time and timetz.  The bug is also
causing most of the other aggregate results in the query to be garbage,
BTW.

There is no such bug in current sources because memory management for
aggregates is now done in a cleaner fashion.  I'll see about making a
quick-hack patch for 7.0.3, though.

            regards, tom lane