0

I am attempting to add a new collection to a new instance of Team Foundation Server 2017 (Update 2). The process fails at step 27:

Step 26 Failure

The error log contains this:

[2017-11-04 21:28:30Z][Error] 1 error(s) occurred while executing WorkItemTrackingCreateFullTextIndex.sql script.
Failed batch starts on line: 1.

Error: 229, Level: 14, State: 5, Batch Line: 15, Script Line: 15
Message: The SELECT permission was denied on the object 'fulltext_languages', database 'mssqlsystemresource', schema 'sys'.
================ Failed batch begin ==========================
/*****************************************************************************
* Standalone Non Transactional action to create Full Text Search Index.
* Applicable as a PostCreate action, but requires execution without a transactional lock.
*****************************************************************************/
SET NOCOUNT ON

-- Create full text index if FTS is available.
exec dbo.InstallWorkItemWordsContains
================ Failed batch end ============================

The server in question has Full Text Search installed and the user in question that the Team Foundation Server service is running under has sys_admin permissions on the server in question as well as on the database.

I also followed this StackOverflow article and ensured that the user does not have deny permissions on the database or system.

What else can I check?

Thank you for you time.

Chris K.
  • 467
  • 2
  • 5
  • 19

1 Answers1

0

According to the error message it shoule be the permission issue.

Please run below query to check if there is a record to Grant select for the the object 'fulltext_languages':

SELECT  SDP.state_desc ,
        SDP.permission_name ,
        SSU.[name] AS "Schema" ,
        SSO.[name] ,
        SSO.[type]
FROM    sys.sysobjects SSO
        INNER JOIN sys.database_permissions SDP ON SSO.id = SDP.major_id
        INNER JOIN sys.sysusers SSU ON SSO.uid = SSU.uid
ORDER BY SSU.[name] ,
        SSO.[name]

If there isn't the record, just try run below query to grant that:

USE user_DB
GO
GRANT SELECT ON [sys].[fulltext_languages] TO PUBLIC
GO

Also check the User Mapping and Server Roles for the services user. Refer to Database-Level Roles for details.

Andy Li-MSFT
  • 28,712
  • 2
  • 33
  • 55