On Jul 12, 2011, at 12:19 PM, Alex Hunsaker wrote:

> All Arrays in 9.0 and lower are strings, regardless of if they are
> comprised of composite types. Its not so much a bug as a limitation.
> Alexey Klyukin fixed this for 9.1 :-)

Oh?

               dump           
    --------------------------
     $VAR1 = {               +
               'that' => '5',+
               'this' => '3' +
             };              +
 
    (1 row)

    Time: 2.016 ms
                            dump                        
    ----------------------------------------------------
     $VAR1 = bless( {                                  +
                      'array' => [                     +
                                   {                   +
                                     'that' => '5',    +
                                     'this' => '3'     +
                                   }                   +
                                 ],                    +
                      'typeoid' => 16457               +
                    }, 'PostgreSQL::InServer::ARRAY' );+
 
    (1 row)

Woo! Thanks!

> [ In 9.1 we could not make them straight perl arrayrefs as we needed
> to keep the string representation for backwards compatibility. What we
> did in 9.1 is overload the arrayref and string operations on blessed
> object so you can treat it as either. ]

Yep, awesome.

Best,

David

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to