Показать сообщение отдельно
Старый 03.12.2021, 07:44   #6  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,275 / 3476 (122) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от trud Посмотреть сообщение
Вот это кстати интерестный момент. А кто ее удаляет? На одном из клиентов наблюдал что таблицы были в большом кол-ве в tempdb
https://docs.microsoft.com/en-us/sql...empdb-database
Цитата:
SQL Server PDW drops tables from tempdb when:
  • The DROP TABLE statement is executed.
  • A session is disconnected. Only temporary tables for the session are dropped.
  • The appliance is shutdown.
  • The Control node has a cluster failover.
Большое количество временных таблиц - это не показатель. Там же на каждый чих используется временная таблица. Ну и не стоит забывать, что перезагрузка SQL Server приводит к пересозданию всей базы tempDB

Ну и самый простой способ проверить. Берем табличку в АХ, которая является временной в tempDB (например, TmpRecIdFilter). Пишем джобик на Х++ (класс в D365), где делаем select из этой таблицы, после чего получаем в локальную переменную значение метода cursor.getPhysicalTableName() - это и будет настоящее имя таблицы. Останавливаем исполнение кода в отладчике (чтобы сессия не закрылась), идем в SQL Manamegent Studio и делаем запрос select * from tempDB..[то имя, которое мы получили из метода getPhysicalTableName()].

После завершения работы джобика (если мы отпустим отладчик) этот запрос уже невозможно будет выполнить (будет ошибка)
__________________
Возможно сделать все. Вопрос времени

Последний раз редактировалось sukhanchik; 03.12.2021 в 07:49.