On Mon, Feb 06, 2006 at 03:32:32PM +0100, Markus Schaber wrote:
> Alvaro Herrera wrote:
> >>The following message occasionally appears in my postgresql log - from
> >>temporal corellation, it might be caused by autovacuum.
> >>
> >>NOTICE: no notnull values, invalid stats
> >
> > I see no such message in 8.1 sources. Is this verbatim or did you
> > translate it?
>
> It is verbatim from /var/log/postgresql/postgresql-8.1-main.log.
>
> But I have PostGIS installed in some of the databases, so it might be
> from there.
That is indeed a PostGIS message; it's in compute_geometry_stats()
in lwgeom/lwgeom_estimate.c. I think it means that during an
analyze, all of the sampled rows had NULL values in their geometry
columns (i.e., no not-NULL values were found); that would explain
the correlation with autovacuum. Here's an example that elicits
the notice:
postgis=> CREATE TABLE foo ();
CREATE TABLE
postgis=> SELECT AddGeometryColumn('foo', 'geom', -1, 'GEOMETRY', 2); addgeometrycolumn
------------------------------------------------public.foo.geom SRID:-1 TYPE:GEOMETRY DIMS:2
(1 row)
postgis=> INSERT INTO foo VALUES (NULL);
INSERT 0 1
postgis=> ANALYZE foo;
NOTICE: no notnull values, invalid stats
ANALYZE
postgis=> UPDATE foo SET geom = GeomFromText('POINT(0 0)');
UPDATE 1
postgis=> ANALYZE foo;
ANALYZE
--
Michael Fuhr