如何在Apache JIRA中搜索issue

经常会遇到这样的问题:

  • 某个功能在哪个Impala版本开始有?具体细节是什么?
  • 某个bug在哪个Impala版本开始出现/修复?
  • 遇到某个报错,是否是已知问题?

这些当然可以直接google,但也可以在Apache JIRA中搜索,结果会更精准。

操作步骤

打开网址:https://issues.apache.org/jira 或者任何一个已有issue的链接。
点击左上角的 Issues -> Search for issues
如何在Apache JIRA中搜索issue_第1张图片
然后会出来一个Search框,在Project选上对应的项目(如Impala),在Type上限定类型(如New Feature,也可不选),最后在搜索框打上关键字,按Search即可:
如何在Apache JIRA中搜索issue_第2张图片
找到后就好好看description和comments,看是否是要找的issue,有需要可以借助google翻译。

Tips

1. 关于版本

对于Impala的issue,一般会有 "Affects Version/s“ 和 "Fix Version/s”,记录哪个版本开始有这个bug或需求,以及哪个版本开始修好这个bug或需求。

一般最关心的是Fix Version/s,如果这个没有填,则需要看下具体的commit是哪个commit开始有的。这个我们在后面再介绍。

2. 关于Epic

有些功能比较大,就不是以 “New Feature” 这种类型来建的,而是 “Epic”,这种需要你注册个账号,否则看不到Epic下的issue,比如这样:
如何在Apache JIRA中搜索issue_第3张图片
这时需要登陆(或注册),然后就能看到了:
如何在Apache JIRA中搜索issue_第4张图片

3. 关于sub-task

有些功能也会以创建sub-task的方式来分解,相比Epic来说,sub-task更适合于工作量中等的功能,因为sub-task无法再指定类型(如Bug、New feature、Improvement)。如果你的开发周期比较长,可能前面的代码引入了Bug,这时再建个新的sub-task来修,就没法标记这是个Bug了。

比如 Impala 支持 GROUP BY ROLLUP, CUBE 和 GROUPING SETS 这个功能就是拆成sub-task来做的:https://issues.apache.org/jira/browse/IMPALA-7204
如何在Apache JIRA中搜索issue_第5张图片
这里可以看到有个子功能没有做,借此可以知道这个工作的进展。

4. 关注某个功能开发或Bug修复的进展

如果找到的issue还没有解决,可以点一下右侧的 “Start watching this issue” 按钮,这样有新的改动或comment时会发通知到你的邮箱,第一时间知道进展。
如何在Apache JIRA中搜索issue_第6张图片
在其上还有个 “Vote for this issue“ 的按钮,可以为issue投票增加其重要程度。社区维护者可能会根据vote数来调整优先级。

5. 找到patch

对于Impala的issue,如果它已经被解决了,可以在comment里找到对应的patch。比如这个issue:https://issues.apache.org/jira/browse/IMPALA-9897
如何在Apache JIRA中搜索issue_第7张图片
里面可以找到 Reviewed-on: http://gerrit.cloudera.org:8080/16112
这是Gerrit上做Code Review的链接,在这里可以方便地下载patch。点击链接后进入Gerrit,里面有个Download按钮可以用各种方式获得patch:
如何在Apache JIRA中搜索issue_第8张图片
在旧版Gerrit UI里,Download按钮在右上角。在新版Gerrit UI里,Download按钮在commit message下方。在页面的右下角可以切换使用New UI还是Old UI。

有这些链接后就方便打patch了,比如要在你的本地分支打上patch,可以复制Cherry Pick这个指令,在本地git repo里执行就行了。另外,如果这只是一个sub-task的commit,你还需要按提交顺序打上其它sub-task的commit,才能得到完整的功能。

6. 找到commit对应的版本

在comment里不光有Gerrit的Code Review链接,第一行还有commit id。用这个commit id能直接在github repo里找到对应的commit。我一般是直接改URL:
如何在Apache JIRA中搜索issue_第9张图片
如上图,URL https://github.com/apache/impala/commit/ 后面接 commit id,就是这个commit的URL: https://github.com/apache/impala/commit/257fa0c68bb4e64880a64844d8d4023c54645230
在commit message下面能找到对应的branch,从而得知哪个版本开始有了这个更改。

7. 一个功能或bug的具体细节

这些在JIRA的description和comments里,以及Gerrit Code Review里的讨论和commit message里,都值得细读。

有任何问题,欢迎参与社区讨论,参见《如何参与Impala社区的讨论》。

你可能感兴趣的:(Impala,apache,impala,jira,开发工具)