I believe that Postgres will *always* create an index on a column with a
UNIQUE constraint.
regression=> create table yo (id serial primary key, blah varchar(32)
unique);
CREATE TABLE
regression=> \d yo
Table "public.yo"
Column | Type |
Modifiers
--------+-----------------------+-------------------------------------------------
id | integer | not null default
nextval('yo_id_seq'::regclass)
blah | character varying(32) |
Indexes:
"yo_pkey" PRIMARY KEY, btree (id)
"yo_blah_key" UNIQUE CONSTRAINT, btree (blah)
regression=> drop index yo_blah_key;
ERROR: cannot drop index yo_blah_key because constraint yo_blah_key on
table yo requires it
HINT: You can drop constraint yo_blah_key on table yo instead.
On Tue, Apr 14, 2015 at 9:01 PM, Some Developer <[email protected]>
wrote:
> Using Django 1.8, psycopg2 2.6 and PostgreSQL 9.4.1.
>
> I have a model with a models.TextField(unique=True, db_index=False,
> primary_key=False) field in it.
>
> I understand that an index is created because of the comment shown in this
> code:
>
> https://github.com/django/django/blob/master/django/db/
> backends/postgresql_psycopg2/schema.py#L17
>
> but even though the index is suggested for LIKE queries using non C
> locales I would have thought the addition of db_index=False would have
> negated that.
>
> I feel that this is a bug. An index is not required by PostgreSQL on a
> unique constraint (it may be recommended but that is beside the point) and
> if I explicitly state db_index=False then the Django ORM should remove the
> index even though the index is recommended.
>
> Thoughts?
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django developers (Contributions to Django itself)" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/django-developers.
> To view this discussion on the web visit https://groups.google.com/d/
> msgid/django-developers/552DB881.1090006%40googlemail.com.
> For more options, visit https://groups.google.com/d/optout.
>
--
Grace and Peace,
Tommy B.
I want to live like I know what I'm leaving.
--Switchfoot, "Awakening"
--
You received this message because you are subscribed to the Google Groups
"Django developers (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-developers.
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-developers/CAKfxM0LJNbT%2BWtBW0n%3DD9K3QxNjLas7H3t2ZpMWfuaxXh1uxbQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.