From 25432945daf5cc2ccc28493f691e153c1674a80b Mon Sep 17 00:00:00 2001 From: Daniel <daniel@harvey> Date: Thu, 24 Oct 2019 17:30:49 +0200 Subject: [PATCH] DEBUG: Added more benchmarking. --- src/main/java/caosdb/server/query/Query.java | 3 +++ .../caosdb/server/resource/ScriptingResource.java | 6 +++--- .../server/resource/transaction/EntityResource.java | 5 +++++ .../scripting/TestServerSideScriptingCaller.java | 12 +++--------- 4 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/main/java/caosdb/server/query/Query.java b/src/main/java/caosdb/server/query/Query.java index c9bff5a5..d3e0e927 100644 --- a/src/main/java/caosdb/server/query/Query.java +++ b/src/main/java/caosdb/server/query/Query.java @@ -415,6 +415,7 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac } public void parse() throws ParsingException { + final long t1 = System.currentTimeMillis(); CQLLexer lexer; lexer = new CQLLexer(CharStreams.fromString(this.query)); final CommonTokenStream tokens = new CommonTokenStream(lexer); @@ -434,6 +435,8 @@ public class Query implements QueryInterface, ToElementable, TransactionInterfac this.type = cq.t; this.filter = cq.filter; this.selections = cq.s; + final long t2 = System.currentTimeMillis(); + addBenchmark("parse (" + this.query + ")", t2 - t1); } private String executeStrategy() throws QueryException { diff --git a/src/main/java/caosdb/server/resource/ScriptingResource.java b/src/main/java/caosdb/server/resource/ScriptingResource.java index 43e11cf6..d82df5c7 100644 --- a/src/main/java/caosdb/server/resource/ScriptingResource.java +++ b/src/main/java/caosdb/server/resource/ScriptingResource.java @@ -83,7 +83,7 @@ public class ScriptingResource extends AbstractCaosDBServerResource { @Override protected Representation httpPostInChildClass(Representation entity) throws Exception { - if(isAnonymous()) { + if (isAnonymous()) { throw ServerMessages.AUTHORIZATION_ERROR; } MediaType mediaType = entity.getMediaType(); @@ -205,12 +205,12 @@ public class ScriptingResource extends AbstractCaosDBServerResource { public Object generateAuthToken() { return SessionToken.generate((Principal) getUser().getPrincipal(), null); } - + boolean isAnonymous() { boolean ret = getUser().hasRole(UserSources.ANONYMOUS_ROLE); return ret; } - + public int callScript( List<String> commandLine, Integer timeoutMs, List<FileProperties> files, Object authToken) throws Message { diff --git a/src/main/java/caosdb/server/resource/transaction/EntityResource.java b/src/main/java/caosdb/server/resource/transaction/EntityResource.java index 0e78c46a..f55c2b7a 100644 --- a/src/main/java/caosdb/server/resource/transaction/EntityResource.java +++ b/src/main/java/caosdb/server/resource/transaction/EntityResource.java @@ -99,6 +99,7 @@ public class EntityResource extends AbstractCaosDBServerResource { throws ConnectionException, IOException, SQLException, CaosDBException, NoSuchAlgorithmException, Exception { + final long t1 = System.currentTimeMillis(); if (!this.get) { getResponse().setStatus(Status.CLIENT_ERROR_METHOD_NOT_ALLOWED); return null; @@ -112,6 +113,10 @@ public class EntityResource extends AbstractCaosDBServerResource { final Retrieve retrieve = new Retrieve(entityContainer); retrieve.execute(); + final long t2 = System.currentTimeMillis(); + entityContainer + .getTransactionBenchmark() + .addBenchmark(getClass().getSimpleName() + ".httpGetInChildClass", t2 - t1); final Element rootElem = generateRootElement(); entityContainer.addToElement(rootElem); doc.setRootElement(rootElem); diff --git a/src/test/java/caosdb/server/scripting/TestServerSideScriptingCaller.java b/src/test/java/caosdb/server/scripting/TestServerSideScriptingCaller.java index e66c646a..f752c29c 100644 --- a/src/test/java/caosdb/server/scripting/TestServerSideScriptingCaller.java +++ b/src/test/java/caosdb/server/scripting/TestServerSideScriptingCaller.java @@ -613,9 +613,7 @@ public class TestServerSideScriptingCaller extends CaosDBTestClass { caller.cleanup(); } -/** - * Does the order of directory creation matter? - */ + /** Does the order of directory creation matter? */ @Test public void testDirectoriesInWrongOrder() throws Message { final String[] cmd = {testExecutable.getAbsolutePath()}; @@ -645,9 +643,7 @@ public class TestServerSideScriptingCaller extends CaosDBTestClass { caller.cleanup(); } - /** - * Is the new home directory created correctly? - */ + /** Is the new home directory created correctly? */ @Test public void testWorkingDirCreation() throws Exception { final String[] cmd = {testExecutable.getAbsolutePath()}; @@ -660,9 +656,7 @@ public class TestServerSideScriptingCaller extends CaosDBTestClass { caller.cleanup(); } - /** - * Does copying files over to the new home directory work? - */ + /** Does copying files over to the new home directory work? */ @Test public void testWorkingDirCopying() throws Exception { final String[] cmd = {testExecutable.getAbsolutePath()}; -- GitLab