WHERE condition lost from conditional unique index - Mailing list pgsql-novice

From jake fagan
Subject WHERE condition lost from conditional unique index
Date
Msg-id CAJrpLW9FALyzDmEkhPz0Znuc_nah3kVnS+EEbMFpeuZy947bHw@mail.gmail.com
Whole thread Raw
Responses Re: WHERE condition lost from conditional unique index  (David G Johnston <david.g.johnston@gmail.com>)
List pgsql-novice

I am attempting to apply an Unique Index in Postgresql with mixed results. I am generating the index via a Ruby on Rails migration. The up statement looks like:

execute("create unique index formatted_address_unit_number_and_status        on properties (formatted_address, unit_number)        where status = 'published';")

On my local development the index works as intended. If I take a look at the properties table by running \d properties, the migration correctly added index like so:

"formatted_address_unit_number_and_status" UNIQUE,btree (formatted_address, unit_number) WHERE status::text = 'published'::text

However, when my Jenkins CI server runs the migration, I only see the following in the propertiestable:

"formatted_address_unit_number_and_status" UNIQUE, btree (formatted_address, unit_number)

Why would the migration work on my development but not on Jenkins? Am I applying the unique index correctly to begin with?


--
Jake Fagan

Ruby Engineer
jakeofagan@gmail.com
503.449.3464

pgsql-novice by date:

Previous
From: "Yuksel Pinarbasi"
Date:
Subject: Re: 64 bit or 32 bit?
Next
From: David G Johnston
Date:
Subject: Re: WHERE condition lost from conditional unique index