Sintomi
Considerare lo scenario descritto di seguito:
-
Si usa la replica in Microsoft SQL Server 2012 o SQL Server 2014.
-
Si aggiunge un abbonamento nell'abbonamento alla replica e quindi lo si elimina.
In questo scenario, è possibile che venga visualizzato il seguente messaggio di errore 515:
Impossibile inserire il valore NULL nella colonna "article_id", tabella "<DistributionDatabaseName> .dbo.MSrepl_commands"; la colonna non consente valori null. L'inserimento non riesce.
Causa
Il problema si verifica a causa di una regressione di SQL Server 2012. Quando si aggiunge un abbonamento e quindi lo si elimina, i metadati della replica relativi all'abbonamento vengono eliminati immediatamente perché è presente un ritardo prima che LogReader riscontri il comando per aggiungere l'abbonamento.
Risoluzione
Il problema è stato risolto per la prima volta nel seguente aggiornamento cumulativo di SQL Server.
Aggiornamento cumulativo 1 per SQL Server 2012 SP2 /en-us/help/2976982
Aggiornamento cumulativo 2 per SQL Server 2014 /en-us/help/2967546
Aggiornamento cumulativo 10 per SQL Server 2012 SP1 /en-us/help/2954099
Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e tutti gli aggiornamenti della sicurezza inclusi nell'aggiornamento cumulativo precedente. Vedere gli ultimi aggiornamenti cumulativi per SQL Server:
Stato
Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".