Проблема с прослушиванием параметров NHibernate LINQ

У нас проблемы с производительностью из-за перехвата параметров в SQL Server. Наше приложение использует NHibernate с провайдером LINQ.

Я ищу способ добавить, например, "OPTION(RECOMPILE)" в этот определенный запрос SQL. Теперь я могу использовать перехватчики для этого, но я хочу, чтобы он добавлялся только к определенным запросам IQueryable. Так что не на все мои запросы nhibernate, потому что тогда я потеряю преимущества кэширования плана запросов.

Также приветствуются другие варианты для определения параметров в 1 конкретном запросе с помощью NHibernate.

1 ответ

Используйте руководство плана запроса для него, чтобы указать оптимизацию для.

Вот простое пошаговое руководство: http://realsqlguy.com/dont-get-slimed-bad-parameter-sniffing/

Хотя это устраняет проблему на стороне сервера, вам нужно найти запрос, который вызывает проблему, найти правильный план и сгенерировать руководство по плану. Возможно, следующая версия SQL Server решит некоторые проблемы с прослушиванием параметров.

Другие вопросы по тегам