ORA-02050: transaction 27.26.1342 rolled back

maria326
27 de Agosto del 2005
Hola,
Tengo dos esquemas distintintos que han de traspasarse datos.
Uno operacional y otro historico, en el historico me cree un databaselink que accediera al operacional, tengo un proceso que lee del historico para insertar en el operacional con un simple (insert select) pero
me dá el error:

ERROR en línea 1:
ORA-02050: transaction 27.26.1342 rolled back, some remote DBs may be in-doubt
ORA-02068: following severe error from LQDLLQ01
ORA-00603: ORACLE server session terminated by fatal error
ORA-00600: internal error code, arguments: [4080], [1], [131], [], [], [], [],

donde LQDLLQ01 es el nombre del databaselink.

Creía que era pq el número de filas era bastante grande, así que intento insertar uno solo y tampoco.
Supose entonces que no tenía permisos de escritura en el operacional, pero para otras tablas si lo hace, e incluso dándole permisos de escritura sobre dicho objecto concreto sigue dándome el error.

¿podeís echarme una mano?

Gracias y Un Saludo,
Maria.

nerea
27 de Agosto del 2005
¿Es posible que la tabla que estás modificando (o insertando) tenga definido algún snapshot?
Es que existe un bug al respecto:
"Bug 1385495 OERI:4080 or STALE data in "ON COMMIT" snapshot if base table updated by DISTRIBUTED transaction"

La solución sería que la "vista materializada" fuera "ON DEMAND" en vez de "ON COMMIT"

maria326
27 de Agosto del 2005


Hola, pués sí tiene 4 y como dices tiene ON-COMMIT.
¿qué difierencias habría entre ON-COMMIT y ON-DEMAND? estas vistas se utilizan mucho son muy importantes.

Gracias me estaba volviendo loca.

Maria

Carlos
27 de Agosto del 2005
ON-COMMIT: la VM se refresca cada vez que se hace un commit sobre sus tablas base.

ON-DEMAND: la VM se refresca a mano mediante DBMS_MVIEW.

Un saludo.

Carlos.

maria326
27 de Agosto del 2005

Borraré las vistas, lanzaré el proceso y las crearé
de nuevo ya que no me dejan cambiarlo.

Gracias,
Maria.