2

When I run a DBCC check against the database, it informs me that there is an issue with the sys.fulltext_stoplists object. It appears that the principal_id in stoplists does not have a relationship with database_principals:

Query result

What would be the best way to address the issue? It is difficult to modify data in system tables.

2

The sys.fulltext_stoplists doc says the column principal_id is the ID of the database principal that owns the stoplist. You can specify it as one of the Arguments of the CREATE FULLTEXT STOPLIST command:

AUTHORIZATION owner_name
Specifies the name of a database principal to own of the stoplist. owner_name must either be the name of a principal of which the current user is a member, or the current user must have IMPERSONATE permission on owner_name. If not specified, ownership is given to the current user.

It appears the owner of the object no longer exists. You can assign a new owner using the ALTER AUTHORIZATION like this:

ALTER AUTHORIZATION ON FULLTEXT STOPLIST::CustomStopword TO SomeExistingUser;

After that, run the DBCC check again to see if everything is ok.

5
  • Hi Ronaldo. I now receive the following message: Msg 0, Level 11, State 0, Line 0 A severe error occurred on the current command. The results, if any, should be discarded. Msg 0, Level 20, State 0, Line 0 A severe error occurred on the current command. The results, if any, should be discarded. Jul 21 '20 at 14:34
  • Hello, @CalgaryCoolCat. "A severe error occurred on the current command." what command?
    – Ronaldo
    Jul 21 '20 at 16:49
  • ALTER AUTHORIZATION ON FULLTEXT STOPLIST::CustomStopword TO maintenance; @ronaldo Jul 21 '20 at 20:46
  • Ok, @CalgaryCoolCat . 1 - When you marked the correct answer did it work (but now it doesn't) or you marked it before running the command? 2 - What does this command SELECT type_desc FROM sys.database_principals WHERE name = 'maintenance'; return? 3 - Does DBCC CHECKDB; return any error? (You might wanna run this last one in your maintenance window)
    – Ronaldo
    Jul 21 '20 at 22:36
  • @CalgaryCoolCat, if you were able to find a solution to the problem, please, post what you have done as an answer to the question so that others might benefit from the knowledge ;)
    – Ronaldo
    Jul 28 '20 at 13:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.