Bazy danych WEBCON BPS w trybie zgodności z SQL 2019

Facebooktwitterpinterestlinkedinmail
Dotyczy wersji 2022.1.x i powyżej, autor: Jacek Język

 

Od wersji WEBCON BPS 2022.1.1 najniższą wspieraną wersją SQL Server jest wersja 2014.

W przypadku instalacji WEBCON BPS korzystających wyższych wersji SQL Server, bazy danych WEBCON BPS domyślnie pracują z Compatibility Level ustawionym na SQL Server 2014.

Zmiana Compatibility Level z SQL Server 2014 na SQL Server 2019 jest możliwa ale wiąże się z koniecznością wyłączenia opcji TSQL_SCALAR_UDF_INLINING (Scalar UDF Inlining). Opcja ta jest domyślnie włączana przy zmianie Compatibility Level na SQL Server 2019.

Microsoft dokumentacja

Wpływ parametru TSQL_SCALAR_UDF_INLINING na działanie WEBCON BPS

Funkcje skalarne zdefiniowane w WEBCON BPS w większości wykonują operacje konwersji lub formatowania na pojedynczych wartościach. Nie ma tu podzapytań lub operacji arytmetycznych na kilku kolumnach z tabeli, przekazanych jako parametry wejściowe. „Inlineowanie” takich funkcji w bazach WEBCON BPS nie poprawia wydajności zapytań. Natomiast ze względu na to, że są one używane w dużej ilości w zapytaniach SQL generowanych np. przez raporty aplikacji, rozmiar takiego zapytania znacznie wzrastać podczas „inlineowania”, co prowadzi do pogorszenia wydajności tych zapytań, a nawet braku możliwości ich uruchomienia.

Ze względu na powyższe „inlineowanie” funkcji skalarnych powinno być wyłączone w bazach WEBCON BPS.

Od wersji WEBCON BPS 2022.1.2.31 w trakcie procesu aktualizacji systemu do wersji wyższych weryfikowany jest Compatibility Level oraz stan parametru TSQL_SCALAR_UDF_INLINING. Jeśli Compatibility Level bazy danych (dotyczy baz Config, Content, Archiwum) jest ustawiony na SQL Server 2019 i równocześnie parametr TSQL_SCALAR_UDF_INLINING jest włączony wówczas dla tej bazy danych parametr TSQL_SCALAR_UDF_INLINING jest wyłączany.