Commit Graph

924 Commits

Author SHA1 Message Date
b4d93414f5 show big picture of dashboard items 2018-04-29 08:36:49 +02:00
022d5a21c5 do not try to create a thumbnail if the image doesn't exist 2018-04-28 19:59:00 +02:00
d4b09d4dab render progress bar and add button to abort the dashboard creation 2018-04-28 19:58:31 +02:00
2da54432ff sort tiles on the dashboard 2018-04-28 19:03:07 +02:00
913057c6df add dashboard 2018-04-27 19:36:31 +02:00
38ffff38de rename template from html to mustache
This is a change that came in in spring boot 2.
2018-04-22 09:47:43 +02:00
b06ccb0d00 update 3rd party libs
spring boot to 2.0.1
guava to 24.1-jre
jackson to 2.9.5
log4j2 to 2.10.0 (same version as pulled by spring boot)
testng to 6.14.3
2018-04-21 20:01:39 +02:00
83837d4c0c update gradle to 4.7 2018-04-21 19:59:00 +02:00
57938d5269 do not check if we can find values when proposing keys
Counting the available values is quite expensive and there are only a
few corner cases where this makes sense. One of them is when the query
is for a method that is not project specific and therefore no project
values can be found.
2018-04-14 10:38:00 +02:00
a5c401c722 scroll proposal into view 2018-04-14 10:34:25 +02:00
19a08558e3 Chrome uses double for height/width of elements
This caused a NumberFormatExeption when trying to convert the string
representation of a double to an int.
Fixed by floor'ing the value.
2018-04-14 10:08:55 +02:00
23e16ff61d ignore null values in tags 2018-04-14 09:58:51 +02:00
7018a11ab3 add links to current settings and to current image 2018-04-10 19:59:09 +02:00
fe29b0d738 remove obsolete variables from model 2018-04-08 19:43:47 +02:00
12e766bd60 label was not correctly linked to drop-down 2018-04-08 19:34:35 +02:00
8f69be3b66 read initial values from URI and provide permanent link 2018-04-08 19:28:19 +02:00
1eabd4aa96 update jquery and remove obsolete js/css files 2018-04-08 17:44:03 +02:00
59fb35d7d8 show waiting game 2018-04-08 17:13:01 +02:00
1755562a84 do not move the cursor to the end when applying a proposal 2018-04-08 14:06:13 +02:00
68ee88bce0 rewrite autocomplete in vue.js 2018-04-08 08:44:28 +02:00
5e53e667fe use vue.js for the UI 2018-04-02 09:18:41 +02:00
22c99f8517 fix null pointer exception
filename were generated without '$', but the parsing code expected
the '$'.
2018-03-28 19:34:48 +02:00
9f37243ba3 Reduce memory consumption of Tags by 50%
by storing only the bytes instead of the string.
2018-03-28 19:08:53 +02:00
81711d551f fix performance regression
The last improvement of memory usage introduced a performance
regression. The ingestion performance dropped by 50%-80%, because
for every inserted entry the Tags were created inefficient.
2018-03-27 19:30:18 +02:00
de0f8412bd show proposals for empty terminals 2018-03-25 19:17:49 +02:00
2cd32805d9 show better error message when there are too many parallel requests 2018-03-25 18:03:20 +02:00
540b6c79f4 restart waiting game 2018-03-25 17:59:51 +02:00
c581e352e4 add method that returns a string representation of the tags in Tags 2018-03-19 19:29:22 +01:00
5343c0d427 reduce memory usage
Reduce memory usage by storing the filename as string instead of
individual tags.
2018-03-19 19:21:57 +01:00
ahr
181fce805d do not run a gc after creating a plot
the gc often takes a second or more, which slows down the rendering a
lot
2018-03-11 16:25:52 +01:00
ahr
caf400343e remove time measurements
For each entry we executed two calls to System.nanoTime().
The resulting numbers aren't very reliable and calling nanoTime
that often (160k - 300k per second) is quite expensive.
2018-03-09 08:46:09 +01:00
ahr
3387ebc134 use epoch millis instead of creating a date object
We only have to check if one timestamp is newer than another.
We don't have to create an expensive date object to do that.
2018-03-09 08:43:37 +01:00
ahr
829fddf88c merge key and value arrays
we have several hundred thousand of those MiniMaps and this reduces
the memory requirement by 8 bytes per instance
2018-03-09 08:40:12 +01:00
ahr
7e5b762c0d pre-compute firstByteMaxValue
this operation is executed very often during ingestion
2018-03-09 08:38:58 +01:00
ahr
5a9aae70af handle corrupt json
Entries must be separated by a newline. This allows
us to handle corrupt json entries, because we know
that entries only start at a line beginning.
2018-03-03 09:58:50 +01:00
ahr
9d4eb660a5 update gradle and spring
gradle to 4.6
spring to 1.5.10.RELEASE
2018-03-03 08:34:38 +01:00
ahr
6b60fd542c add percentile plots 2018-03-03 08:19:26 +01:00
b4a0514267 draw points and percentile lines with the same color 2018-01-21 14:09:34 +01:00
bb7701e7c4 use enum for line type instead of string 2018-01-21 11:01:30 +01:00
8f15aba0d5 replace individual percentile aggregates with a single one for all 2018-01-21 10:54:13 +01:00
b439c9d79a update third-party libs
antlr4: 4.7 -> 4.7.1
commons-lang3: 3.6 -> 3.7
2018-01-21 08:44:30 +01:00
469dc20411 add gradle plugin: gradle-versions-plugin 2018-01-21 08:43:45 +01:00
9f45eb24ca add trace logging for creation of new writer 2018-01-21 08:36:40 +01:00
ahr
740cb1cb2d print metrics every 10 seconds, not every 10.001 seconds 2018-01-14 09:52:08 +01:00
ahr
d98c45e8bd add index for tags-to-documents
Now we can find writer much faster, because we don't have to execute
a query for documents that match the tags. We can just look up the 
documents in the map.
Speedup: 2-4ms -> 0.002-0.01ms
2018-01-14 09:51:37 +01:00
ahr
64613ce43c add metric logging for getWriter 2018-01-13 10:32:03 +01:00
ahr
0f2fcc3c9c extract long_to_string converter 2018-01-06 08:40:58 +01:00
ahr
c5c7c03c66 add example logger 2017-12-30 10:09:19 +01:00
ahr
bcc30f0f3f add trace logging and make set of proposals synchronized
I checked if computing the proposals with a parallel stream would be
beneficial. Turns out the stream uses several threads, but the overall
computation is not faster, because each individual computation is
slower.
2017-12-30 10:08:54 +01:00
ahr
3cc512f73d update third party libs
testng 6.11 -> 6.13.1
jackson-databind 2.9.1 -> 2.9.3
guava 23.0 -> 23.6-jre
2017-12-30 10:06:57 +01:00