This is an automated email from the ASF dual-hosted git repository. dpavlov pushed a commit to branch ignite-10243 in repository https://gitbox.apache.org/repos/asf/ignite-teamcity-bot.git
The following commit(s) were added to refs/heads/ignite-10243 by this push: new 764aa05 IGNITE-10243 Removal of usage og deprecated caches 764aa05 is described below commit 764aa052f5c245fdb6764f34acfc47a0d0000d5a Author: Dmitriy Pavlov <dpav...@apache.org> AuthorDate: Thu Nov 15 17:23:54 2018 +0300 IGNITE-10243 Removal of usage og deprecated caches --- .../main/java/org/apache/ignite/ci/ITeamcity.java | 23 ---- .../apache/ignite/ci/IgnitePersistentTeamcity.java | 127 +-------------------- .../apache/ignite/ci/IgniteTeamcityConnection.java | 18 --- .../java/org/apache/ignite/ci/db/DbMigrations.java | 10 +- .../ignite/ci/tcbot/chain/BuildChainProcessor.java | 4 +- .../tcbot/chain/TrackedBranchChainsProcessor.java | 11 +- 6 files changed, 13 insertions(+), 180 deletions(-) diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/ITeamcity.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/ITeamcity.java index 59f8e82..f6e8949 100644 --- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/ITeamcity.java +++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/ITeamcity.java @@ -60,17 +60,6 @@ public interface ITeamcity extends ITeamcityConn { CompletableFuture<List<BuildType>> getProjectSuites(String projectId); /** - * @param projectId suite ID (string without spaces). - * @param branch Branch name in TC identification. - * @param sinceDate Since date. - * @param untilDate Until date. - * @param sinceBuildId Some build ID in the past to to use as minimal build to export. - * @return list of builds in historical order, recent builds coming last. - */ - @Deprecated - List<BuildRef> getFinishedBuilds(String projectId, String branch, Date sinceDate, Date untilDate, Integer sinceBuildId); - - /** * Includes snapshot dependencies failed builds into list. * * @param projectId suite ID (string without spaces). @@ -98,18 +87,6 @@ public interface ITeamcity extends ITeamcityConn { @Deprecated CompletableFuture<List<BuildRef>> getQueuedBuilds(@Nullable String branch); - /** - * @param projectId Suite ID (string without spaces). - * @param branchNameForHist Branch in TC identification. - * @param sinceDate Since date. - * @param untilDate Until date. - * @return List of build numbers in historical order in date interval, recent builds coming last. - */ - @Deprecated - default int[] getBuildNumbersFromHistory(String projectId, String branchNameForHist, Date sinceDate, Date untilDate) { - return getFinishedBuilds(projectId, branchNameForHist, sinceDate, untilDate, null).stream().mapToInt(BuildRef::getId).toArray(); - } - @Deprecated Build getBuild(String href); diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/IgnitePersistentTeamcity.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/IgnitePersistentTeamcity.java index e9befbe..0222d95 100644 --- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/IgnitePersistentTeamcity.java +++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/IgnitePersistentTeamcity.java @@ -36,12 +36,10 @@ import java.util.concurrent.Executor; import java.util.concurrent.ExecutorService; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; -import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.locks.Lock; import java.util.function.BiFunction; import java.util.function.Function; import java.util.function.Predicate; -import java.util.stream.Collectors; import java.util.stream.Stream; import java.util.stream.StreamSupport; import javax.annotation.Nullable; @@ -83,7 +81,6 @@ import org.apache.ignite.ci.util.CollectionUtil; import org.apache.ignite.ci.util.ObjectInterner; import org.apache.ignite.ci.web.rest.parms.FullQueryParams; import org.jetbrains.annotations.NotNull; -import org.xml.sax.SAXParseException; import static org.apache.ignite.ci.tcbot.chain.BuildChainProcessor.normalizeBranch; @@ -105,7 +102,7 @@ public class IgnitePersistentTeamcity implements IAnalyticsEnabledTeamcity, ITea @Deprecated private static final String TEST_FULL = "testFull"; private static final String BUILD_PROBLEMS = "buildProblems"; - private static final String BUILD_HIST_FINISHED = "buildHistFinished"; + private static final String BUILD_HIST_FINISHED_OR_FAILED = "buildHistFinishedOrFailed"; public static final String BOT_DETECTED_ISSUES = "botDetectedIssues"; public static final String TEST_REFS = "testRefs"; @@ -163,7 +160,6 @@ public class IgnitePersistentTeamcity implements IAnalyticsEnabledTeamcity, ITea buildsFailureRunStatCache(), testRunStatCache(), testFullCache(), buildProblemsCache(), - buildHistCache(), buildHistIncFailedCache()); } @@ -245,15 +241,6 @@ public class IgnitePersistentTeamcity implements IAnalyticsEnabledTeamcity, ITea return getOrCreateCacheV2(ignCacheNme(BUILD_PROBLEMS)); } - - - /** - * @return Build history: {@link BuildRef} lists cache, 32 parts, transactional. - */ - private IgniteCache<SuiteInBranch, Expirable<List<BuildRef>>> buildHistCache() { - return getOrCreateCacheV2Tx(ignCacheNme(BUILD_HIST_FINISHED)); - } - /** * @return Build history: {@link BuildRef} lists cache, 32 parts, transactional. */ @@ -411,118 +398,6 @@ public class IgnitePersistentTeamcity implements IAnalyticsEnabledTeamcity, ITea return lock; } - /** {@inheritDoc} */ - @AutoProfiling - @Override public List<BuildRef> getFinishedBuilds(String projectId, - String branch, - Date sinceDate, - Date untilDate, - Integer ignored) { - final SuiteInBranch suiteInBranch = new SuiteInBranch(projectId, branch); - - final List<BuildRef> buildsFromRest = new ArrayList<>(); - - List<BuildRef> buildRefs = loadBuildHistory(buildHistCache(), 90, suiteInBranch, - (key, sinceBuildId) -> { - List<BuildRef> reverseList = teamcity.getFinishedBuilds(projectId, branch, sinceDate, untilDate, sinceBuildId); - - Collections.reverse(reverseList); - - buildsFromRest.addAll(reverseList); - - return buildsFromRest; - }); - - if (sinceDate != null || untilDate != null) { - if (!buildsFromRest.isEmpty() && sinceDate != null){ - int firstBuildId = buildRefs.indexOf(buildsFromRest.get(0)); - - if (firstBuildId == 0) - return buildsFromRest; - - int prevFirstBuildId = firstBuildId - 1; - - Build prevFirstBuild = getBuild((buildRefs.get(prevFirstBuildId).href)); - - if (prevFirstBuild != null - && !prevFirstBuild.isFakeStub() - && prevFirstBuild.getStartDate().before(sinceDate)) - return buildsFromRest; - } - - int idSince = 0; - int idUntil = buildRefs.size() - 1; - - if (sinceDate != null) { - idSince = binarySearchDate(buildRefs, 0, buildRefs.size(), sinceDate, true); - idSince = idSince == -2 ? 0 : idSince; - } - - if (untilDate != null) { - idUntil = idSince < 0 ? -1 : binarySearchDate(buildRefs, idSince, buildRefs.size(), untilDate, false); - idUntil = idUntil == -2 ? buildRefs.size() - 1 : idUntil; - } - - if (idSince == -3 || idUntil == -3) { - AtomicBoolean stopFilter = new AtomicBoolean(); - AtomicBoolean addBuild = new AtomicBoolean(); - - return buildRefs.stream() - .filter(b -> { - if (stopFilter.get()) - return addBuild.get(); - - Build build = getBuild(b.href); - - if (build == null || build.isFakeStub()) - return false; - - Date date = build.getStartDate(); - - if (sinceDate != null && untilDate != null) - if ((date.after(sinceDate) || date.equals(sinceDate)) && - (date.before(untilDate) || date.equals(untilDate))) - return true; - else { - if (date.after(untilDate)) { - stopFilter.set(true); - addBuild.set(false); - } - - return false; - } - else if (sinceDate != null) { - if (date.after(sinceDate) || date.equals(sinceDate)) { - stopFilter.set(true); - addBuild.set(true); - - return true; - } - - return false; - } - else { - if (date.after(untilDate)) { - stopFilter.set(true); - addBuild.set(false); - - return false; - } - - return true; - } - }) - .collect(Collectors.toList()); - } - else if (idSince == -1 || idUntil == -1) - return Collections.emptyList(); - else - return buildRefs.subList(idSince, idUntil + 1); - } - - return buildRefs; - } - /** * @param buildRefs Build refs list. * @param fromIdx From index. diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/IgniteTeamcityConnection.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/IgniteTeamcityConnection.java index 7177654..4f93e28 100644 --- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/IgniteTeamcityConnection.java +++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/IgniteTeamcityConnection.java @@ -522,24 +522,6 @@ public class IgniteTeamcityConnection implements ITeamcity { /** {@inheritDoc} */ @AutoProfiling - @Override public List<BuildRef> getFinishedBuilds(String projectId, - String branch, - Date sinceDate, - Date untilDate, - @Nullable Integer sinceBuildId) { - List<BuildRef> finished = getBuildHistory(projectId, - UrlUtil.escape(branch), - true, - null, - sinceDate, - untilDate, - sinceBuildId); - - return finished.stream().filter(BuildRef::isNotCancelled).collect(Collectors.toList()); - } - - /** {@inheritDoc} */ - @AutoProfiling @Override public List<BuildRef> getFinishedBuildsIncludeSnDepFailed(String projectId, String branch) { return getBuildsInState(projectId, branch, BuildRef.STATE_FINISHED, null); } diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/db/DbMigrations.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/db/DbMigrations.java index fd5865f..f86a8eb 100644 --- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/db/DbMigrations.java +++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/db/DbMigrations.java @@ -92,6 +92,9 @@ public class DbMigrations { @Deprecated public static final String ISSUES = "issues"; + @Deprecated + private static final String BUILD_HIST_FINISHED = "buildHistFinished"; + /** Cache name */ public static final String TEAMCITY_BUILD_CACHE_NAME_OLD = "teamcityBuild"; @@ -123,7 +126,6 @@ public class DbMigrations { IgniteCache<TestInBranch, RunStat> testHistCache, Cache<String, TestOccurrenceFull> testFullCache, Cache<String, ProblemOccurrences> problemsCache, - Cache<SuiteInBranch, Expirable<List<BuildRef>>> buildHistCache, Cache<SuiteInBranch, Expirable<List<BuildRef>>> buildHistInFailedCache) { doneMigrations = doneMigrationsCache(); @@ -352,7 +354,8 @@ public class DbMigrations { } }); applyV1toV2Migration(PROBLEMS, problemsCache); - applyV1toV2Migration(FINISHED_BUILDS, buildHistCache); + + applyV1toV2Migration(FINISHED_BUILDS_INCLUDE_FAILED, buildHistInFailedCache); Cache<IssueKey, Issue> issuesCache = IssuesStorage.botDetectedIssuesCache(ignite); @@ -418,6 +421,9 @@ public class DbMigrations { applyDestroyIgnCacheMigration(CHANGE_INFO_FULL); applyDestroyIgnCacheMigration(CHANGES_LIST); + + applyDestroyIgnCacheMigration(FINISHED_BUILDS); + applyDestroyIgnCacheMigration(BUILD_HIST_FINISHED); } private void applyDestroyIgnCacheMigration(String cacheName) { diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/BuildChainProcessor.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/BuildChainProcessor.java index 24778e9..81bfbfc 100644 --- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/BuildChainProcessor.java +++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/BuildChainProcessor.java @@ -82,7 +82,7 @@ public class BuildChainProcessor { */ public List<SuiteLRTestsSummary> loadLongRunningTestsSummary( ITeamcityIgnited teamcityIgnited, - Collection<BuildRef> entryPoints + Collection<Integer> entryPoints ) { final List<SuiteLRTestsSummary> res = new ArrayList<>(); @@ -91,7 +91,7 @@ public class BuildChainProcessor { Map<Integer, FatBuildCompacted> builds = new ConcurrentHashMap<>(); - final Stream<FatBuildCompacted> entryPointsFatBuilds = entryPoints.stream().map(BuildRef::getId) + final Stream<FatBuildCompacted> entryPointsFatBuilds = entryPoints.stream() .filter(Objects::nonNull) .filter(id -> !builds.containsKey(id)) //load and propagate only new entry points .map(id -> builds.computeIfAbsent(id, teamcityIgnited::getFatBuild)); diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchChainsProcessor.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchChainsProcessor.java index 386d227..5096e31 100644 --- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchChainsProcessor.java +++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchChainsProcessor.java @@ -147,17 +147,10 @@ public class TrackedBranchChainsProcessor { ITeamcityIgnited tcIgnited = tcIgnitedProv.server(srvId, creds); - final List<BuildRef> buildsList = teamcity.getFinishedBuildsIncludeSnDepFailed( - chainTracked.getSuiteIdMandatory(), - branchForTc); - List<BuildRef> chains = buildsList.stream() - .filter(ref -> !ref.isFakeStub()) - .sorted(Comparator.comparing(BuildRef::getId).reversed()) - .limit(1) - .filter(b -> b.getId() != null).collect(Collectors.toList()); + List<Integer> history = tcIgnited.getLastNBuildsFromHistory(chainTracked.getSuiteIdMandatory(), branchForTc, 1); - return chainProc.loadLongRunningTestsSummary(tcIgnited, chains); + return chainProc.loadLongRunningTestsSummary(tcIgnited, history); }) .forEach(summary::addSuiteSummaries);