HEAD | 055b549 | lwc-events: add pre-filter method for events (#1672) Add `couldMatch` method to the client to allow for filtering our some data early if it requires an expensive transform to generate the final event. | 10 July 2024, 15:46:53 UTC |
refs/heads/gh-pages | 47c76ad | add slides from reinvent talk | 15 November 2016, 21:10:36 UTC |
refs/heads/main | 055b549 | lwc-events: add pre-filter method for events (#1672) Add `couldMatch` method to the client to allow for filtering our some data early if it requires an expensive transform to generate the final event. | 10 July 2024, 15:46:53 UTC |
refs/heads/v1.4.x | 49d4352 | reduce size of publish failure response (#431) Fixes a bug where the failure message was getting encoded as a json string inside the message of the json response. Also changes the behavior on failures to have the error count explicitly in the response and limit the number of specific failure messages to the first 5. This significantly reduces allocations and response sizes for payloads with many failures. | 01 September 2016, 15:56:05 UTC |
refs/heads/v1.5.x | 2318e68 | 1.5: switch to RobotoMono font (#1033) Backport of #967 to get better behavior when running on newer JDKs that do not include the Lucida fonts. | 26 April 2019, 23:24:22 UTC |
refs/heads/v1.6.x | 2c50898 | 1.6: fix shard lookup for Integer.MIN_VALUE (#1459) Back port of #1452. Before it was relying on `abs` to get a non-negative value for computing an index to the array. This breaks when the int value of the id is `Integer.MIN_VALUE`. Update it to explicitly clear the sign bit to ensure the value will always be non-negative. | 01 September 2022, 11:56:16 UTC |
refs/heads/v1.7.x | 3144d87 | 1.7.x: add default values for interpreter execute (#1598) Update interpreter API to be more consistent with recent changes in 1.8. | 10 January 2024, 22:32:52 UTC |
refs/tags/v1.4.5 | 03584fb | Merge pull request #213 from brharrington/v1.4.x-issue-175 fixes #175, backport validation rules | 08 August 2015, 04:25:46 UTC |
refs/tags/v1.4.6 | 19ead26 | Merge pull request #320 from brharrington/v1.4-org 1.4.x update maven groupId | 01 March 2016, 05:49:30 UTC |
refs/tags/v1.4.7 | 49d4352 | reduce size of publish failure response (#431) Fixes a bug where the failure message was getting encoded as a json string inside the message of the json response. Also changes the behavior on failures to have the error count explicitly in the response and limit the number of specific failure messages to the first 5. This significantly reduces allocations and response sizes for payloads with many failures. | 01 September 2016, 15:56:05 UTC |
refs/tags/v1.5.0 | 69aa97f | update dependencies (#447) | 29 October 2016, 14:14:06 UTC |
refs/tags/v1.5.0-rc.1 | d8c4e25 | ensure tags available for version selection | 07 August 2015, 23:18:46 UTC |
refs/tags/v1.5.0-rc.2 | 92b4bc5 | Merge pull request #245 from brharrington/palette-list support user defined color palette | 07 November 2015, 21:05:57 UTC |
refs/tags/v1.5.0-rc.3 | 82ad25a | Merge pull request #262 from brharrington/config-std-tags allow reserved keys to be configured | 13 December 2015, 04:25:23 UTC |
refs/tags/v1.5.0-rc.4 | 34ad284 | Merge pull request #302 from brharrington/aws-1.10.50 update to aws-java-sdk 1.10.50 | 03 February 2016, 21:35:48 UTC |
refs/tags/v1.5.0-rc.5 | 03dccc0 | Merge pull request #317 from brharrington/docs-des docs: add note to prefer sdes | 01 March 2016, 13:27:20 UTC |
refs/tags/v1.5.0-rc.6 | d83f8ba | Merge pull request #351 from brharrington/spectator-0.38.0 update spectator, iep, and aws deps | 28 April 2016, 12:43:55 UTC |
refs/tags/v1.5.0-rc.7 | df0bf3d | Merge pull request #384 from skandragon/trend-streaming add a test case for Trend streaming | 05 July 2016, 18:04:53 UTC |
refs/tags/v1.5.0-rc.8 | 0e5b51f | fix #401, add scala version to artifact id (#402) Makes it easier to automatically detect for tools that want to index scala libraries. | 25 July 2016, 23:27:02 UTC |
refs/tags/v1.5.0-rc.9 | d7eac10 | misc build cleanup (#404) | 30 July 2016, 21:36:24 UTC |
refs/tags/v1.5.1 | 37771dd | backport select changes from 1.6 to 1.5.x branch (#454) | 08 November 2016, 15:09:40 UTC |
refs/tags/v1.5.2 | 7f660b3 | backport bug fixes to 1.5.x (#570) | 03 May 2017, 14:41:35 UTC |
refs/tags/v1.5.3 | b4a5a0d | fix possible deadlock during startup (#613) The healthcheck api was accessing the service manager from a provider when the routes were fetched. There doesn't appear to be any reason for this and it was removed already in 1.6 branch as part of #490. This was usually harmless, but on some systems threads would get scheduled in such a way that all of the actor threads were blocked with traces like: ``` "atlas-akka.actor.default-dispatcher-9" #18 prio=5 os_prio=0 tid=0x00007fb914010000 nid=0x6410 waiting on condition [0x00007fb9235f7000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x00000000838ae498> (a java.util.concurrent.locks.ReentrantLock$NonfairSync) at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175) at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199) at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209) at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285) at com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock.lockOrDetectPotentialLocksCycle(CycleDetectingLock.java:164) at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:185) at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41) at com.google.inject.internal.InjectorImpl$2$1.call(InjectorImpl.java:1019) at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1085) at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1015) at com.netflix.atlas.akka.HealthcheckApi.routes(HealthcheckApi.scala:36) at com.netflix.atlas.akka.RequestHandlerActor.receive(RequestHandlerActor.scala:41) at akka.actor.ActorCell.newActor(ActorCell.scala:568) at akka.actor.ActorCell.create(ActorCell.scala:588) at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:461) at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483) at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:282) at akka.dispatch.Mailbox.run(Mailbox.scala:223) at akka.dispatch.Mailbox.exec(Mailbox.scala:234) at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) ``` The user would see this as the application never fully starting and not being accessible. This should fix issue #612. | 05 June 2017, 22:18:13 UTC |
refs/tags/v1.5.3-rc.1 | b4a5a0d | fix possible deadlock during startup (#613) The healthcheck api was accessing the service manager from a provider when the routes were fetched. There doesn't appear to be any reason for this and it was removed already in 1.6 branch as part of #490. This was usually harmless, but on some systems threads would get scheduled in such a way that all of the actor threads were blocked with traces like: ``` "atlas-akka.actor.default-dispatcher-9" #18 prio=5 os_prio=0 tid=0x00007fb914010000 nid=0x6410 waiting on condition [0x00007fb9235f7000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x00000000838ae498> (a java.util.concurrent.locks.ReentrantLock$NonfairSync) at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175) at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199) at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209) at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285) at com.google.inject.internal.CycleDetectingLock$CycleDetectingLockFactory$ReentrantCycleDetectingLock.lockOrDetectPotentialLocksCycle(CycleDetectingLock.java:164) at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:185) at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41) at com.google.inject.internal.InjectorImpl$2$1.call(InjectorImpl.java:1019) at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1085) at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1015) at com.netflix.atlas.akka.HealthcheckApi.routes(HealthcheckApi.scala:36) at com.netflix.atlas.akka.RequestHandlerActor.receive(RequestHandlerActor.scala:41) at akka.actor.ActorCell.newActor(ActorCell.scala:568) at akka.actor.ActorCell.create(ActorCell.scala:588) at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:461) at akka.actor.ActorCell.systemInvoke(ActorCell.scala:483) at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:282) at akka.dispatch.Mailbox.run(Mailbox.scala:223) at akka.dispatch.Mailbox.exec(Mailbox.scala:234) at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) ``` The user would see this as the application never fully starting and not being accessible. This should fix issue #612. | 05 June 2017, 22:18:13 UTC |
refs/tags/v1.5.4 | 2318e68 | 1.5: switch to RobotoMono font (#1033) Backport of #967 to get better behavior when running on newer JDKs that do not include the Lucida fonts. | 26 April 2019, 23:24:22 UTC |
refs/tags/v1.6.0 | 045de8c | fix deprecation warnings for ActorPublisher (#1037) Changes the processing for the `/fetch` endpoint to use streams instead of the deprecated ActorPublisher. | 01 May 2019, 22:28:44 UTC |
refs/tags/v1.6.0-rc.1 | f65e031 | update license headers for 2017 (#476) | 04 January 2017, 21:09:16 UTC |
refs/tags/v1.6.0-rc.10 | 6bec417 | iep 1.2.2 (#815) This is mostly just to trigger a change to verify the release. The previous attempt at 1.6.0-rc.10 failed because it was still trying to publish 1.6.0-rc.9. The theory is that this is because they were both tagging the same commit. | 06 April 2018, 23:10:50 UTC |
refs/tags/v1.6.0-rc.11 | 741ae0b | add timeRange helper function (#859) There are a number of internal libs that have this same logic of computing a time range based on parsed start and end times that can be relative to each other. Move to a helper function of Strings so it is easier to reuse. | 25 July 2018, 15:02:38 UTC |
refs/tags/v1.6.0-rc.12 | 7d26ab0 | make subscribe logs consistent with register (#897) Only log on changes to reduce noise and follow the same behavior as register/unregister. | 11 September 2018, 05:10:34 UTC |
refs/tags/v1.6.0-rc.13 | a6f7bd1 | store step size for TimeGroup (#929) If it is flushed via a heartbeat instead of data, then it could be empty and the step size cannot be extracted from the data. | 05 October 2018, 00:31:22 UTC |
refs/tags/v1.6.0-rc.14 | 49f9114 | update dependencies (#947) | 26 October 2018, 16:44:00 UTC |
refs/tags/v1.6.0-rc.2 | 49e9a05 | remove use of sleep in SSEActorSuite (#489) | 31 January 2017, 19:07:24 UTC |
refs/tags/v1.6.0-rc.3 | 151b062 | allow `last` summary stat to be used with filters (#510) The last value for a given time series is already being tracked as part of the summary stats, but was not supported by the `:stat` operator. This change allows that stat to be used as part of a filter. | 23 February 2017, 22:36:18 UTC |
refs/tags/v1.6.0-rc.4 | f2edd36 | included rendered image in v2.json response (#568) Fixes #564. We may move this behind a flag before 1.6 final, but for now it is enabled by default. By including in the v2.json format the UI/dashboard can use the static image and switch to a dynamic rendering without making another request. The message has a type of `graph-image` with a data field that is a data uri of the image without the legend. Sample usage: ```html <html> <body> <div id="content"></div> <script> var content = document.getElementById('content'); fetch('http://localhost:7101/api/v1/graph?q=name,sps,:eq,(,nf.cluster,),:by&format=v2.json') .then(function(response) { return response.json(); }) .then(function(json) { var html = ''; json.forEach(function(msg) { if (msg.type === 'graph-image') { html += '<div><img src="' + msg.data + '"/></div>'; } else if (msg.type === 'timeseries') { html += '<div>' + msg.label + '</div>'; } }); content.innerHTML = html; }); </script> </body> </html> ``` | 01 May 2017, 22:19:52 UTC |
refs/tags/v1.6.0-rc.5 | e283528 | improve error message when missing uri param (#630) Fixes #574. Improves the error message returned if the input URI is missing required parameters. It has also been changed to get returned as a diagnostic message as part of the stream so that a single bad URI will not stop the processor for all evaluations. | 13 July 2017, 22:17:14 UTC |
refs/tags/v1.6.0-rc.6 | 5fbe43a | akka-http 10.0.10 (#664) Fixes race condition with the idle timeout on the host connection pool (akka/akka-http#1245). | 31 August 2017, 20:06:06 UTC |
refs/tags/v1.6.0-rc.7 | 589a954 | sbt 1.0.2 (#686) Fixes terminal echo issue. | 19 September 2017, 00:02:28 UTC |
refs/tags/v1.6.0-rc.8 | 13ab8da | fix #646, make compatible with jackson 2.9 (#701) The constructor for AnnotatedParameter now takes another parameter. Also the PropertyMetadata for a BeanProperty needs to be set or we get NPE in the test cases. A few other changes were made to clear up deprecation warnings. | 06 October 2017, 16:47:29 UTC |
refs/tags/v1.6.0-rc.9 | 44e2f58 | ensure batches are regularly pushed (#814) For smaller deployments it would take time to fill up the entire batch causing a significant delay in the publishing. Now it will flush based on the age even if the batch is not yet full. | 04 April 2018, 16:13:40 UTC |
refs/tags/v1.6.1 | a9b2821 | 1.6: update to scala 2.13.0 final (#1053) | 13 June 2019, 15:44:32 UTC |
refs/tags/v1.6.2 | 2b0996e | fix build settings for 2.13 to use `-release 8` (#1055) Before it was looking specifically for version 12. For now we still need to be able to run on jdk8+. The specific issue encountered was: ``` java.lang.NoSuchMethodError: java.nio.CharBuffer.clear()Ljava/nio/CharBuffer; at com.netflix.atlas.core.model.TaggedItem$.writePair(TaggedItem.scala:59) at com.netflix.atlas.core.model.TaggedItem$.computeId(TaggedItem.scala:105) at com.netflix.atlas.core.model.TimeSeries$.<clinit>(TimeSeries.scala:22) at com.netflix.atlas.core.model.EvalContext.<init>(EvalContext.scala:32) at com.netflix.atlas.druid.DruidDatabaseActorSuite.<init>(DruidDatabaseActorSuite.scala:259) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at java.lang.Class.newInstance(Class.java:442) ``` Also improves the check for recent JDKs. | 13 June 2019, 17:38:02 UTC |
refs/tags/v1.6.3 | 8d5eb41 | switch to discovery.status metric for eureka-avg (#1081) Backport of #1039. This is a newer version that avoids the need for regex and follows current conventions. | 27 August 2019, 21:13:44 UTC |
refs/tags/v1.6.4 | cbe7cf2 | update launcher url to use HTTPS (#1142) Bintray now requires HTTPS for downloading the artifacts. Also bump to the latest version. | 06 February 2020, 15:44:31 UTC |
refs/tags/v1.6.5 | d98af21 | update to latest jackson version (#1172) Update to latest jackson version to pick up security fixes. | 04 May 2020, 13:58:09 UTC |
refs/tags/v1.6.6 | ce18de5 | 1.6: update dependencies (#1187) | 26 June 2020, 03:21:36 UTC |
refs/tags/v1.6.7 | 2c50898 | 1.6: fix shard lookup for Integer.MIN_VALUE (#1459) Back port of #1452. Before it was relying on `abs` to get a non-negative value for computing an index to the array. This breaks when the int value of the id is `Integer.MIN_VALUE`. Update it to explicitly clear the sign bit to ensure the value will always be non-negative. | 01 September 2022, 11:56:16 UTC |
refs/tags/v1.6.7-rc.1 | a777dfc | 1.6: add action workflows (#1457) | 01 September 2022, 00:16:08 UTC |
refs/tags/v1.6.7-rc.2 | 2c50898 | 1.6: fix shard lookup for Integer.MIN_VALUE (#1459) Back port of #1452. Before it was relying on `abs` to get a non-negative value for computing an index to the array. This breaks when the int value of the id is `Integer.MIN_VALUE`. Update it to explicitly clear the sign bit to ensure the value will always be non-negative. | 01 September 2022, 11:56:16 UTC |
refs/tags/v1.7.0 | edf822d | update dependencies (#1525) | 01 March 2023, 13:01:35 UTC |
refs/tags/v1.7.0-rc.1 | 4be162e | jackson 2.9.10 (#1089) Fixes serialization issue with case objects on scala 2.13. | 23 September 2019, 14:05:13 UTC |
refs/tags/v1.7.0-rc.10 | 9c62df6 | include tags in validation result responses (#1203) Metrics are typically submitted in large batches and without this context it can be difficult for users to narrow it down to particular data points that are problematic. Sample of updated response: ```json { "type": "partial", "errorCount": 1, "message": [ "invalid characters in value: name = [answerTo Everything] ([--.0-9A-Z^_a-z~] are allowed) (tags={\"nf.node\":\"i-123\",\"atlas.dstype\":\"gauge\",\"name\":\"answerTo Everything\"})" ] } ``` Fixes #1199 | 03 September 2020, 18:42:29 UTC |
refs/tags/v1.7.0-rc.11 | 3ecef1c | quote special double values for all json formats (#1213) Updates the `json` and `stats.json` formats to output standard json data. Before special double values like NaN and Infinity were emitted without qoutes breaking some systems that expected standard json. This should make them more straightforward to consume, however it is a potentially breaking change for some users. Fixes #1080 | 15 October 2020, 16:23:56 UTC |
refs/tags/v1.7.0-rc.12 | 72544e7 | eval: use BroadcastHub instead of Publisher (#1217) Updates the queue source used for writing diagnostic messages to use a BroadcastHub instead of Publisher. The main reason is that under newer versions of akka there is a 5s subscription timeout for the underlying FanoutProcessor created with the Publisher. All other users of `asPublisher` were also converted unless the `Publisher` type was explicitly needed as part of the public API for the method. | 30 October 2020, 13:35:43 UTC |
refs/tags/v1.7.0-rc.13 | 690d6ce | add topk/bottomk that aggregates others (#1248) Fixes #1224. Adds variants of topk/bottomk that in addition to computing the highest priority values will also return an aggregate time series that includes all of the other time series that were not high enough priority. This can be useful to see what proportion of the overall volume is represented by the highest priority time series. The operators have the same signature as `:topk` and `:bottomk`, but the aggregation to use is specified in the operator name. There are four aggregates supported: - min - max - sum - avg Count was not included as an aggregate because it could be ambiguous and does not seem useful. As part of this work there was some refactoring of the existing aggregation operations to make the count case more consistent. | 02 February 2021, 19:53:13 UTC |
refs/tags/v1.7.0-rc.14 | 828b3b4 | re-enable doc artifacts (#1271) They were disabled due to a bug, but looks like it has been fixed. Fixed a number of scaladoc errors to get the build clean. Error from publishing attempt without docs: ``` Failed: javadoc-staging, failureMessage:Missing: no javadoc jar found in folder '/com/netflix/atlas_v1/atlas-module-lwcapi_2.13/1.7.0-rc.14' ``` | 03 March 2021, 20:12:00 UTC |
refs/tags/v1.7.0-rc.15 | d4cf25f | eval: reduce parsing of data exprs (#1316) Make the parsed expression a lazy val and reuse the first instance for a given id to minimize the number of times a data expression needs to be fully processed. Before it occur for each expression from each server. | 03 June 2021, 15:49:40 UTC |
refs/tags/v1.7.0-rc.16 | 44ab442 | reduce array allocations for encoding batch (#1325) Use `fromArrayUnsafe` to avoid copying the byte array used by the ByteString object. | 10 June 2021, 14:45:39 UTC |
refs/tags/v1.7.0-rc.17 | 9433bdd | eval: properly handle non-strict messages (#1335) In cases where the message from the websocket was not strict, the source from the parsed batch wasn't getting flattend properly and the batch would get ignored later because it wasn't a recognized message type. | 09 September 2021, 00:58:40 UTC |
refs/tags/v1.7.0-rc.18 | 3bf2e87 | add jdk17 to PR validation (#1353) Drop jdk16 and add jdk17 for PR builds. | 06 October 2021, 20:12:44 UTC |
refs/tags/v1.7.0-rc.19 | 1f49480 | Common-group-by operator (#1377) This adds a common-group-by operator (`:cg`) that includes additional keys in group-by clauses. ``` name,foo,:eq,(,a,b,),:by, name,bar,:eq,(,b,),:by,:div, name,baz,:eq,:mul, (,c,d,),:cg ``` Gets rewritten to: ``` name,foo,:eq,(,a,b,c,d,),:by, name,bar,:eq,(,b,c,d,),:by,:div, name,baz,:eq,(,c,d,),:by,:mul ``` Fixes #1354 Co-authored-by: Brian Harrington <brharrington@gmail.com> | 03 November 2021, 14:58:31 UTC |
refs/tags/v1.7.0-rc.2 | dfc8597 | add options to tune request handler (#1100) There are options now to disable automatic handling of compression and whether or not to setup access logging. For high volume services the automatic compression results in a lot of allocations for intermediate ByteStrings. The json directives will not automatically wrap with a GZIPInputStream if the data is GZIP compressed. For some services this drastically reduces the allocation rate. | 23 October 2019, 21:52:41 UTC |
refs/tags/v1.7.0-rc.20 | fdfa1dd | eval: add explicit data volume limits (#1397) Adds an `atlas.eval.limits` config block that can be used to configure the max number of input or intermediate datapoints for a given interval. Fixes #1355 Co-authored-by: lavanya chennupati <lchennupati@netflix.com> | 24 January 2022, 13:49:20 UTC |
refs/tags/v1.7.0-rc.21 | 252618b | reduce allocations for datapoint aggregators (#1414) Before the counter and associated id was being created each time an aggregator instance was. Now it is part of a settings object which can be reused. The aggregators have also been refactored a bit to reduce code duplication. | 09 February 2022, 18:51:48 UTC |
refs/tags/v1.7.0-rc.22 | 3f92628 | use sorted map when decoding tags (#1436) This is typically more efficient overall as it avoids the need to sort multiple times later on. For example, in publish the sort is needed for computing the ids and then ends up getting performed again to encode as a compact batch. | 18 April 2022, 19:56:17 UTC |
refs/tags/v1.7.0-rc.23 | c5681f0 | update dependencies (#1441) | 04 May 2022, 18:19:53 UTC |
refs/tags/v1.7.0-rc.24 | 3623642 | fix cg with custom averages (#1444) The subset check for nested grouping would check all data expressions. If the underlying expression was combined with binary operations with the grouping for one side being a subset of the other, then a subsequent grouping operation could fail the check. Now it checks based on the final grouping of the pre-aggregate. | 16 May 2022, 17:56:00 UTC |
refs/tags/v1.7.0-rc.25 | 8c92e94 | fix `:cg` with non-grouped math aggregate (#1445) If there was an aggregation of a group by result that was not grouped, then it was not getting the common grouping applied. | 24 May 2022, 17:15:05 UTC |
refs/tags/v1.7.0-rc.26 | 5a547c8 | update dependencies (#1453) | 08 August 2022, 22:30:35 UTC |
refs/tags/v1.7.0-rc.27 | 18a2c6d | fix typo in config method name (#1460) | 01 September 2022, 16:09:51 UTC |
refs/tags/v1.7.0-rc.28 | 82b412f | lwcapi: only update subscription list on changes (#1491) Creating the full list of of all subscriptions can be expensive when there are a lot of expressions. Update it to only be done when there are changes the same as the query index update. | 14 November 2022, 16:58:34 UTC |
refs/tags/v1.7.0-rc.29 | ae06f6b | flush meters when a time grouping is emitted (#1496) When TimeGrouped flushes a finalized time grouping also have it explicitly flush the batch meter updaters. This avoids the counts potentially showing up much later due to a low rate. | 21 November 2022, 19:48:43 UTC |
refs/tags/v1.7.0-rc.3 | f1d110e | simplify condition for isRestricted (#1112) The prefixes list is not used anywhere and it is faster as a simple condition. | 02 December 2019, 19:49:35 UTC |
refs/tags/v1.7.0-rc.30 | 3fe64d9 | dedup query clauses during normalization (#1502) Update the normalization logic to deduplicate the same query clause within an conjunction. Also deduplicates terms within an IN clause and maps to an equals check if there is a single term. | 14 December 2022, 01:24:48 UTC |
refs/tags/v1.7.0-rc.31 | c2dd5c3 | remove redundant clauses when normalizing (#1505) In some cases with tooling a `:cq` can get applied multiple times. If the common query condition has an OR clause, then that will get expanded with the cross product when computing the DNF. As a result, the normalized query resulting from applying a `:cq` once would differ from applying the same `:cq` multiple times. This change removes redundant clauses from the normalized OR set to avoid the discrepancy. Redundant means that the removed clause will not change the result since another branch of the OR would have matched. | 14 December 2022, 23:59:05 UTC |
refs/tags/v1.7.0-rc.4 | 1ee176f | adjust default serialization for java.time (#1144) Set the default serialization to use millisecond timestamps. This keeps it more consistent with other usage in Atlas. | 11 February 2020, 17:22:15 UTC |
refs/tags/v1.7.0-rc.5 | 832e827 | atlas-eval: expose flow api to maximize throughput (#1154) Converting to Processor disables operator fusion at the boundary, and reduces overall throughput. This change exposes the Flow directly and enables operator fusion optimization, and downstream delay of the boundary reduced from hundreds of microseconds to tens of microseconds. | 18 March 2020, 12:12:09 UTC |
refs/tags/v1.7.0-rc.6 | 3e1aa52 | fix logic for skipNext (#1162) The `skipNext` helper did not work correctly in the case of some complex objects with nested arrays. This change fixes the logic and adds more extensive testing with randomly generated JSON objects. | 27 March 2020, 22:51:53 UTC |
refs/tags/v1.7.0-rc.7 | 8a41771 | atlas-eval: fix eval flow failure on lwc instance removal (#1165) Currently the whole eval flow may fail when a lwc instance is removed. There's a subflow for lwc api call of each lwc instance, and that subflow is wrapped around by "RestartFlow" to enable auto-retry. The subflow is finished from upstream when a lwc instance is removed, and upstream of RestartFlow is finished, RestartFlow finishes and propagate the failure from the current ongoing attempt if any, to downstream, and eventually propagate to main flow. The fix is to have downstream of RestartFlow suppress the failure, since the failure is expected and can be ignored on lwc instance removal. | 02 April 2020, 22:14:21 UTC |
refs/tags/v1.7.0-rc.8 | f096a18 | use jdk14 for travis build (#1174) OpenJDK14 has changes to font rendering that make it compatible with the lastest Zulu JDK11 we use internally. | 05 May 2020, 16:15:14 UTC |
refs/tags/v1.7.0-rc.9 | 2887b4b | reduce allocations for asJavaMap.entrySet (#1197) Updates the `SmallHashMap.asJavaMap` implementation to override `entrySet()`. The new implementation avoids allocations for each item in the map. **Throughput** | Benchmark | Before | After | % Delta | |----------------------|---------------|---------------|---------| | customEntrySet | 8,400,934.3 | 13,480,190.3 | 60.5 | **Allocations** | Benchmark | Before | After | % Delta | |----------------------|---------------|---------------|---------| | customEntrySet | 296.0 | 24.0 | -91.9 | | 07 August 2020, 23:52:44 UTC |
refs/tags/v1.7.1 | c366321 | ci: enable snapshots for version branches (#1537) Backport of #1536. | 03 April 2023, 14:10:48 UTC |
refs/tags/v1.7.2 | 39561db | 1.7: update to jackson 2.15 (#1552) | 09 May 2023, 21:34:08 UTC |
refs/tags/v1.7.3 | 9cbe657 | eval: fix aggr for group by with gauges (#1556) The `atlas.aggr` key was included when grouping the datapoints which caused values for the same key to go to separate buckets. | 24 May 2023, 13:08:35 UTC |
refs/tags/v1.7.4 | 3931876 | eval: ensure exprs are resent on reconnect (#1558) If the websocket to an lwcapi node fails and needs to reconnect, then the message with the set of expressions needs to be resent. Before this would only happen when there was a change in either the set of remote instances or the set of expressions. With this change, the set of expressions will get repeated every 5s so it will get resent on a reconnect. Note, the websocket sub-flow already has some deduping if there is no change, so the additional overhead during normal operations is minimal. If there is a failure, then the sub-flow will get restarted and the state for the `unique` operator will get reset allowing the repeated expression message through. | 30 May 2023, 13:57:56 UTC |
refs/tags/v1.7.5 | 4720431 | akka 2.6.21 (#1566) Pull in fix for spin loop in TLSActor. Backport of #1565. | 21 June 2023, 16:31:22 UTC |
refs/tags/v1.7.6 | 5c3704b | 1.7: migrate from akka to pekko (#1576) | 15 September 2023, 22:20:40 UTC |
refs/tags/v1.7.7 | acab86a | 1.7 eval: preserve state with multi-level grouping (#1580) When executing an expression in a streaming context, stateful operators used as input to a second level grouping were not preserving the state. Backport of #1579. | 19 September 2023, 23:06:58 UTC |
refs/tags/v1.7.8 | 3144d87 | 1.7.x: add default values for interpreter execute (#1598) Update interpreter API to be more consistent with recent changes in 1.8. | 10 January 2024, 22:32:52 UTC |
refs/tags/v1.8.0-rc.1 | 3e5fe07 | add log-linear scale type (#1548) It behaves like a log scale for powers of 10 with linear behavior in between. This helps spread out the smaller values. This can be useful for things like a heatmap view of percentile distributions. | 01 May 2023, 18:00:08 UTC |
refs/tags/v1.8.0-rc.10 | fc5797e | eval: fix test case for trace time series (#1642) Update test case to have the correct expression for a trace time series subscription response. | 29 March 2024, 17:16:41 UTC |
refs/tags/v1.8.0-rc.11 | 875a7f6 | lwcapi: fix status code for event without id (#1649) If an event is sent to `/evaluate` without an id, respond with a 400 error instead of 500. | 03 April 2024, 12:30:43 UTC |
refs/tags/v1.8.0-rc.12 | aa364b7 | eval: use `ip` variable when creating web-socket (#1650) Remove references to instance-uri for the backend that are not used. Use the `ip` variable so it will work with IPv4 or IPv6. | 03 April 2024, 15:34:39 UTC |
refs/tags/v1.8.0-rc.13 | c75e8fb | lwc-events: support enums as tag values (#1652) Add support for mapping Java Enum types to tag string values. | 10 April 2024, 21:16:09 UTC |
refs/tags/v1.8.0-rc.14 | f50992c | roaringbitmap 1.0.6 (#1655) Pull in fix for ORing run containers. | 29 April 2024, 23:29:04 UTC |
refs/tags/v1.8.0-rc.15 | 2216b69 | json: allow mapper to be customized (#1656) Provide method that can be used to customize the mapper. This should be used carefully as it will impact all uses of `Json` and could break other aspects that rely on the default behavior. | 06 May 2024, 14:39:42 UTC |
refs/tags/v1.8.0-rc.16 | 647a464 | update dependencies (#1662) | 22 May 2024, 22:22:49 UTC |
refs/tags/v1.8.0-rc.17 | bf81f55 | lwc-events: support duration for default value (#1670) When wrapping timer events it can be useful for the default value to be a duration for mapping to percentile timer type. | 23 June 2024, 21:08:40 UTC |
refs/tags/v1.8.0-rc.18 | 055b549 | lwc-events: add pre-filter method for events (#1672) Add `couldMatch` method to the client to allow for filtering our some data early if it requires an expensive transform to generate the final event. | 10 July 2024, 15:46:53 UTC |
refs/tags/v1.8.0-rc.2 | 6ce80af | add spring-lwc-events project to aggregate (#1554) It was overlooked and not getting published. | 17 May 2023, 00:15:34 UTC |