You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by de...@apache.org on 2017/09/12 13:26:17 UTC
svn commit: r1808113 -
/uima/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/db/DbQuery.java
Author: degenaro
Date: Tue Sep 12 13:26:17 2017
New Revision: 1808113
URL: http://svn.apache.org/viewvc?rev=1808113&view=rev
Log:
UIMA-5561 DUCC Web Server (WS) queries DB too often
Modified:
uima/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/db/DbQuery.java
Modified: uima/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/db/DbQuery.java
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/db/DbQuery.java?rev=1808113&r1=1808112&r2=1808113&view=diff
==============================================================================
--- uima/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/db/DbQuery.java (original)
+++ uima/uima-ducc/trunk/uima-ducc-web/src/main/java/org/apache/uima/ducc/ws/db/DbQuery.java Tue Sep 12 13:26:17 2017
@@ -43,11 +43,15 @@ public class DbQuery {
private static boolean enabled = true;
+ private static String component = IDuccLoggerComponents.abbrv_webServer;
+
private IRmPersistence persistence = null;
private IHistoryPersistenceManager history = null;
- private static String component = IDuccLoggerComponents.abbrv_webServer;
+ private boolean db_status = false; // false == down, true == up
+ private long db_status_age_limit = 1000*60;
+ private long db_status_tod = System.currentTimeMillis()-(db_status_age_limit+1);
static {
synchronized(DbQuery.class) {
@@ -78,7 +82,7 @@ public class DbQuery {
return enabled;
}
- public Pair<DuccWorkMap, Map<DuccId, DuccId>> getCkpt() {
+ private Pair<DuccWorkMap, Map<DuccId, DuccId>> getCkpt() {
String location = "getCkpt";
Pair<DuccWorkMap, Map<DuccId, DuccId>> retVal = new Pair<DuccWorkMap, Map<DuccId, DuccId>>();
try {
@@ -91,17 +95,26 @@ public class DbQuery {
}
public boolean isUp() {
- boolean status = false;
+ String location = "isUp";
/*
if(getMapMachines().size() > 0) {
status = true;
}
else
*/
- if(getCkpt().first() != null) {
- status = true;
- }
- return status;
+ long now = System.currentTimeMillis();
+ long elapsed = now - db_status_tod;
+ if(elapsed > db_status_age_limit) {
+ db_status_tod = now;
+ if(getCkpt().first() != null) {
+ db_status = true;
+ }
+ else {
+ db_status = false;
+ }
+ logger.debug(location, jobid, db_status);
+ }
+ return db_status;
}
public static void dumpMap(Map<String, IDbMachine> dbMachineMap) {