Error al actualizar tabla con columna rowguid
En uno de nuestros entornos, tenemos dos BBDD SQL Server 2008 R2 alineadas entre si por replica Peer to Peer, y a su vez cada BBDD tiene creada una replicación de Mezcla con varios subscriptores.
Cuando tratamos de realizar un update en un artículo/tabla que está en la publicación de Mezcla y en la publicación Peer to Peer nos muestra el siguiente error:
«Error executing a batch of commands. Retrying individual commands», «Updating columns with rowguidcol property is not allowed»
Este error ocurre debido a que los procedimientos almacenados que usa Peer To Peer para realizar los updates, actualizan todas las columnas ya sea poniendo un valor nuevo o volviendo a poner el mismo, y no está permitido actualizar la columna rowguid.
Después de reportar este error a Microsoft, dan la opción de crear un procedimiento almacenado «custom», únicamente habría que omitir la línea de código en la que actualiza la columna rowguid.
Esto no este soportado por Microsoft, «You must support the logic in the stored procedure; Microsoft does not provide support for custom logic.» como se índica en Specifying How Changes Are Propagated for Transactional Articles
Microsoft no nos han dado fecha para una posible solución oficial.
Consultor Senior SQL Server & BI con 9 años de experiencia, MCSE Data Platform con conocimientos de toda la herramienta y enfocado principalmente a la detección y mejora de problemas de rendimiento en Base de Datos. En mi tiempo libre soy un gran aficionado a la fotografía de estilo urbano y de lugares abandonados.