[Bucardo-general] 'type "int_unsigned" does not exist' error when creating sync
Greg Sabino Mullane
greg at endpoint.com
Thu Jul 29 02:34:48 UTC 2010
Bill McGonigle wrote:
...
> > CONTEXT: SQL function "validate_sync" statement 1
> > SQL statement "SELECT validate_sync('drupal_left')"
> > Failed to add sync: DBD::Pg::st execute failed: ERROR: error from Perl trigger function: error from Perl function: DBD::Pg::db do failed: ERROR: type "int_unsigned" does not exist at line 787. at line 30. at /usr/sbin/bucardo_ctl line 3346.
>
> It sounds like DBD::Pg doesn't know about the int_unsigned data type
> from the message, but that doesn't seem right.
Nope, that's right. To be specific, Postgres doesn't know about the
'int_unsigned' data type because there isn't one. These are drupal-specific
domains that look like this:
"CREATE DOMAIN int_unsigned integer CHECK (VALUE >= 0)"
The best fix is to change the schema to use constraints rather
than a domain. See the patch at comment #27 here for example:
http://drupal.org/node/339588
The other way would be to patch Bucardo and tell it that int_unsigned
is really "int", smallint_unsigned is really smallint, and bigint_unsigned
is really bigint. That should be safe enough to do, as I can't imagine
many other people are creating such types outside of drupal.
--
Greg Sabino Mullane greg at endpoint.com
End Point Corporation
PGP Key: 0x14964AC8
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 163 bytes
Desc: not available
Url : https://mail.endcrypt.com/pipermail/bucardo-general/attachments/20100728/12b24741/attachment.bin
More information about the Bucardo-general
mailing list