none
执行多维数据集更新ProcessAnalysisDatabase 产生错误 WarehouseException: TF221122 未能处理分析数据库“Tfs_Analysis” RRS feed

  • 问题

  • 参考的多维数据集手动管理

    链接 https://msdn.microsoft.com/zh-cn/library/ff400237.aspx?f=255&MSPPError=-2147217396

    Tfs版本:2013 无补丁   无法自动或手动更新多维数据集

    系统默认每天在晚上进行多维数据集的更新,调用GetProcessingStatus获得详细更新操作记录。

    参照更新时间发现 仍每晚执行全量和增量的多维数据集更新,但两次更新全部异常退出;


    增量和全量更新报错基本相同,出错信息如下。

    ---> AnalysisDatabaseProcessingType=Full, needCubeSchemaUpdate=True. 
    ---> Microsoft.TeamFoundation.Warehouse.WarehouseException: TF221122: 为团队项目集合或 Team Foundation Server TEAM FOUNDATION 
    运行作业 Incremental Analysis Database Sync 时出错。
    ---> Microsoft.TeamFoundation.Warehouse.WarehouseException: 未能处理分析数据库“Tfs_Analysis”。 
    ---> Microsoft.TeamFoundation.Warehouse.WarehouseException: 内部错误: 操作未能成功,已终止。
      服务器: 已取消当前操作,因为事务中的另一个操作失败。
      出现以下系统错误: 登录失败: 未知的用户名或错误密码。 
            高级关系引擎中存在错误。 
            无法与 DataSourceID 为“Tfs_AnalysisDataSource”、名称    为“Tfs_AnalysisDataSource”的数据源建立连接。
            OLAP 存储引擎中存在错误: 处理 ID 为“Result”、名称为“测试结果”的 dimension 时出错。 
            OLAP 存储引擎中存在错误: 处理“Tfs_Analysis”数据库的“Test Result”维度的“Readiness State Id”属性时出错。 
            OLAP 存储引擎中存在错误: 处理 ID 为“Result”、名称为“测试结果”的 dimension 时出错。 
            ...

    在报表服务配置工具中 测试数据库连接 返回正常,如下图

    如何能够修复此多维数据集?

    能否避免影响 tfs的工作项记录?


    TFS C#开发不动人员 这个职业不广泛


    2016年3月31日 9:07

答案

  • 你好,

    展开warehouse数据库=》安全=》用户,选择server账户,双击,选择成员资格, 看看什么结果。

    另外你可以尝试删除analysis数据库,在重新生成试试。参照这篇文章。


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • 已标记为答案 Allen WOE 2016年4月13日 1:08
    2016年4月11日 7:29
    版主

全部回复

  • 你好,

    >>系统默认每天在晚上进行多维数据集的更新,调用GetProcessingStatus获得详细更新操作记录

    它是如何被掉用的?

    在TFS管理工具(admin console)里,你是如何配置账户的?


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2016年4月1日 5:38
    版主
  • Starain,

    你好。

    1.使用GetProcessingStatus来获取服务操作信息

      这是使用了tfs服务器本地的WebService接口http://localhost:8080/tfs/TeamFoundation/Administration/v3.0/WarehouseControlService.asmx

    2.配置账户如下图:都是windows用户

    以上,

    感谢


    TFS C#开发不动人员 这个职业不广泛

    2016年4月5日 0:45
  • 你好,

    打开SQL Server Management Studio, 链接到Analysis Service, 展开Data Source, 右击Tfs_AnalysisDataSource=>属性,在安全设置(security Settings) 设置一个账户。

    另一方面,在TFS 控制台(admin control)里重新设置下服务账户(service account), 然后手动rebuild reporting, 在执行warehouse 和cube.


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2016年4月5日 2:34
    版主
  • Starain,

    你好.

    执行warehouse和cube 是指什么?

    重新设置服务账户界面如下:  重新设置 有什么作用呢 ?  为什么不直接在控制台 rebuild reporting


    TFS C#开发不动人员 这个职业不广泛

    2016年4月5日 12:02
  • 你好,

    执行warehouse和cube就是上面你提供的文档里 ProcessWarehouse, ProcessAnalysisDatabase, 也可以通过控制台来执行,不过我们可以试试多种方法。

    你有没有重新在控制台里重新设置下服务账户(service account)?


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2016年4月6日 2:27
    版主
  • 你好,

    Starain。

    第二步,我还没有更改服务账户,更改服务账户 再 rebuild 会 影响正在运行的tfs服务么? 会引起崩溃么?

    更改服务账户界面如下图:   这里是应该使用管理员账户 与 前面安全设置中账户一致么?

    tfs管理控制台中 有报表读取器账户配置,如下图,是否需要变更?

    第一步在安全设置中设置账户 我已经查验了,原本就配置了管理员账户,如图

    以上,感谢 Starain 的 帮助,希望能了解更多 与此相关内容。


    TFS C#开发不动人员 这个职业不广泛


    2016年4月6日 3:00
  • 你好,

    首先更改账户不会影响TFS正常运行。

    根据截图,你用的是service账户,尝试检查下面的项:

    打开数据库管理工具,安全=》登录,双击Service账户(Network service),选择user mapping, 选择warehouse数据库,检查账户有没有选择TFSEXECROLE?


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2016年4月7日 5:07
    版主
  • 你好,

    Starain。

    我没能找到你描述的路径:

       打开数据库管理工具,安全=》登录,双击Service账户(Network service),选择user mapping, 选择warehouse数据库

    我用数据库管理工具登陆,选择Tfs_warehouse数据库的属性->权限,如下图

    发现TFSEXECROLE是数据库角色,Network service是用户,且Network service的权限信息中没有包含于TFSEXECROLE相关的内容。

    以上,感谢


    TFS C#开发不动人员 这个职业不广泛

    2016年4月7日 10:17
  • 你好,

    展开warehouse数据库=》安全=》用户,选择server账户,双击,选择成员资格, 看看什么结果。

    另外你可以尝试删除analysis数据库,在重新生成试试。参照这篇文章。


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • 已标记为答案 Allen WOE 2016年4月13日 1:08
    2016年4月11日 7:29
    版主
  • 你好,

    Starain。

    按照该步骤 发现NETWork SERVICE账号具有TFSEXECROLE组权限。

    这样的话 我还是不再修改账号,太迷惑了。

    我也打算删除analysis来重新生成,starain 这个账号组权限如上图,那么我生成analysis有风险么?

    运行中环境 所以比较小心。

    以上,感谢


    TFS C#开发不动人员 这个职业不广泛

    2016年4月11日 12:05
  • 你好,

    你的analysis已经不行了,所以我想不会有什么风险。


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2016年4月12日 7:26
    版主