Simptomi
Pretpostavimo da imate postavljanje na kojem Microsoft SQL Server 2016 djeluje kao distributer i SQL Server 2014 ili SQL Server 2012 djeluje kao Publisher. Ako u ovom postavljanju stvorite brzu snimku ili transakcijsku ili spojnu publikaciju na SQL Serveru 2012 ili SQL Server 2014 Publisher s korisnički definiranom funkcijom (UDF-om) kao članak, agent za snimke neće uspjeti dok skriptiranje UDF-a, a prikazat će vam se poruka o pogrešci slična sljedećoj:
Skripta nije uspjela u programu Userdefinedfunkcija ' Schema. funkcionalni naziv '
U povijesti zadatka agenta snimke prikazuje se sljedeća poruka o pogrešci:
<DateTime> [5%] Replikacijski agent naišao je na iznimku<Datumvremena> izvor: nepoznato<DateTime> vrsta iznimke: Microsoft. SqlServer. Management. smo. Failedoperacioiznimka<DateTime> poruka o iznimkama: skripta nije uspjela za Userdefinedfunkcija ' Schema. funkcionalonname ' <DateTime> broj poruke: nije primjenjivo
Uzrok
Taj se problem pojavljuje jer agent za snimke koristi SMO miscroSFT. SqlServer. smo. dll na skripte Articles. SQL Server 2016 dodaje novi SMO Property isnativelykompilaciju za funkcije u memoriji/spremljene procedure. Ovo svojstvo nije prikazano u sustavu SQL Server čija je verzija starija od sustava SQL Server 2016. Kada pokrenete agent za snimke na servisu distributer za SQL Server 2016, on koristi Microsoft. SqlServer. smo. dll sustava SQL Server 2016, ali pokušava provjeriti je li nekretnine isnativelykompilirane u sustavu SQL Server 2012 ili 2014 Publisher i ne uspijeva s prethodno navedenom pogreškom.
Rješenje
Taj je problem riješen u sljedećim kumulativnim ažuriranjima za SQL Server: Kumulativno ažuriranje 2 za SQL server 2016 SP1Kumulativno ažuriranje 4 za SQL Server 2016
Svako novo Kumulativno ažuriranje za SQL Server sadrži sve hitne popravke i sve sigurnosne ispravke uključene u prethodno Kumulativno ažuriranje. Pogledajte najnovija kumulativna ažuriranja za SQL Server: Najnovije Kumulativno ažuriranje za SQL Server 2016
Zaobilazno rješenje
Da biste zaobišli taj problem, ručno stvorite korisnički definirane funkcije (UDF-ove) na Pretplatniku.
Status
Microsoft je potvrdio da se radi o problemu u Microsoftovim proizvodima navedenim u odjeljku "odnosi se na".
Reference
Saznajte više o terminologijikoju Microsoft koristi za opisivanje softverskih ažuriranja.