[accumulo] 01/02: ACCUMULO-4731 Improved handling of key load failure (#315)

2018-01-19 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/accumulo.git

commit 518c1093de504de77e237b8fdaca28067ce17174
Author: Nick Felts <31989480+pirc...@users.noreply.github.com>
AuthorDate: Fri Jan 19 19:09:50 2018 -0500

ACCUMULO-4731 Improved handling of key load failure (#315)

CachingHDFSSecretKeyEncryptionStrategy will now throw an exception of a key 
encryption key cannot be loaded from file.
The key encryption key file size is checked to verify the key length is 
correct.
Sample key encryption key files were added for a unit test.
---
 .../CachingHDFSSecretKeyEncryptionStrategy.java| 29 +++--
 .../crypto/SecretKeyEncryptionStrategy.java|  4 +-
 .../accumulo/core/security/crypto/CryptoTest.java  | 73 +-
 3 files changed, 99 insertions(+), 7 deletions(-)

diff --git 
a/core/src/main/java/org/apache/accumulo/core/security/crypto/CachingHDFSSecretKeyEncryptionStrategy.java
 
b/core/src/main/java/org/apache/accumulo/core/security/crypto/CachingHDFSSecretKeyEncryptionStrategy.java
index 1fa659a..58f1010 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/security/crypto/CachingHDFSSecretKeyEncryptionStrategy.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/security/crypto/CachingHDFSSecretKeyEncryptionStrategy.java
@@ -18,6 +18,7 @@ package org.apache.accumulo.core.security.crypto;
 
 import java.io.DataInputStream;
 import java.io.DataOutputStream;
+import java.io.EOFException;
 import java.io.IOException;
 import java.security.InvalidKeyException;
 import java.security.Key;
@@ -45,13 +46,13 @@ public class CachingHDFSSecretKeyEncryptionStrategy 
implements SecretKeyEncrypti
   private SecretKeyCache secretKeyCache = new SecretKeyCache();
 
   @Override
-  public CryptoModuleParameters encryptSecretKey(CryptoModuleParameters 
context) {
+  public CryptoModuleParameters encryptSecretKey(CryptoModuleParameters 
context) throws IOException {
 try {
   secretKeyCache.ensureSecretKeyCacheInitialized(context);
   doKeyEncryptionOperation(Cipher.WRAP_MODE, context);
 } catch (IOException e) {
   log.error("{}", e.getMessage(), e);
-  throw new RuntimeException(e);
+  throw new IOException(e);
 }
 return context;
   }
@@ -128,11 +129,14 @@ public class CachingHDFSSecretKeyEncryptionStrategy 
implements SecretKeyEncrypti
 pathToKeyName = 
Property.CRYPTO_DEFAULT_KEY_STRATEGY_KEY_LOCATION.getDefaultValue();
   }
 
-  // TODO ACCUMULO-2530 Ensure volumes a properly supported
+  // TODO ACCUMULO-2530 Ensure volumes are properly supported
   Path pathToKey = new Path(pathToKeyName);
   FileSystem fs = FileSystem.get(CachedConfiguration.getInstance());
 
   DataInputStream in = null;
+  boolean invalidFile = false;
+  int keyEncryptionKeyLength = 0;
+
   try {
 if (!fs.exists(pathToKey)) {
   initializeKeyEncryptionKey(fs, pathToKey, context);
@@ -140,14 +144,29 @@ public class CachingHDFSSecretKeyEncryptionStrategy 
implements SecretKeyEncrypti
 
 in = fs.open(pathToKey);
 
-int keyEncryptionKeyLength = in.readInt();
+keyEncryptionKeyLength = in.readInt();
+// If the file length does not correctly relate to the expected key 
size, there is an inconsistency and
+// we have no way of knowing the correct key length.
+// The keyEncryptionKeyLength+4 accounts for the integer read from the 
file.
+if (fs.getFileStatus(pathToKey).getLen() != keyEncryptionKeyLength + 
4) {
+  invalidFile = true;
+   // Passing this exception forward so we can provide the more useful 
error message
+  throw new IOException();
+}
 keyEncryptionKey = new byte[keyEncryptionKeyLength];
 in.readFully(keyEncryptionKey);
 
 initialized = true;
 
+  } catch (EOFException e) {
+throw new IOException("Could not initialize key encryption cache, 
malformed key encryption key file", e);
   } catch (IOException e) {
-log.error("Could not initialize key encryption cache", e);
+if (invalidFile) {
+  throw new IOException("Could not initialize key encryption cache, 
malformed key encryption key file. Expected key of lengh " + 
keyEncryptionKeyLength
+  + " but file contained " + (fs.getFileStatus(pathToKey).getLen() 
- 4) + "bytes for key encryption key.");
+} else {
+  throw new IOException("Could not initialize key encryption cache, 
unable to access or find key encryption key file", e);
+}
   } finally {
 IOUtils.closeQuietly(in);
   }
diff --git 
a/core/src/main/java/org/apache/accumulo/core/security/crypto/SecretKeyEncryptionStrategy.java
 
b/core/src/main/java/org/apache/accumulo/core/security/crypto/SecretKeyEncryptionStrategy.java
index 7d3c333..8dfdee1 100644
--- 

[accumulo] 02/02: ACCUMULO-4731 minor cleanup of unit test

2018-01-19 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/accumulo.git

commit 591c3a0dc9d3ba0eb12cba2328e8e5badc6c7f60
Author: Keith Turner 
AuthorDate: Fri Jan 19 19:06:14 2018 -0500

ACCUMULO-4731 minor cleanup of unit test
---
 .../CachingHDFSSecretKeyEncryptionStrategy.java|  2 +-
 .../accumulo/core/security/crypto/CryptoTest.java  | 28 +-
 2 files changed, 12 insertions(+), 18 deletions(-)

diff --git 
a/core/src/main/java/org/apache/accumulo/core/security/crypto/CachingHDFSSecretKeyEncryptionStrategy.java
 
b/core/src/main/java/org/apache/accumulo/core/security/crypto/CachingHDFSSecretKeyEncryptionStrategy.java
index 58f1010..b301988 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/security/crypto/CachingHDFSSecretKeyEncryptionStrategy.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/security/crypto/CachingHDFSSecretKeyEncryptionStrategy.java
@@ -150,7 +150,7 @@ public class CachingHDFSSecretKeyEncryptionStrategy 
implements SecretKeyEncrypti
 // The keyEncryptionKeyLength+4 accounts for the integer read from the 
file.
 if (fs.getFileStatus(pathToKey).getLen() != keyEncryptionKeyLength + 
4) {
   invalidFile = true;
-   // Passing this exception forward so we can provide the more useful 
error message
+  // Passing this exception forward so we can provide the more useful 
error message
   throw new IOException();
 }
 keyEncryptionKey = new byte[keyEncryptionKeyLength];
diff --git 
a/core/src/test/java/org/apache/accumulo/core/security/crypto/CryptoTest.java 
b/core/src/test/java/org/apache/accumulo/core/security/crypto/CryptoTest.java
index d4bf4ae..8609183 100644
--- 
a/core/src/test/java/org/apache/accumulo/core/security/crypto/CryptoTest.java
+++ 
b/core/src/test/java/org/apache/accumulo/core/security/crypto/CryptoTest.java
@@ -32,7 +32,6 @@ import java.io.File;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.nio.file.Files;
 import java.security.InvalidKeyException;
 import java.security.Key;
 import java.security.NoSuchAlgorithmException;
@@ -54,7 +53,6 @@ import org.apache.accumulo.core.conf.ConfigurationCopy;
 import org.apache.accumulo.core.conf.DefaultConfiguration;
 import org.apache.accumulo.core.conf.Property;
 import org.apache.hadoop.conf.Configuration;
-import org.junit.AfterClass;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
@@ -68,8 +66,8 @@ public class CryptoTest {
   public static final String CRYPTO_ON_CONF = "crypto-on-accumulo-site.xml";
   public static final String CRYPTO_OFF_CONF = "crypto-off-accumulo-site.xml";
   public static final String CRYPTO_ON_KEK_OFF_CONF = 
"crypto-on-no-key-encryption-accumulo-site.xml";
-  
-  //Used for kek file testing
+
+  // Used for kek file testing
   private static File kekWorks;
   private static File kekTooLong;
   private static File kekTooShort;
@@ -407,19 +405,12 @@ public class CryptoTest {
 testKekFile(kekTooShort);
   }
 
-  @AfterClass
-  public static void removeAllTestKekFiles() throws IOException {
-   Files.deleteIfExists(kekWorks.toPath());
-Files.deleteIfExists(kekTooShort.toPath());
-Files.deleteIfExists(kekTooLong.toPath());
-  }
-
   // Used to check reading of KEK files
   @SuppressWarnings("deprecation")
   private void testKekFile(File testFile) throws IOException {
-   assertTrue(testFile.exists());
-   assertFalse(testFile.isDirectory());
-   
+assertTrue(testFile.exists());
+assertFalse(testFile.isDirectory());
+
 AccumuloConfiguration conf = setAndGetAccumuloConfig(CRYPTO_ON_CONF);
 CryptoModuleParameters params = 
CryptoModuleFactory.createParamsObjectFromAccumuloConfiguration(conf);
 // TODO ACCUMULO-2530 this will need to be fixed when 
CachingHDFSSecretKeyEncryptionStrategy is fixed
@@ -433,7 +424,10 @@ public class CryptoTest {
 
   private File createKekFile(String filename, Integer size) throws IOException 
{
 File dir = new File(System.getProperty("user.dir") + "/target/cryptoTest");
-boolean unused = dir.mkdirs(); // if the directories don't already exist, 
it'll return 1. If they do, 0. Both cases can be fine.
+// must do something with return value to avoid findbugs
+boolean foilFindbugs = dir.mkdirs(); // if the directories don't already 
exist, it'll return 1. If they do, 0. Both cases can be fine.
+// must do something with java var to avoid java warning
+foilFindbugs = !foilFindbugs;
 
 File testFile = File.createTempFile(filename, ".kek", dir);
 DataOutputStream os = new DataOutputStream(new FileOutputStream(testFile));
@@ -445,9 +439,9 @@ public class CryptoTest {
 os.write(key);
 os.flush();
 os.close();
-
+
 return testFile;
-
+
   }
 
   public void 

[accumulo] branch master updated (f6c1662 -> 591c3a0)

2018-01-19 Thread kturner
This is an automated email from the ASF dual-hosted git repository.

kturner pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/accumulo.git.


from f6c1662  Merge branch '1.8'
 new 518c109  ACCUMULO-4731 Improved handling of key load failure (#315)
 new 591c3a0  ACCUMULO-4731 minor cleanup of unit test

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../CachingHDFSSecretKeyEncryptionStrategy.java| 29 --
 .../crypto/SecretKeyEncryptionStrategy.java|  4 +-
 .../accumulo/core/security/crypto/CryptoTest.java  | 67 +-
 3 files changed, 93 insertions(+), 7 deletions(-)

-- 
To stop receiving notification emails like this one, please contact
['"commits@accumulo.apache.org" '].


[accumulo] branch master updated (e05c475 -> f6c1662)

2018-01-19 Thread mmiller
This is an automated email from the ASF dual-hosted git repository.

mmiller pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/accumulo.git.


from e05c475  Merge branch '1.8'
 add 3a9efa0  ACCUMULO-4587 Upgrade Monitor jquery to 3.2.1
 add a13a6ad  Merge branch '1.7' into 1.8
 new f6c1662  Merge branch '1.8'

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:

-- 
To stop receiving notification emails like this one, please contact
['"commits@accumulo.apache.org" '].


[accumulo] 01/01: Merge branch '1.8'

2018-01-19 Thread mmiller
This is an automated email from the ASF dual-hosted git repository.

mmiller pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/accumulo.git

commit f6c16626ebb3724824ca5be65b0d0ac5b0e60173
Merge: e05c475 a13a6ad
Author: Mike Miller 
AuthorDate: Fri Jan 19 15:22:08 2018 -0500

Merge branch '1.8'


-- 
To stop receiving notification emails like this one, please contact
"commits@accumulo.apache.org" .


[accumulo] branch 1.8 updated (62f8883 -> a13a6ad)

2018-01-19 Thread mmiller
This is an automated email from the ASF dual-hosted git repository.

mmiller pushed a change to branch 1.8
in repository https://gitbox.apache.org/repos/asf/accumulo.git.


from 62f8883  Merge branch '1.7' into 1.8
 add 3a9efa0  ACCUMULO-4587 Upgrade Monitor jquery to 3.2.1
 new a13a6ad  Merge branch '1.7' into 1.8

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../monitor/src/main/resources/web/flot/jquery.js  | 14887 +++
 1 file changed, 8412 insertions(+), 6475 deletions(-)

-- 
To stop receiving notification emails like this one, please contact
['"commits@accumulo.apache.org" '].


[accumulo] 01/01: Merge branch '1.7' into 1.8

2018-01-19 Thread mmiller
This is an automated email from the ASF dual-hosted git repository.

mmiller pushed a commit to branch 1.8
in repository https://gitbox.apache.org/repos/asf/accumulo.git

commit a13a6adc3ce97317645edf7233c72478b3bd9823
Merge: 62f8883 3a9efa0
Author: Mike Miller 
AuthorDate: Fri Jan 19 15:02:16 2018 -0500

Merge branch '1.7' into 1.8

 .../monitor/src/main/resources/web/flot/jquery.js  | 14887 +++
 1 file changed, 8412 insertions(+), 6475 deletions(-)

-- 
To stop receiving notification emails like this one, please contact
"commits@accumulo.apache.org" .


[accumulo] branch master updated (28b53e0 -> e05c475)

2018-01-19 Thread mmiller
This is an automated email from the ASF dual-hosted git repository.

mmiller pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/accumulo.git.


from 28b53e0  ACCUMULO-4611 Remove commons-config from API
 add da10af8  ACCUMULO-4741 Remove minified files in Monitor
 add 62f8883  Merge branch '1.7' into 1.8
 new e05c475  Merge branch '1.8'

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:

-- 
To stop receiving notification emails like this one, please contact
['"commits@accumulo.apache.org" '].


[accumulo] 01/01: Merge branch '1.8'

2018-01-19 Thread mmiller
This is an automated email from the ASF dual-hosted git repository.

mmiller pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/accumulo.git

commit e05c475b5d1d7ca970398435fa597096a730ff83
Merge: 28b53e0 62f8883
Author: Mike Miller 
AuthorDate: Fri Jan 19 13:55:24 2018 -0500

Merge branch '1.8'


-- 
To stop receiving notification emails like this one, please contact
"commits@accumulo.apache.org" .


[accumulo] branch 1.8 updated (9ac92c7 -> 62f8883)

2018-01-19 Thread mmiller
This is an automated email from the ASF dual-hosted git repository.

mmiller pushed a change to branch 1.8
in repository https://gitbox.apache.org/repos/asf/accumulo.git.


from 9ac92c7  ACCUMULO-4611 Deprecate public API with commons config
 add da10af8  ACCUMULO-4741 Remove minified files in Monitor
 new 62f8883  Merge branch '1.7' into 1.8

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../accumulo/monitor/servlets/BasicServlet.java|  2 +-
 .../src/main/resources/web/flot/excanvas.min.js|  1 -
 .../resources/web/flot/jquery.colorhelpers.min.js  |  1 -
 .../web/flot/jquery.flot.crosshair.min.js  |  1 -
 .../web/flot/jquery.flot.fillbetween.min.js|  1 -
 .../resources/web/flot/jquery.flot.image.min.js|  1 -
 .../src/main/resources/web/flot/jquery.flot.min.js |  6 --
 .../resources/web/flot/jquery.flot.navigate.min.js |  1 -
 .../main/resources/web/flot/jquery.flot.pie.min.js |  1 -
 .../resources/web/flot/jquery.flot.resize.min.js   |  1 -
 .../web/flot/jquery.flot.selection.min.js  |  1 -
 .../resources/web/flot/jquery.flot.stack.min.js|  1 -
 .../resources/web/flot/jquery.flot.symbol.min.js   |  1 -
 .../web/flot/jquery.flot.threshold.min.js  |  1 -
 .../src/main/resources/web/flot/jquery.min.js  | 23 --
 15 files changed, 1 insertion(+), 42 deletions(-)
 delete mode 100644 server/monitor/src/main/resources/web/flot/excanvas.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.colorhelpers.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.flot.crosshair.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.flot.fillbetween.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.flot.image.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.flot.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.flot.navigate.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.flot.pie.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.flot.resize.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.flot.selection.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.flot.stack.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.flot.symbol.min.js
 delete mode 100644 
server/monitor/src/main/resources/web/flot/jquery.flot.threshold.min.js
 delete mode 100644 server/monitor/src/main/resources/web/flot/jquery.min.js

-- 
To stop receiving notification emails like this one, please contact
['"commits@accumulo.apache.org" '].


[accumulo] 01/01: Merge branch '1.7' into 1.8

2018-01-19 Thread mmiller
This is an automated email from the ASF dual-hosted git repository.

mmiller pushed a commit to branch 1.8
in repository https://gitbox.apache.org/repos/asf/accumulo.git

commit 62f88836cb97ebcf4edcbd6ce01633ef4107b887
Merge: 9ac92c7 da10af8
Author: Mike Miller 
AuthorDate: Fri Jan 19 13:29:58 2018 -0500

Merge branch '1.7' into 1.8

 .../accumulo/monitor/servlets/BasicServlet.java|  2 +-
 .../src/main/resources/web/flot/excanvas.min.js|  1 -
 .../resources/web/flot/jquery.colorhelpers.min.js  |  1 -
 .../web/flot/jquery.flot.crosshair.min.js  |  1 -
 .../web/flot/jquery.flot.fillbetween.min.js|  1 -
 .../resources/web/flot/jquery.flot.image.min.js|  1 -
 .../src/main/resources/web/flot/jquery.flot.min.js |  6 --
 .../resources/web/flot/jquery.flot.navigate.min.js |  1 -
 .../main/resources/web/flot/jquery.flot.pie.min.js |  1 -
 .../resources/web/flot/jquery.flot.resize.min.js   |  1 -
 .../web/flot/jquery.flot.selection.min.js  |  1 -
 .../resources/web/flot/jquery.flot.stack.min.js|  1 -
 .../resources/web/flot/jquery.flot.symbol.min.js   |  1 -
 .../web/flot/jquery.flot.threshold.min.js  |  1 -
 .../src/main/resources/web/flot/jquery.min.js  | 23 --
 15 files changed, 1 insertion(+), 42 deletions(-)


-- 
To stop receiving notification emails like this one, please contact
"commits@accumulo.apache.org" .


[accumulo] branch 1.7 updated: ACCUMULO-4741 Remove minified files in Monitor

2018-01-19 Thread mmiller
This is an automated email from the ASF dual-hosted git repository.

mmiller pushed a commit to branch 1.7
in repository https://gitbox.apache.org/repos/asf/accumulo.git


The following commit(s) were added to refs/heads/1.7 by this push:
 new da10af8  ACCUMULO-4741 Remove minified files in Monitor
da10af8 is described below

commit da10af8d0c9da5e40b61a17976b29f826a818c27
Author: Mike Miller 
AuthorDate: Fri Jan 19 13:11:10 2018 -0500

ACCUMULO-4741 Remove minified files in Monitor
---
 .../accumulo/monitor/servlets/BasicServlet.java|  2 +-
 .../src/main/resources/web/flot/excanvas.min.js|  1 -
 .../resources/web/flot/jquery.colorhelpers.min.js  |  1 -
 .../web/flot/jquery.flot.crosshair.min.js  |  1 -
 .../web/flot/jquery.flot.fillbetween.min.js|  1 -
 .../resources/web/flot/jquery.flot.image.min.js|  1 -
 .../src/main/resources/web/flot/jquery.flot.min.js |  6 --
 .../resources/web/flot/jquery.flot.navigate.min.js |  1 -
 .../main/resources/web/flot/jquery.flot.pie.min.js |  1 -
 .../resources/web/flot/jquery.flot.resize.min.js   |  1 -
 .../web/flot/jquery.flot.selection.min.js  |  1 -
 .../resources/web/flot/jquery.flot.stack.min.js|  1 -
 .../resources/web/flot/jquery.flot.symbol.min.js   |  1 -
 .../web/flot/jquery.flot.threshold.min.js  |  1 -
 .../src/main/resources/web/flot/jquery.min.js  | 23 --
 15 files changed, 1 insertion(+), 42 deletions(-)

diff --git 
a/server/monitor/src/main/java/org/apache/accumulo/monitor/servlets/BasicServlet.java
 
b/server/monitor/src/main/java/org/apache/accumulo/monitor/servlets/BasicServlet.java
index 8168ce7..e517b44 100644
--- 
a/server/monitor/src/main/java/org/apache/accumulo/monitor/servlets/BasicServlet.java
+++ 
b/server/monitor/src/main/java/org/apache/accumulo/monitor/servlets/BasicServlet.java
@@ -137,7 +137,7 @@ abstract public class BasicServlet extends HttpServlet {
 sb.append("\n");
 sb.append("\n");
 
-sb.append("\n");
+sb.append("\n");
 sb.append("\n");
 sb.append("\n");
 
diff --git a/server/monitor/src/main/resources/web/flot/excanvas.min.js 
b/server/monitor/src/main/resources/web/flot/excanvas.min.js
deleted file mode 100644
index 988f934..000
--- a/server/monitor/src/main/resources/web/flot/excanvas.min.js
+++ /dev/null
@@ -1 +0,0 @@
-if(!document.createElement("canvas").getContext){(function(){var z=Math;var 
K=z.round;var J=z.sin;var U=z.cos;var b=z.abs;var k=z.sqrt;var D=10;var 
F=D/2;function T(){return this.context_||(this.context_=new W(this))}var 
O=Array.prototype.slice;function G(i,j,m){var Z=O.call(arguments,2);return 
function(){return i.apply(j,Z.concat(O.call(arguments)))}}function AD(Z){return 
String(Z).replace(/&/g,"").replace(/"/g,"")}function 
r(i){if(!i.namespaces.g_vml_){i.namespaces.add("g_vm [...]
diff --git 
a/server/monitor/src/main/resources/web/flot/jquery.colorhelpers.min.js 
b/server/monitor/src/main/resources/web/flot/jquery.colorhelpers.min.js
deleted file mode 100644
index 7082b11..000
--- a/server/monitor/src/main/resources/web/flot/jquery.colorhelpers.min.js
+++ /dev/null
@@ -1 +0,0 @@
-(function(b){b.color={};b.color.make=function(f,e,c,d){var 
h={};h.r=f||0;h.g=e||0;h.b=c||0;h.a=d!=null?d:1;h.add=function(k,j){for(var 
g=0;g=1){return"rgb("+[h.r,h.g,h.b].join(",")+")"}else{return"rgba("+[h.r,h.g,h.b,h.a].join(",")+")"}};h.normalize=function(){function
 g(j,k,i){return ki?i:k)}h.r=g(0,parseInt [...]
diff --git 
a/server/monitor/src/main/resources/web/flot/jquery.flot.crosshair.min.js 
b/server/monitor/src/main/resources/web/flot/jquery.flot.crosshair.min.js
deleted file mode 100644
index bdd6da4..000
--- a/server/monitor/src/main/resources/web/flot/jquery.flot.crosshair.min.js
+++ /dev/null
@@ -1 +0,0 @@
-(function(b){var a={crosshair:{mode:null,color:"rgba(170, 0, 0, 
0.80)",lineWidth:1}};function c(h){var 
j={x:-1,y:-1,locked:false};h.setCrosshair=function e(l){if(!l){j.x=-1}else{var 
k=h.p2c(l);j.x=Math.max(0,Math.min(k.left,h.width()));j.y=Math.max(0,Math.min(k.top,h.height()))}h.triggerRedrawOverlay()};h.clearCrosshair=h.setCrosshair;h.lockCrosshair=function
 f(k){if(k){h.setCrosshair(k)}j.locked=true};h.unlockCrosshair=function 
g(){j.locked=false};function d(k){if(j.locked){return}if(j. [...]
diff --git 
a/server/monitor/src/main/resources/web/flot/jquery.flot.fillbetween.min.js 
b/server/monitor/src/main/resources/web/flot/jquery.flot.fillbetween.min.js
deleted file mode 100644
index 6ebcdcc..000
--- a/server/monitor/src/main/resources/web/flot/jquery.flot.fillbetween.min.js
+++ /dev/null
@@ -1 +0,0 @@
-(function(b){var a={series:{fillBetween:null}};function c(f){function 
d(j,h){var g;for(g=0;g