From: | Javier Fritz Aliste <javier(dot)fritz(at)lanix(dot)cl> |
---|---|
To: | Mariano Reingart <reingart(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Consulta PyReplica |
Date: | 2009-10-02 20:56:11 |
Message-ID: | 4AC668EB.1000805@lanix.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola.
Como estan, hace algun tiempo pedi ayuda sobre una solución de replicación, he optado por PyReplica , y tengo el siguiente problema.quizas de simple la solución,
Tengo 3 servidores, cada uno tiene conexión con dos maestros remotos, funciona aceptablemente bien, esta montado en servidores con salida a internet con un trafico aun de prueba.
Al grano, al realizar una insercion en una tabla que posee un campo bigint, el triger esta capturando el query pero para el valor de este campo lo concatena con "L", no se si esto es correcto, ya que al ejectuar este query, se por el esclavo pyreplica o extrayendolo manualmente y ejecutandolo sobre la base genera el error.
Query capturado por py_log_replica():
INSERT INTO "sys_tablas" ("id_fila", "horacreacion", "tab_fecha5", "tab_fecha4", "tab_fecha3", "tab_fecha2", "tab_fecha1", "tab_codigo", "uscreacion", "tab_texto2", "tab_texto3", "usmodif", "tab_texto1", "tab_texto4", "tab_texto5", "tab_valor4", "tab_valor5", "tab_tipo", "tab_valor1", "tab_valor2", "tab_valor3", "tab_desctabla", "fecmodif", "horamodif", "tab_codtabla", "feccreacion", "tab_estado", "tab_desc", "tab_activo") VALUES ('1411L', '161847', '', '', '', '', '', '0102', 'root', '', '', NULL, '', '', '', '0.0', '0.0', 'S', '1.0', '0.0', '0.0', 'Vendedores', NULL, NULL, '1', '20091002', '', '0102', 'S')
la tabla posee casi todos sus campo varchar y posee solo 1 bigint, que es "id_fila" y el valor entregado segun el triger es 1411L en la tabla original el query ejecutado es:
INSERT INTO "sys_tablas" ("id_fila", "horacreacion", "tab_fecha5", "tab_fecha4", "tab_fecha3", "tab_fecha2", "tab_fecha1", "tab_codigo", "uscreacion", "tab_texto2", "tab_texto3", "usmodif", "tab_texto1", "tab_texto4", "tab_texto5", "tab_valor4", "tab_valor5", "tab_tipo", "tab_valor1", "tab_valor2", "tab_valor3", "tab_desctabla", "fecmodif", "horamodif", "tab_codtabla", "feccreacion", "tab_estado", "tab_desc", "tab_activo") VALUES (1411, '161847', '', '', '', '', '', '0102', 'root', '', '', NULL, '', '', '', 0.0, 0.0, 'S', 1.0, 0.0, 0.0, 'Vendedores', NULL, NULL, '1', '20091002', '', '0102', 'S')
este ultimo corre sin problemas.
Al ejectuar el primer query directo:
ERROR: error de sintaxis en o cerca de «L»
Al hacerlo con los esclavos corriendo
PyReplica notifica via email (por cada esclavo):
Traceback (most recent call last):
File "/usr/local/pyreplica/daemon.py", line 74, in run
debug = self.debug)
File "/usr/local/pyreplica/pyreplica.py", line 154, in main_loop
replicate(cur0, cur1, skip_user, slave_field, debug)
File "/usr/local/pyreplica/pyreplica.py", line 92, in replicate
cur1.execute(sql)
DataError: la sintaxis de entrada no es válida para integer: «1411L»
--
From | Date | Subject | |
---|---|---|---|
Next Message | Javier Fritz Alsite | 2009-10-02 21:05:17 | Consulta PyReplica |
Previous Message | Sergio David | 2009-10-02 18:48:37 | Re: Problemas concatenacion y comillas en pl/pgsql |