Avoiding "will create implicit index" NOTICE

From: Bryce Nesbitt <bryce2(at)obviously(dot)com>
To: sql pgsql <pgsql-sql(at)postgresql(dot)org>
Subject: Avoiding "will create implicit index" NOTICE
Date: 2009-06-01 19:32:20
Message-ID: 4A242CC4.5000400@obviously.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

I'm looking for a good way to avoid triggering the "will create implicit
index" NOTICE that Postgres (all versions) puts out. This ends up
spamming cron scripts for no good reason:

=> create table junk_six (foo int, primary key (foo));
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index
"junk_six_pkey" for table "junk_six"
CREATE TABLE

I've got a hacky solution (in perl), pulled from
http://www.perlmonks.org/index.pl/jacques?node_id=540511
which suppresses the warning:

my $tmpwarn = $SIG{__WARN__};
$SIG{__WARN__} = sub { print STDERR @_ if $_[0] !~ m/NOTICE: CREATE
TABLE/; };
$sqldb->sql_execute("create table junk_six (foo int, primary key (foo));");
$SIG{__WARN__} = $tmpwarn;

And I know that I can edit the warning level in postgresql.conf with
some other side effects.
But the best solution would be to avoid the notice in the first place.
Is this possible?

-Bryce

Keywords: postgres, warning, error, suppress, disable, avoid, hide,
stderr, stdout

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Scott Marlowe 2009-06-01 20:07:35 Re: Avoiding "will create implicit index" NOTICE
Previous Message Scott Marlowe 2009-06-01 09:55:44 Re: Assigning data-entry tasks to multiple concurrent clients