It appears setting a filegroup to
dbcc checkdb for the entire database if the filegroup contains a columnstore index. When attempting to run
checkfilegroup (for any filegroup in the database, including read-write secondaries and
[PRIMARY]), the below error is returned...
Msg 8921, Level 16, State 1, Line 24 Check terminated. A failure was detected while collecting facts. Possibly tempdb out of space or a system table is inconsistent. Check previous errors.
Is there a supported method for having columnstore data in a read-only filegroup? Or am I precluded from integrity checks in this scenario?
create database check_fg_ro go use check_fg_ro go exec sp_changedbowner 'sa'; go alter database check_fg_ro add filegroup check_fg_ro_2; alter database check_fg_ro add file ( name='check_fg_ro_2' ,filename='C:\check_fg_ro_2.ndf' ) to filegroup check_fg_ro_2; go create table foo ( i int not null primary key ) on check_fg_ro_2; go create columnstore index ccix_foo on foo(i); go use master go alter database check_fg_ro modify filegroup check_fg_ro_2 read_only; go dbcc checkdb( check_fg_ro ) with no_infomsgs, all_errormsgs, extended_logical_checks; /* Msg 8921, Level 16, State 1, Line 24 Check terminated. A failure was detected while collecting facts. Possibly tempdb out of space or a system table is inconsistent. Check previous errors. */ go
Disclaimer: cross-posted to technet forums