Re: Can't register python class for domain? - Mailing list psycopg

From Adrian Klaver
Subject Re: Can't register python class for domain?
Date
Msg-id 54C26715.30001@aklaver.com
Whole thread Raw
In response to Can't register python class for domain?  ("W. Matthew Wilson" <matt@tplus1.com>)
Responses Re: Can't register python class for domain?  ("W. Matthew Wilson" <matt@tplus1.com>)
List psycopg
On 01/23/2015 07:16 AM, W. Matthew Wilson wrote:
> I created this domain:
>
>      create domain milliamp as double precision check (value >= 0);
>
> Then when I register a python class named Milliamp, it never gets
> used!  I think the problem is related to the type code coming back as
> the underlying double precision type:
>
>      >>> cursor.execute("select 4444::milliamp as m")
>      >>> cursor.description[0][1]
>      701
>      >>> cursor.execute("select 4444::double precision as f")
>      >>> cursor.description[0][1]
>      701
>
> But there really is a type called milliamp in postgresql, I promise:
>
>      > select typname, oid from pg_type where typname in ('float8', 'milliamp');
>      typname   oid
>      -------- ------
>      float8      701
>      milliamp 949531
>      (2 rows)
>
> I found this code, and it suggests other people have run into this same problem:
>
> https://github.com/beyang/psycopg2/blob/master/sandbox/domainoid.py
>
> Any ideas what is going on?

Hard to say with out seeing the code where you create and register the
milliamp type in psycopg2.

>
> Thanks in advance.  I love psycopg!
>
>


--
Adrian Klaver
adrian.klaver@aklaver.com


psycopg by date:

Previous
From: "W. Matthew Wilson"
Date:
Subject: Can't register python class for domain?
Next
From: Daniele Varrazzo
Date:
Subject: Re: Can't register python class for domain?