This is an automated email from the ASF dual-hosted git repository.
dpavlov pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite-teamcity-bot.git
The following commit(s) were added to refs/heads/master by this push:
new fd9a364 Fix bug for RunAll reported as running (newer TC versions
reports intermediate state as running for composite builds)
fd9a364 is described below
commit fd9a3642c2d408dd7473e7c674155c55d909dc4e
Author: Dmitriy Pavlov <[email protected]>
AuthorDate: Wed Sep 29 19:32:06 2021 +0300
Fix bug for RunAll reported as running (newer TC versions reports
intermediate state as running for composite builds)
---
.../src/main/java/org/apache/ignite/ci/jobs/CheckQueueJob.java | 6 +++---
.../src/main/java/org/apache/ignite/ci/web/model/Version.java | 2 +-
.../java/org/apache/ignite/tcignited/ITeamcityIgnited.java | 4 ++--
.../java/org/apache/ignite/tcignited/TeamcityIgnitedImpl.java | 10 ++++++++--
.../java/org/apache/ignite/tcignited/build/FatBuildDao.java | 3 +--
5 files changed, 15 insertions(+), 10 deletions(-)
diff --git
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jobs/CheckQueueJob.java
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jobs/CheckQueueJob.java
index 46af5f0..7d41cfd 100644
---
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jobs/CheckQueueJob.java
+++
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jobs/CheckQueueJob.java
@@ -274,7 +274,7 @@ public class CheckQueueJob implements Runnable {
String selfLogin,
ITrackedChain chain,
String agentStatus) {
- List<BuildRefCompacted> buildsForBr =
tcIgn.getQueuedBuildsCompacted(tcBranch);
+ List<BuildRefCompacted> buildsForBr =
tcIgn.getQueuedAndRunningBuildsCompacted(tcBranch);
for (BuildRefCompacted refComp : buildsForBr) {
Integer buildId = refComp.getId();
@@ -295,14 +295,14 @@ public class CheckQueueJob implements Runnable {
User user = build.getTriggered().getUser();
if (user == null) {
- logger.info("Unable to get username for queued build {}
(type={}).", buildId, build.buildTypeId);
+ logger.info("Unable to get username for queued build {}
(type={}). Possibly VCS triggered", buildId, build.buildTypeId);
continue;
}
String buildTypeIdExisting = build.buildTypeId();
if (buildTypeIdExisting == null) {
- logger.info("Unable to get buildTypeId for queued build {}
(type={}).", buildId, build.buildTypeId);
+ logger.info("Unable to get buildTypeId for queued build {}
(type={}).", buildId, build.buildTypeId);
continue;
}
diff --git
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/model/Version.java
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/model/Version.java
index 7359bec..07bb055 100644
---
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/model/Version.java
+++
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/model/Version.java
@@ -28,7 +28,7 @@ package org.apache.ignite.ci.web.model;
public static final String GITHUB_REF =
"https://github.com/apache/ignite-teamcity-bot";
/** TC Bot Version. */
- public static final String VERSION = "20190916";
+ public static final String VERSION = "20210929";
/** Java version, where Web App is running. */
public String javaVer;
diff --git
a/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/ITeamcityIgnited.java
b/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/ITeamcityIgnited.java
index 04802ae..d0dc84b 100644
---
a/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/ITeamcityIgnited.java
+++
b/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/ITeamcityIgnited.java
@@ -72,12 +72,12 @@ public interface ITeamcityIgnited {
@Nullable String branchName);
/**
- * Return queued builds for branch and suite, without relation to its
status.
+ * Return queued and running builds for branch and suite, without relation
to its status.
*
* @param branchName Branch name.
* @return list of builds in history, includes all statuses: queued,
running, etc
*/
- public List<BuildRefCompacted> getQueuedBuildsCompacted(String branchName);
+ public List<BuildRefCompacted> getQueuedAndRunningBuildsCompacted(String
branchName);
/**
* @param projectId Project id.
diff --git
a/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/TeamcityIgnitedImpl.java
b/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/TeamcityIgnitedImpl.java
index 148ef71..0eb5e69 100644
---
a/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/TeamcityIgnitedImpl.java
+++
b/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/TeamcityIgnitedImpl.java
@@ -375,7 +375,7 @@ public class TeamcityIgnitedImpl implements
ITeamcityIgnited {
/** {@inheritDoc} */
@AutoProfiling
- @Override public List<BuildRefCompacted> getQueuedBuildsCompacted(
+ @Override public List<BuildRefCompacted>
getQueuedAndRunningBuildsCompacted(
@Nullable String branchName) {
ensureActualizeRequested();
@@ -383,6 +383,10 @@ public class TeamcityIgnitedImpl implements
ITeamcityIgnited {
if (stateQueuedId == null)
return Collections.emptyList();
+ Integer stateRunningId =
compactor.getStringIdIfPresent(BuildRef.STATE_RUNNING);
+ if (stateRunningId == null)
+ return Collections.emptyList();
+
Set<Integer> branchNameIds =
branchEquivalence.branchForQuery(branchName).stream().map(str ->
compactor.getStringIdIfPresent(str))
.filter(Objects::nonNull).collect(Collectors.toSet());
@@ -394,7 +398,9 @@ public class TeamcityIgnitedImpl implements
ITeamcityIgnited {
if(builds.isEmpty())
return;
- builds.stream().filter(buildRef -> buildRef.state() ==
stateQueuedId).forEach(res::add);
+ builds.stream()
+ .filter(buildRef -> (buildRef.state() == stateQueuedId ||
buildRef.state() == stateRunningId))
+ .forEach(res::add);
});
return res;
diff --git
a/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/build/FatBuildDao.java
b/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/build/FatBuildDao.java
index 7a0c4c7..8a36f0a 100644
---
a/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/build/FatBuildDao.java
+++
b/tcbot-teamcity-ignited/src/main/java/org/apache/ignite/tcignited/build/FatBuildDao.java
@@ -234,8 +234,7 @@ public class FatBuildDao {
private static Set<Long> buildsIdsToCacheKeys(int srvId, int[] buildIds) {
HashSet<Long> set = new HashSet<>(buildIds.length);
- for (int i = 0; i < buildIds.length; i++) {
- int id = buildIds[i];
+ for (int id : buildIds) {
set.add(buildIdToCacheKey(srvId, id));
}