У меня есть таблица SQL DW, разделенная по месяцам. Наш администратор баз данных переехал несколько месяцев назад, и с тех пор наши таблицы не были разделены. Заметили только из-за подтормаживаний на столах.
Когда мы пытаемся добавить раздел с помощью функции разделения, мы получаем ошибку ниже
«Сбой предложения SPLIT инструкции ALTER PARTITION, поскольку раздел не пуст».
Мы пробовали следующее
CREATE TABLE [data].[sessions_range]
WITH
(
CLUSTERED COLUMNSTORE INDEX,
DISTRIBUTION = HASH([sesh_id]),
PARTITION
(
-- SAMPLE RANGE
[session_start_dt] RANGE RIGHT FOR VALUES
(
'2016-12-01'
)
)
)
AS
SELECT *
FROM [data].[sessions]
WHERE 1=2
;
ALTER TABLE [data].[sessions] SWITCH PARTITION <guessed at a partition number>
TO [data].[sessions_range] PARTITION 2;
ALTER TABLE [data].[sessions] SPLIT RANGE ('2016-12-01');
После последней строки это не удается. Раздел Switch, похоже, работает нормально, хотя нам пришлось просмотреть номера разделов, пока мы не нашли соответствующий раздел в пределах диапазона.
Может ли кто-нибудь помочь нам понять, почему раздел по-прежнему будет говорить, что он не пуст во время разделения, даже после того, как мы переключились?