Accedi con Microsoft
Accedi o crea un account.
Salve,
Seleziona un altro account.
Hai più account
Scegli l'account con cui vuoi accedere.

Sintomi

La stored procedure sp_replmonitorsubscriptionpendingcmds non è compatibile con la replica peer-to-peer (P2P). Restituisce un numero errato di comandi in sospeso. Dopo aver applicato questa correzione, sp_replmonitorsubscriptionpendingcmds sarà compatibile con la replica P2P.

Nota La  scheda "Comandi non distribuiti" di un monitor di replica richiama sp_replmonitorsubscriptionpendingcmds dietro le quinte.

Risoluzione

Informazioni sugli aggiornamenti cumulativi

Questo problema è stato risolto negli aggiornamenti cumulativi seguenti per SQL Server:

NotaDopo aver applicato questo aggiornamento cumulativo, sp_replmonitorsubscriptionpendingcmds potrebbe comunque segnalare un numero errato di comandi in sospeso per la replica P2P se la tabella MSrepl_originators contiene voci non aggiornate.

Se la tabella MSrepl_originators contiene voci non aggiornate, l'esecuzione di sp_replmonitorsubscriptionpendingcmds genererà il seguente messaggio di avviso nel log degli errori di SQL Server:

Avviso: non è possibile ottenere la versione del database per il database di sottoscrizione ' <database_name>'. Il sp_replmonitorsubscriptionpendingcmdspotrebbe segnalare il numero errato di comandi in sospeso per la replica P2P.

Per risolvere il problema, eliminare le voci non aggiornate da MSrepl_originators o passare la "dbversion" corretta di un database di sottoscrizione come argomento subdb_version quando si esegue sp_replmonitorsubscriptionpendingcmds.

Suggerimenti: È possibile selezionare uno dei metodi seguenti per trovare la "dbversion" di un database di sottoscrizione:

  • Eseguire la query seguente in un database di distribuzione: select dbversion from MSrepl_originators
    where publisher_database_id = <Publisher_Database_ID>
    and srvname = <Subscriber_Server>
    and dbname = <Subscriber_Database>
    Nota È necessario sostituire i valori appropriati con <Publisher_Database_ID> , <Subscriber_Server> e <Subscriber_Database>.

  • Eseguire la query seguente in un database di sottoscrizione: declare @current_version int , @currentGuid uniqueidentifier
    select @currentGuid = recovery_fork_guid
    from sys.database_recovery_status
    where database_id = db_id()
    select @current_version = substring(convert(binary(16), isnull(@currentGuid, 0x0)),1,6)
    print @current_version

Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli aggiornamenti rapidi e le correzioni per la sicurezza inclusi nella build precedente. È consigliabile installare la build più recente per la versione di SQL Server:

Stato

Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".

Riferimenti

Informazioni sulla terminologia utilizzata da Microsoft per descrivere gli aggiornamenti software.

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.

Queste informazioni sono risultate utili?

Come valuti la qualità della lingua?
Cosa ha influito sulla tua esperienza?
Premendo Inviare, il tuo feedback verrà usato per migliorare i prodotti e i servizi Microsoft. L'amministratore IT potrà raccogliere questi dati. Informativa sulla privacy.

Grazie per il feedback!

×