Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Error borrando datos de tabla en 8.3


  • From: Raúl Andrés Duque <ra_duque(at)yahoo(dot)com(dot)mx>
  • To: <pgsql-es-ayuda(at)postgresql(dot)org>
  • Subject: Error borrando datos de tabla en 8.3
  • Date: Fri, 29 Feb 2008 05:13:56 -0500
  • Message-id: <001a01c87abb$cb89d520$0201a8c0(at)desktop>

Cordial Saludo.
 
Tengo que inicializar una tabla por lo que ejecute los siguientes comandos:
 
==================================================================
-- Limpiar Movimiento
delete from def_movimiento;
select setval('def_movimiento_id_movimiento_seq', 1);
==================================================================
 
La tabla tiene cerca de 500k registros ... después de 6 horas decidí cancelar el comando (no era lógico que demorara tanto!!!), al cancelar obtuve el siguiente mensaje:
 
==================================================================
Query result with 1 rows discarded.
Query result with 1 rows discarded.
Query result with 1 rows discarded.
Query result with 1 rows discarded.
Query result with 1 rows discarded.
 
ERROR:  canceling statement due to user request
CONTEXT:  SQL statement "SELECT 1 FROM ONLY "postgresql"."def_parte" x WHERE "id_parte" OPERATOR(pg_catalog.=) $1 FOR SHARE OF x"
==================================================================
 
Existe un FK entre def_movimiento y def_parte, pero por el sentido de la relación, no debería afectarme .... además las operaciones en cascada están desactivadas.
 
Qué puede estar pasando?
 
NOTA: En 8.2 no tuve problemas en este sentido. Voy a intentar con TRUNCATE TABLE, que es más adecuado para lo que quiero hacer a ver que pasa.
 
Esta es la estructura de la tabla def_movimiento:
 
==================================================================
CREATE TABLE postgresql.def_movimiento
(
  id_movimiento integer NOT NULL DEFAULT nextval('def_movimiento_id_movimiento_seq'::regclass),
  fecha_movimiento timestamp without time zone NOT NULL DEFAULT ('now'::text)::date,
  id_transac integer NOT NULL DEFAULT 1,
  id_dtransac smallint NOT NULL DEFAULT 1,
  id_traninve integer NOT NULL DEFAULT 1,
  id_parte integer NOT NULL DEFAULT 1,
  id_almacen integer NOT NULL DEFAULT 1,
  id_localizacion integer NOT NULL DEFAULT 1,
  id_tipodocumento integer NOT NULL DEFAULT 99,
  documento_movimiento integer NOT NULL DEFAULT 0,
  itemdocu_movimiento smallint NOT NULL DEFAULT 0,
  id_tercero integer NOT NULL DEFAULT 99999999,
  iduser integer NOT NULL DEFAULT 1,
  id_unidad integer NOT NULL DEFAULT 1,
  cantidad_movimiento real NOT NULL DEFAULT 0,
  vpromedio_movimiento real NOT NULL DEFAULT 0,
  vultimo_movimiento real NOT NULL DEFAULT 0,
  qreal_movimiento real NOT NULL DEFAULT 0,
  qcomprometida_movimiento real NOT NULL DEFAULT 0,
  qtransito_movimiento real NOT NULL DEFAULT 0.0,
  qreal2_movimiento real NOT NULL DEFAULT 0.0,
  CONSTRAINT key_movimiento PRIMARY KEY (id_movimiento),
  CONSTRAINT def_movimiento_id_almacen_fkey FOREIGN KEY (id_almacen, id_localizacion)
      REFERENCES postgresql.def_localizacion (id_almacen, id_localizacion) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION,
  CONSTRAINT def_movimiento_id_parte_fkey FOREIGN KEY (id_parte)
      REFERENCES postgresql.def_parte (id_parte) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION,
  CONSTRAINT def_movimiento_id_tercero_fkey FOREIGN KEY (id_tercero)
      REFERENCES postgresql.def_tercero (id_tercero) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION,
  CONSTRAINT def_movimiento_id_tipodocumento_fkey FOREIGN KEY (id_tipodocumento)
      REFERENCES postgresql.def_tipodocumento (id_tipodocumento) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION,
  CONSTRAINT def_movimiento_id_traninve_fkey FOREIGN KEY (id_traninve)
      REFERENCES postgresql.def_traninve (id_traninve) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION,
  CONSTRAINT def_movimiento_id_transac_fkey FOREIGN KEY (id_transac, id_dtransac)
      REFERENCES postgresql.def_dtransac (id_transac, id_dtransac) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION,
  CONSTRAINT def_movimiento_id_unidad_fkey FOREIGN KEY (id_unidad)
      REFERENCES postgresql.def_unidad (id_unidad) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION,
  CONSTRAINT def_movimiento_iduser_fkey FOREIGN KEY (iduser)
      REFERENCES postgresql.sys_users (iduser) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION
)
WITH (OIDS=FALSE);
ALTER TABLE postgresql.def_movimiento OWNER TO postgres;
 
CREATE INDEX idx_movimiento_fecha
  ON postgresql.def_movimiento
  USING btree
  (fecha_movimiento);
==================================================================
 
El archivo de log no me reporta ningun problema de memoria, sin envargo me recomienda aumentar el tiempo de checkpoints;
 
==================================================================
2008-02-29 04:04:07 COT LOG:  checkpoints are occurring too frequently (15 seconds apart)
2008-02-29 04:04:07 COT HINT:  Consider increasing the configuration parameter "checkpoint_segments".
2008-02-29 04:04:26 COT LOG:  checkpoints are occurring too frequently (19 seconds apart)
2008-02-29 04:04:26 COT HINT:  Consider increasing the configuration parameter "checkpoint_segments".
2008-02-29 04:04:39 COT LOG:  checkpoints are occurring too frequently (13 seconds apart)
2008-02-29 04:04:39 COT HINT:  Consider increasing the configuration parameter "checkpoint_segments".
2008-02-29 04:44:54 COT LOG:  loaded library "$libdir/plugins/plugin_debugger.dll"
2008-02-29 04:45:54 COT LOG:  loaded library "$libdir/plugins/plugin_debugger.dll"
2008-02-29 04:45:54 COT ERROR:  canceling statement due to user request
2008-02-29 04:45:54 COT CONTEXT:  SQL statement "SELECT 1 FROM ONLY "postgresql"."def_parte" x WHERE "id_parte" OPERATOR(pg_catalog.=) $1 FOR SHARE OF x"
2008-02-29 04:45:54 COT STATEMENT:  -- Limpiar Movimiento
 
 delete from def_movimiento;
 
 select setval('def_movimiento_id_movimiento_seq', 1);
 
2008-02-29 04:47:03 COT LOG:  loaded library "$libdir/plugins/plugin_debugger.dll"
2008-02-29 04:47:36 COT LOG:  loaded library "$libdir/plugins/plugin_debugger.dll"

2008-02-29 05:06:17 COT LOG:  loaded library "$libdir/plugins/plugin_debugger.dll"
==================================================================
 
 
Atentamente,
 
RAUL DUQUE
Bogotá, Colombia


Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group