对常见问题进行故障诊断

升级 Solaris 上的代理程序需要运行 pkgrm 命令。

运行 pkgadd 命令前,使用 pkgrm BFAgent 命令除去现有的 Solaris BuildForge 代理程序。

7.0 通知模板的 URL 在更高版本中可能无效

单击通知电子邮件中的 URL 链接时,通知模板 URL 将打开 Build Forge 作业报告。

在 V7.0.1 和 V7.1 中,通知模板中的 URL 已更改;因此,当从 7.0 升级至更高版本时,URL 可能无效。

如果遇到链接错误,请完成这些步骤以手动编辑通知模板:
  1. 选择项目 > 模板
  2. 单击通知模板名称以在“详细信息”选项卡上显示其属性。
  3. 在“正文”字段中,找到模板的 URL。URL 应该类似于以下示例中的 URL:
    http://${CONSOLEHOST}:${CONSOLEPORT}/fullcontrol/index.php?mod=projectruns&action=
    edit&bfid=${PID}&bfid=${BID}&bfid=${UID}
  4. 将以下 URL 元素替换为相应的 7.0.1 及更高版本的 URL 元素:
    URL 元素 7.0.1(及更高版本)URL 元素
    projectruns jobs
    & &
    action=edit action=build.view
    &bfid=${PID} | &bfid=${BID} | &bfid=${UID} &bf_id=${BID}

产品无响应

如果 Rational Build Forge 无响应,请查看 <bfinstall>/Apache/tomcat/logs/(UNIX 或 Linux)或 <bfinstall>\Apache\tomcat\logs\(Windows)中的日志以获取类似如下的消息:


Services: 20075: CRRBF1381I: Established connection to Build Forge Services.
DBD::DB2::st execute failed: [IBM][CLI Driver] SQL30081N  A communication error has been detected.
   Communication protocol being used: "TCP/IP".
   Communication API being used: "SOCKETS".
   Location where the error was detected: "XXX.XXX.XXX.XXX".
   Communication function detecting the error: "recv".
   Protocol specific error code(s): "131", "*", "0".  SQLSTATE=08001
   August 17, 2010  7:18:14 AM EDT 
Database: 20075: CRRBFEEEEE: DBD::DB2::st execute failed: 
   [IBM][CLI Driver] SQL30081N  A communication error has been detected.  
   Communication protocol being used: "TCP/IP".
   Communication API being used: "SOCKETS".
   Location where the error was detected: "XXX.XXX.XXX.XXX".
   Communication function detecting the error: "recv".
   Protocol specific error code(s): "131", "*", "0".  SQLSTATE=08001

Database: 20075: CRRBF0551I: StackTrace from Process id [20075] called from [
   BuildForge::DB::db2(./PerlApp/BuildForge/DB/db2.pm:65)
   BuildForge::Utilities::SysParams(./PerlApp/BuildForge/Utilities/SysParams.pm:57)
   main(.buildforge.pl:305)
   main(.buildforge.pl:213)
]
Database: 20075: CRRBF0556I: Trying to call [execute] on a non-existant database handle
DBD::DB2::st fetchrow_hashref failed: no statement executing at /PerlApp/BuildForge/DB/db2.pm 
  line 78, <$sock> line 1054.
20075: CRRBF0555E: Problem performing Database Operation [fetchrow_hashref] : DBD::DB2::st
  fetchrow_hashref failed: no statement executing at /PerlApp/BuildForge/DB/db2.pm
  line 78, <$sock> line 1054.

Database: 20075: CRRBFEEEEE: DBD::DB2::st fetchrow_hashref failed: no statement executing
  at /PerlApp/BuildForge/DB/db2.pm line 78, <$sock> line 1054.

Database: 20075: CRRBF0551I: StackTrace from Process id [20075] called from [
   BuildForge::Utilities::SysParams(./PerlApp/BuildForge/Utilities/SysParams.pm:59)
   main(.buildforge.pl:305)
   main(.buildforge.pl:213)
]
[IBM][CLI Driver] CLI0106E  Connection is closed. SQLSTATE=08003 at /PerlApp/BuildForge/DB/Handle.pm
   line 385, <$sock> line 1054.
Database: 20075: CRRBF0555E: Problem performing Database Operation [prepare] :
   query [SELECT * FROM bf_jobcount WHERE bf_engine_id=?]
DBD::DB2::db prepare failed: [IBM][CLI Driver] CLI0106E  Connection is closed.
      SQLSTATE=08003 at /PerlApp/BuildForge/DB/Handle.pm line 385, <$sock> line 1054.

Database: 20075: CRRBFEEEEE: DBD::DB2::db prepare failed: [IBM][CLI Driver] CLI0106E  
   Connection is closed. SQLSTATE=08003 at /PerlApp/BuildForge/DB/Handle.pm
   line 385, <$sock> line 1054.

其中,XXX.XXX.XXX.XXX 是托管数据库的服务器。

该消息指示 Rational Build Forge 和数据库之间无连接。

要重新建立连接:

  1. 启动和停止引擎 中所述,关闭 Rational Build Forge。
  2. 确保数据库正在运行。
  3. 启动和停止引擎 中所述,启动 Rational Build Forge。

反馈