PostgreSQL does CAST implicitely between int and a domain derived from int - Mailing list pgsql-performance

From Jean-Michel Pouré
Subject PostgreSQL does CAST implicitely between int and a domain derived from int
Date
Msg-id 1251297631.9378.39.camel@acer
Whole thread Raw
Responses Re: PostgreSQL does CAST implicitely between int and a domain derivedfrom int
List pgsql-performance
Dear friends,

I contact on Postgresql hackers request.

I am running into a systemic
problem using Drupal under PostgreSQL 8.4

Drupal relies heavily on a domain derived from int:

CREATE DOMAIN int_unsigned
  AS integer
   CONSTRAINT int_unsigned_check CHECK ((VALUE >= 0));

Analysing slow queries, I noticed that PostgreSQL 8.4 would cast data
from int4 to int_unsigned. Some queries range between 400ms and 700ms.

This provides some large sequential scans.
Could you help understand why a cast happens?

Details, query plan and database:
http://drupal.org/node/559986

Postgresql.conf has no special settings for optimizing queries other
than PostgreSQL 8.4 syntax. Only shared memory is much larger.

Kind regards,
Jean-Michel

Attachment

pgsql-performance by date:

Previous
From: Matthew Wakeling
Date:
Subject: Re: Fwd: How to create a multi-column index with 2 dates using 'gist'?
Next
From: "Kevin Grittner"
Date:
Subject: Re: PostgreSQL does CAST implicitely between int and a domain derivedfrom int