You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by dp...@apache.org on 2019/01/25 17:45:47 UTC
[ignite-teamcity-bot] 01/01: IGNITE-10989 Removing in-memory caches
for data presented in new TcIgnited DB.
This is an automated email from the ASF dual-hosted git repository.
dpavlov pushed a commit to branch ignite-10989-2
in repository https://gitbox.apache.org/repos/asf/ignite-teamcity-bot.git
commit b3109423a12b6b5a4cea2c64e901392e0ccfb9ef
Author: Dmitriy Pavlov <dp...@apache.org>
AuthorDate: Fri Jan 25 20:45:42 2019 +0300
IGNITE-10989 Removing in-memory caches for data presented in new TcIgnited DB.
---
.../java/org/apache/ignite/ci/db/DbMigrations.java | 13 -----
.../tcbot/chain/TrackedBranchChainsProcessor.java | 8 ++--
.../ignite/ci/tcbot/issue/IssueDetector.java | 11 +++--
.../apache/ignite/ci/web/IBackgroundUpdatable.java | 1 +
.../rest/tracked/GetTrackedBranchTestResults.java | 39 +++++++--------
ignite-tc-helper-web/src/main/webapp/current.html | 55 +++++++++++++---------
ignite-tc-helper-web/src/main/webapp/pr.html | 6 +++
.../ci/tcbot/chain/TrackedBranchProcessorTest.java | 3 +-
8 files changed, 69 insertions(+), 67 deletions(-)
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 d0cd305..ec6d4db 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
@@ -207,24 +207,11 @@ public class DbMigrations {
applyRemoveCache(GetTrackedBranchTestResults.ALL_TEST_FAILURES_SUMMARY);
- applyRemoveCache(GetTrackedBranchTestResults.TEST_FAILURES_SUMMARY_CACHE_NAME);
applyRemoveCache(GetBuildTestFailures.TEST_FAILURES_SUMMARY_CACHE_NAME);
applyRemoveCache(Old.CURRENT_PR_FAILURES);
applyDestroyIgnCacheMigration(TEST_OCCURRENCE_FULL);
- /*
- int size = oldTestCache.size();
- if (size > 0) {
- ignite.cluster().disableWal(testFullCache.getName());
- try {
- oldTestCache.destroy();
- }
- finally {
- ignite.cluster().enableWal(testFullCache.getName());
- }
- }
- });*/
applyDestroyIgnCacheMigration(PROBLEMS);
applyDestroyIgnCacheMigration(FINISHED_BUILDS_INCLUDE_FAILED);
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 2f8ba13..4dd5f04 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
@@ -64,14 +64,16 @@ public class TrackedBranchChainsProcessor {
@Nullable String branch,
@Nullable Boolean checkAllLogs,
int buildResMergeCnt,
- ICredentialsProv creds) {
+ ICredentialsProv creds,
+ SyncMode syncMode) {
final TestFailuresSummary res = new TestFailuresSummary();
final AtomicInteger runningUpdates = new AtomicInteger();
final String branchNn = isNullOrEmpty(branch) ? FullQueryParams.DEFAULT_TRACKED_BRANCH_NAME : branch;
- final BranchTracked tracked = tcBotConfig.getTrackedBranches().getBranchMandatory(branchNn);
res.setTrackedBranch(branchNn);
+ final BranchTracked tracked = tcBotConfig.getTrackedBranches().getBranchMandatory(branchNn);
+
tracked.chains.stream()
.filter(chainTracked -> creds.hasAccess(chainTracked.serverId))
.map(chainTracked -> {
@@ -111,7 +113,7 @@ public class TrackedBranchChainsProcessor {
logs,
includeScheduled,
baseBranchTc,
- SyncMode.RELOAD_QUEUED
+ syncMode
);
int cnt = (int)ctx.getRunningUpdates().count();
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/issue/IssueDetector.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/issue/IssueDetector.java
index 238df87..7ea2c63 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/issue/IssueDetector.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/issue/IssueDetector.java
@@ -34,7 +34,6 @@ import java.util.concurrent.atomic.AtomicInteger;
import javax.inject.Inject;
import javax.inject.Provider;
import org.apache.ignite.ci.HelperConfig;
-import org.apache.ignite.ci.IAnalyticsEnabledTeamcity;
import org.apache.ignite.ci.analysis.SuiteInBranch;
import org.apache.ignite.ci.analysis.TestInBranch;
import org.apache.ignite.ci.di.AutoProfiling;
@@ -53,9 +52,9 @@ import org.apache.ignite.ci.teamcity.ignited.IRunHistory;
import org.apache.ignite.ci.teamcity.ignited.IStringCompactor;
import org.apache.ignite.ci.teamcity.ignited.ITeamcityIgnited;
import org.apache.ignite.ci.teamcity.ignited.ITeamcityIgnitedProvider;
+import org.apache.ignite.ci.teamcity.ignited.SyncMode;
import org.apache.ignite.ci.teamcity.ignited.change.ChangeCompacted;
import org.apache.ignite.ci.teamcity.ignited.fatbuild.FatBuildCompacted;
-import org.apache.ignite.ci.teamcity.restcached.ITcServerProvider;
import org.apache.ignite.ci.user.ICredentialsProv;
import org.apache.ignite.ci.user.TcHelperUser;
import org.apache.ignite.ci.web.model.current.ChainAtServerCurrentStatus;
@@ -437,17 +436,19 @@ public class IssueDetector {
ICredentialsProv creds = Preconditions.checkNotNull(backgroundOpsCreds, "Server should be authorized");
- TestFailuresSummary allHist = tbProc.getTrackedBranchTestFailures(
+ tbProc.getTrackedBranchTestFailures(
brachName,
false,
buildsToQry,
- creds);
+ creds,
+ SyncMode.RELOAD_QUEUED);
TestFailuresSummary failures =
tbProc.getTrackedBranchTestFailures(brachName,
false,
1,
- creds
+ creds,
+ SyncMode.RELOAD_QUEUED
);
String issResult = registerIssuesAndNotifyLater(failures, backgroundOpsCreds);
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/IBackgroundUpdatable.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/IBackgroundUpdatable.java
index 75aeba0..30955db 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/IBackgroundUpdatable.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/IBackgroundUpdatable.java
@@ -20,6 +20,7 @@ package org.apache.ignite.ci.web;
/**
*
*/
+@Deprecated
public interface IBackgroundUpdatable {
/**
* Sets flag indicating if update required from HTML interface, new results will be prepared by updater soon
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/tracked/GetTrackedBranchTestResults.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/tracked/GetTrackedBranchTestResults.java
index c737741..406a8b5 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/tracked/GetTrackedBranchTestResults.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/tracked/GetTrackedBranchTestResults.java
@@ -17,11 +17,13 @@
package org.apache.ignite.ci.web.rest.tracked;
+import com.google.inject.Injector;
import java.util.Set;
import org.apache.ignite.ci.tcbot.conf.ITcBotConfig;
import org.apache.ignite.ci.tcmodel.mute.MuteInfo;
import org.apache.ignite.ci.tcbot.chain.TrackedBranchChainsProcessor;
import org.apache.ignite.ci.tcbot.visa.TcBotTriggerAndSignOffService;
+import org.apache.ignite.ci.teamcity.ignited.SyncMode;
import org.apache.ignite.ci.user.ICredentialsProv;
import org.apache.ignite.ci.web.BackgroundUpdater;
import org.apache.ignite.ci.web.CtxListener;
@@ -49,7 +51,6 @@ import static org.apache.ignite.ci.tcbot.conf.ITcBotConfig.DEFAULT_SERVER_ID;
@Produces(MediaType.APPLICATION_JSON)
public class GetTrackedBranchTestResults {
public static final String TRACKED = "tracked";
- public static final String TEST_FAILURES_SUMMARY_CACHE_NAME = "currentTestFailuresSummary";
public static final String ALL_TEST_FAILURES_SUMMARY = "AllTestFailuresSummary";
/** Servlet Context. */
@@ -64,7 +65,7 @@ public class GetTrackedBranchTestResults {
@Path("updates")
public UpdateInfo getTestFailsUpdates(@Nullable @QueryParam("branch") String branchOrNull,
@Nullable @QueryParam("checkAllLogs") Boolean checkAllLogs) {
- return new UpdateInfo().copyFrom(getTestFails(branchOrNull, checkAllLogs));
+ return new UpdateInfo().copyFrom(getTestFailsResultsNoSync(branchOrNull, checkAllLogs));
}
@GET
@@ -72,39 +73,34 @@ public class GetTrackedBranchTestResults {
@Produces(MediaType.TEXT_PLAIN)
public String getTestFailsText(@Nullable @QueryParam("branch") String branchOrNull,
@Nullable @QueryParam("checkAllLogs") Boolean checkAllLogs) {
- return getTestFails(branchOrNull, checkAllLogs).toString();
+ return getTestFailsResultsNoSync(branchOrNull, checkAllLogs).toString();
}
@GET
- @Path("results")
- public TestFailuresSummary getTestFails(
- @Nullable @QueryParam("branch") String branchOrNull,
+ @Path("resultsNoSync")
+ public TestFailuresSummary getTestFailsResultsNoSync(
+ @Nullable @QueryParam("branch") String branch,
@Nullable @QueryParam("checkAllLogs") Boolean checkAllLogs) {
+ ICredentialsProv creds = ICredentialsProv.get(req);
- final BackgroundUpdater updater = CtxListener.getBackgroundUpdater(ctx);
-
- FullQueryParams param = new FullQueryParams();
- param.setBranch(branchOrNull);
- param.setCheckAllLogs(checkAllLogs);
+ Injector injector = CtxListener.getInjector(ctx);
- return updater.get(TEST_FAILURES_SUMMARY_CACHE_NAME, ICredentialsProv.get(req), param,
- (k) -> getTestFailsNoCache(k.getBranch(), k.getCheckAllLogs()), true
- );
+ return injector.getInstance(TrackedBranchChainsProcessor.class)
+ .getTrackedBranchTestFailures(branch, checkAllLogs, 1, creds, SyncMode.NONE);
}
@GET
- @Path("resultsNoCache")
+ @Path("results")
@NotNull
public TestFailuresSummary getTestFailsNoCache(
@Nullable @QueryParam("branch") String branch,
@Nullable @QueryParam("checkAllLogs") Boolean checkAllLogs) {
+ ICredentialsProv creds = ICredentialsProv.get(req);
- final ICredentialsProv creds = ICredentialsProv.get(req);
+ Injector injector = CtxListener.getInjector(ctx);
- final TrackedBranchChainsProcessor tbProc = CtxListener.getInjector(ctx).getInstance(TrackedBranchChainsProcessor.class);
-
- return tbProc.getTrackedBranchTestFailures(branch, checkAllLogs, 1, creds
- );
+ return injector.getInstance(TrackedBranchChainsProcessor.class)
+ .getTrackedBranchTestFailures(branch, checkAllLogs, 1, creds, SyncMode.RELOAD_QUEUED);
}
@GET
@@ -112,7 +108,6 @@ public class GetTrackedBranchTestResults {
public UpdateInfo getAllTestFailsUpdates(@Nullable @QueryParam("branch") String branchOrNull,
@Nullable @QueryParam("count") Integer cnt,
@Nullable @QueryParam("checkAllLogs") Boolean checkAllLogs) {
-
return new UpdateInfo().copyFrom(getAllTestFails(branchOrNull, cnt, checkAllLogs));
}
@@ -147,7 +142,7 @@ public class GetTrackedBranchTestResults {
int cntLimit = cnt == null ? FullQueryParams.DEFAULT_COUNT : cnt;
final TrackedBranchChainsProcessor tbProc = CtxListener.getInjector(ctx).getInstance(TrackedBranchChainsProcessor.class);
- return tbProc.getTrackedBranchTestFailures(branchOpt, checkAllLogs, cntLimit, creds);
+ return tbProc.getTrackedBranchTestFailures(branchOpt, checkAllLogs, cntLimit, creds, SyncMode.RELOAD_QUEUED);
}
/**
diff --git a/ignite-tc-helper-web/src/main/webapp/current.html b/ignite-tc-helper-web/src/main/webapp/current.html
index 6d454c8..6989400 100644
--- a/ignite-tc-helper-web/src/main/webapp/current.html
+++ b/ignite-tc-helper-web/src/main/webapp/current.html
@@ -16,7 +16,6 @@
<body>
<script>
var g_shownDataHashCodeHex = "";
-var g_updTimer = null;
$(document).ready(function() {
$.getScript("js/testfails-2.1.js", function(data, textStatus, jqxhr){ });
@@ -26,30 +25,8 @@ $(document).ready(function() {
//todo fix setInterval( function() { checkForUpdate(); }, 30000);
$.ajax({ url: "rest/branches/version", success: showVersionInfo, error: showErrInLoadStatus });
-
- if (g_updTimer == null) {
- g_updTimer = setTimeout(tstTimeout, 3200);
- }
- setInterval(tstTimeout, 10000);
});
-function tstTimeout() {
-
- if (g_updTimer != null) {
- clearTimeout(g_updTimer);
- g_updTimer = null;
- }
-
- var d = new Date();
- var n = d.getTime();
-
- // $(document.body).prepend("timeout at "+n+"<br>");
-
- if (g_updTimer == null) {
- g_updTimer = setTimeout(tstTimeout, 3200);
- }
-}
-
function parmsForRest() {
var curReqParms = "";
var branch = findGetParameter("branch");
@@ -95,6 +72,7 @@ function loadData() {
var curFailuresUrl = "rest/tracked/results" + parmsForRest();
$("#loadStatus").html("<img src='https://www.wallies.com/filebin/images/loading_apple.gif' width=20px height=20px> Please wait");
+ setTimeout(loadPartialData, 3000);
$.ajax({
url: curFailuresUrl,
success: function(result) {
@@ -112,6 +90,37 @@ function loadData() {
});
}
+function loadPartialData() {
+ var curFailuresUrl = "rest/tracked/resultsNoSync" + parmsForRest();
+
+ if (g_shownDataHashCodeHex !== "") {
+ return;
+ }
+ $.ajax({
+ url: curFailuresUrl,
+ success: function (result) {
+ if (g_shownDataHashCodeHex !== "") {
+ return;
+ }
+
+ var validResult = true;
+ for (var i = 0; i < result.servers.length; i++) {
+ var server = result.servers[i];
+
+ if (isDefinedAndFilled(server.buildNotFound) && server.buildNotFound) {
+ validResult = false;
+ break;
+ }
+ }
+ if (validResult)
+ showData(result);
+
+ setTimeout(loadPartialData, 3000);
+ },
+ error: showErrInLoadStatus
+ });
+}
+
function showData(result) {
//var txtUrl = "rest/tracked/results/txt" + parmsForRest();
diff --git a/ignite-tc-helper-web/src/main/webapp/pr.html b/ignite-tc-helper-web/src/main/webapp/pr.html
index f8d0056..99a1220 100644
--- a/ignite-tc-helper-web/src/main/webapp/pr.html
+++ b/ignite-tc-helper-web/src/main/webapp/pr.html
@@ -58,6 +58,12 @@ function parmsForRest() {
if(baseBranchForTc != null) {
curReqParms += "&baseBranchForTc=" + baseBranchForTc;
}
+
+ var checkAllLogs = findGetParameter("checkAllLogs");
+ if (checkAllLogs != null) {
+ curReqParms += "&checkAllLogs=" + checkAllLogs;
+ }
+
return curReqParms;
}
diff --git a/ignite-tc-helper-web/src/test/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchProcessorTest.java b/ignite-tc-helper-web/src/test/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchProcessorTest.java
index 0035621..3164e7d 100644
--- a/ignite-tc-helper-web/src/test/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchProcessorTest.java
+++ b/ignite-tc-helper-web/src/test/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchProcessorTest.java
@@ -31,6 +31,7 @@ import org.apache.ignite.ci.conf.BranchesTracked;
import org.apache.ignite.ci.conf.ChainAtServerTracked;
import org.apache.ignite.ci.teamcity.ignited.IStringCompactor;
import org.apache.ignite.ci.teamcity.ignited.ITeamcityIgnitedProvider;
+import org.apache.ignite.ci.teamcity.ignited.SyncMode;
import org.apache.ignite.ci.teamcity.ignited.TeamcityIgnitedProviderMock;
import org.apache.ignite.ci.teamcity.ignited.fatbuild.FatBuildCompacted;
import org.apache.ignite.ci.user.ICredentialsProv;
@@ -116,7 +117,7 @@ public class TrackedBranchProcessorTest {
TestFailuresSummary failures = tbProc.getTrackedBranchTestFailures(BRACH_NAME,
false,
1,
- mock
+ mock, SyncMode.RELOAD_QUEUED
);
Gson gson = new GsonBuilder().setPrettyPrinting().create();