Bot releases are visible (Hide)
Published by joe-elliott about 2 years ago
Two Parquet stability improvements
Published by grafanabot about 2 years ago
Published by grafanabot about 2 years ago
tempodb_(gcs|s3|azure)_request_duration_seconds
have been removed in favor of tempodb_backend_request_duration_seconds
.instance
to __metrics_gen_instance
to reduce collisions with custom dimensions. #1439 (@joe-elliott)max_bytes_per_tag_values_query
when set to 0. #1447 (@joe-elliott)/status
endpoint. #1474 (@annanay25)traces_spanmetrics_duration_seconds_{sum,count,bucket}
New metric names:
traces_spanmetrics_latency_{sum,count,bucket}
Additionally, default label span_status
is renamed to status_code
.
querier:
search:
external_hedge_requests_at: 4s -> 8s
external_hedge_requests_up_to: 3 -> 2
_config+:: {
metrics_generator+: {
ephemeral_storage_request_size: '10Gi',
ephemeral_storage_limit_size: '11Gi',
},
}
log_received_traces
as deprecated. New flag is log_received_spans
.insecure_skip_verify
#1470 (@zalegrala)blocklist_poll_jitter_ms
#1518 (@joe-elliott)tempo_querier_external_endpoint_hedged_roundtrips_total
to count the total hedged requests #1558 (@joe-elliott)tempodb_(gcs|s3|azure)_request_duration_seconds
in favor of tempodb_backend_request_duration_seconds
. These metricsroot.name
and root.service.name
#1589 (@kvrhdn)Published by github-actions[bot] over 2 years ago
compaction_objects_combined_total
and tempo_discarded_spans_total{reason="trace_too_large_to_compact"}
metrics again 1420 (@mdisibio)shutdown
to forwarder's queueManager 1422 (@mapno)Published by github-actions[bot] over 2 years ago
search
block: #1350 (@joe-elliott)
querier:
search_query_timeout: 30s
search_external_endpoints: []
search_prefer_self: 2
becomes
querier:
search:
query_timeout: 30s
prefer_self: 2
external_endpoints: []
tempo-search-retention-duration
parameter on the vulture. #1297 (@joe-elliott)search_prefer_self
to allow the queriers to do some work while also leveraging serverless in search. #1307 (@joe-elliott)max_bytes_per_trace
during compaction #1317 (@joe-elliott)max_bytes_per_trace
and added skippedTraces
to returned search metrics. #1318 (@joe-elliott)trace too large message
. #1385 (@cristiangsp)querier:
search:
external_hedge_requests_at: 5s
external_hedge_requests_up_to: 3
storage:
trace:
wal:
ingestion_time_range_slack: 2m0s
tempo_warnings_total{reason="outside_ingestion_time_slack"}
-storage.trace.azure.storage-account-name
and -storage.trace.s3.access_key
to no longer to be considered as secrets #1356 (@simonswine)Published by github-actions[bot] over 2 years ago
search
block: #1350 (@joe-elliott)
querier:
search_query_timeout: 30s
search_external_endpoints: []
search_prefer_self: 2
becomes
querier:
search:
query_timeout: 30s
prefer_self: 2
external_endpoints: []
tempo-search-retention-duration
parameter on the vulture. #1297 (@joe-elliott)search_prefer_self
to allow the queriers to do some work while also leveraging serverless in search. #1307 (@joe-elliott)max_bytes_per_trace
during compaction #1317 (@joe-elliott)max_bytes_per_trace
and added skippedTraces
to returned search metrics. #1318 (@joe-elliott)trace too large message
. #1385 (@cristiangsp)querier:
search:
external_hedge_requests_at: 5s
external_hedge_requests_up_to: 3
storage:
trace:
wal:
ingestion_time_range_slack: 2m0s
tempo_warnings_total{reason="outside_ingestion_time_slack"}
-storage.trace.azure.storage-account-name
and -storage.trace.s3.access_key
to no longer to be considered as secrets #1356 (@simonswine)Published by github-actions[bot] over 2 years ago
Published by github-actions[bot] over 2 years ago
This release updates OpenTelemetry libraries version to v0.40.0, and with that, it updates OTLP gRPC's default listening port from the legacy 55680
to the new 4317
. There are two main routes to avoid downtime: configuring the receiver to listen in the old port 55680
and/or pushing traces to both ports simultaneously until the rollout is complete.
As part of adding support for full backend search, a search config parameter has had its name change from query_frontend.search.max_result_limit
to query_frontend.search.default_result_limit
.
querier.search_max_result_limit
and querier.search_default_result_limit
to query_frontend.search.max_result_limit
and query_frontend.search.default_result_limit
#1174.upto
parameter on hedged requests for each backend with hedge_requests_up_to
. #1085](https://github.com/grafana/tempo/pull/1085) (@joe-elliott)$._config.namespace
to filter by namespace in cortex metrics #1098 (@mapno)Tempo / Writes
dashboard #1137 (@kvrhdn)tempodb_compaction_outstanding_blocks
metric to measure compaction load #1143 (@mapno)TempoIngesterFlushesFailing
alert more actionable #1157 (@dannykopping)tempo_ingester_live_traces
metric #1170 (@mdisibio)slice bounds out of range
#1195 (@mdisibio)max_bytes_per_tag_values_query
to limit the size of tag-values response. #1068 (@annanay25)ingester.max-search-bytes-per-trace
default to 5KB #1129 @annanay25Push
from tempopb.Pusher
#1173 (@kvrhdn)1.33.3
=> 1.38.0
broke compatibility with gogoproto.customtype
. Enforce the use of gogoproto marshalling/unmarshalling for Tempo, Cortex & Jaeger structs. #1186 (@annanay25)Published by mapno almost 3 years ago
This release updates OpenTelemetry libraries version to v0.40.0, and with that, it updates OTLP gRPC's default listening port from the legacy 55680
to the new 4317
. There are two main routes to avoid downtime: configuring the receiver to listen in the old port 55680
and/or pushing traces to both ports simultaneously until the rollout is complete.
As part of adding support for full backend search, a search config parameter has had its name change from query_frontend.search.max_result_limit
to query_frontend.search.default_result_limit
.
querier.search_max_result_limit
and querier.search_default_result_limit
to query_frontend.search.max_result_limit
and query_frontend.search.default_result_limit
#1174.upto
parameter on hedged requests for each backend with hedge_requests_up_to
. #1085](https://github.com/grafana/tempo/pull/1085) (@joe-elliott)$._config.namespace
to filter by namespace in cortex metrics #1098 (@mapno)Tempo / Writes
dashboard #1137 (@kvrhdn)tempodb_compaction_outstanding_blocks
metric to measure compaction load #1143 (@mapno)TempoIngesterFlushesFailing
alert more actionable #1157 (@dannykopping)tempo_ingester_live_traces
metric #1170 (@mdisibio)slice bounds out of range
#1195 (@mdisibio)max_bytes_per_tag_values_query
to limit the size of tag-values response. #1068 (@annanay25)ingester.max-search-bytes-per-trace
default to 5KB #1129 @annanay25Push
from tempopb.Pusher
#1173 (@kvrhdn)1.33.3
=> 1.38.0
broke compatibility with gogoproto.customtype
. Enforce the use of gogoproto marshalling/unmarshalling for Tempo, Cortex & Jaeger structs. #1186 (@annanay25)Published by github-actions[bot] almost 3 years ago
This patch contains two important bug fixes and is recommended for all users running v1.2.0.
Published by github-actions[bot] almost 3 years ago
This release contains a number of small breaking changes. They will likely have no impact on your deployment, but it should be noted that due to a change in the API between the query-frontend and querier there may be a temporary read outage during deployment.
/runtime_config
moved to /status/runtime_config
/config
moved to /status/config
/services
moved to /status/services
ingester_bytes_metric_total
in favor of ingester_bytes_received_total
#979 (@mapno)--storage.trace.maintenance-cycle
to --storage.trace.blocklist_poll
. This is a BREAKING CHANGE #897 (@mritunjaysharma394)GET /querier/api/traces/<traceid>
response's body has been modifiedtempopb.TraceByIDResponse
instead of simply tempopb.Trace
. This will cause a disruption of the read path during rollout of the change.cortex_runtime_config_last_reload_successful
to tempo_runtime_config_last_reload_successful
#945 (@kavirajk)trace too large message
. #888 (@mritunjaysharma394)overrides
from single configmap in microservice mode. #896 (@kavirajk)ingester:
trace_idle_period: 30s => 10s # reduce ingester memory requirements with little impact on querying
flush_check_period: 30s => 10s
query_frontend:
query_shards: 2 => 20 # will massively improve performance on large installs
storage:
trace:
wal:
encoding: none => snappy # snappy has been tested thoroughly and ready for production use
block:
bloom_filter_false_positive: .05 => .01 # will increase total bloom filter size but improve query performance
bloom_filter_shard_size_bytes: 256KiB => 100 KiB # will improve query performance
compactor:
compaction:
chunk_size_bytes: 10 MiB => 5 MiB # will reduce compactor memory needs
compaction_window: 4h => 1h # will allow more compactors to participate in compaction without substantially increasing blocks
gen index
and gen bloom
commands to tempo-cli. #903 (@annanay25)tempo_distributor_push_duration_seconds
#1027 (@zalegrala)span.kind
to client
in query-frontend #975 (@mapno)tempodb_backend_hedged_roundtrips_total
to correctly count hedged roundtrips. #1079 (@joe-elliott)job_selectors
and cluster_selectors
for configurable unique identifier labels #935 (@kevinschoonover)server.grpc_server_max_recv_msg_size
and server.grpc_server_max_send_msg_size
when handling large traces #1023 (@thejosephstevens)Published by github-actions[bot] almost 3 years ago
This release contains a number of small breaking changes. They will likely have no impact on your deployment, but it should be noted that due to a change in the API between the query-frontend and querier there may be a temporary read outage during deployment.
/runtime_config
moved to /status/runtime_config
/config
moved to /status/config
/services
moved to /status/services
ingester_bytes_metric_total
in favor of ingester_bytes_received_total
#979 (@mapno)--storage.trace.maintenance-cycle
to --storage.trace.blocklist_poll
. This is a BREAKING CHANGE #897 (@mritunjaysharma394)GET /querier/api/traces/<traceid>
response's body has been modifiedtempopb.TraceByIDResponse
instead of simply tempopb.Trace
. This will cause a disruption of the read path during rollout of the change.cortex_runtime_config_last_reload_successful
to tempo_runtime_config_last_reload_successful
#945 (@kavirajk)trace too large message
. #888 (@mritunjaysharma394)overrides
from single configmap in microservice mode. #896 (@kavirajk)ingester:
trace_idle_period: 30s => 10s # reduce ingester memory requirements with little impact on querying
flush_check_period: 30s => 10s
query_frontend:
query_shards: 2 => 20 # will massively improve performance on large installs
storage:
trace:
wal:
encoding: none => snappy # snappy has been tested thoroughly and ready for production use
block:
bloom_filter_false_positive: .05 => .01 # will increase total bloom filter size but improve query performance
bloom_filter_shard_size_bytes: 256KiB => 100 KiB # will improve query performance
compactor:
compaction:
chunk_size_bytes: 10 MiB => 5 MiB # will reduce compactor memory needs
compaction_window: 4h => 1h # will allow more compactors to participate in compaction without substantially increasing blocks
gen index
and gen bloom
commands to tempo-cli. #903 (@annanay25)tempo_distributor_push_duration_seconds
#1027 (@zalegrala)span.kind
to client
in query-frontend #975 (@mapno)tempodb_backend_hedged_roundtrips_total
to correctly count hedged roundtrips. #1079 (@joe-elliott)job_selectors
and cluster_selectors
for configurable unique identifier labels #935 (@kevinschoonover)server.grpc_server_max_recv_msg_size
and server.grpc_server_max_send_msg_size
when handling large traces #1023 (@thejosephstevens)Published by github-actions[bot] almost 3 years ago
This release contains a number of small breaking changes. They will likely have no impact on your deployment, but it should be noted that due to a change in the API between the query-frontend and querier there may be a temporary read outage during deployment.
/runtime_config
moved to /status/runtime_config
/config
moved to /status/config
/services
moved to /status/services
ingester_bytes_metric_total
in favor of ingester_bytes_received_total
#979 (@mapno)--storage.trace.maintenance-cycle
to --storage.trace.blocklist_poll
. This is a BREAKING CHANGE #897 (@mritunjaysharma394)GET /querier/api/traces/<traceid>
response's body has been modifiedtempopb.TraceByIDResponse
instead of simply tempopb.Trace
. This will cause a disruption of the read path during rollout of the change.cortex_runtime_config_last_reload_successful
to tempo_runtime_config_last_reload_successful
#945 (@kavirajk)trace too large message
. #888 (@mritunjaysharma394)overrides
from single configmap in microservice mode. #896 (@kavirajk)ingester:
trace_idle_period: 30s => 10s # reduce ingester memory requirements with little impact on querying
flush_check_period: 30s => 10s
query_frontend:
query_shards: 2 => 20 # will massively improve performance on large installs
storage:
trace:
wal:
encoding: none => snappy # snappy has been tested thoroughly and ready for production use
block:
bloom_filter_false_positive: .05 => .01 # will increase total bloom filter size but improve query performance
bloom_filter_shard_size_bytes: 256KiB => 100 KiB # will improve query performance
compactor:
compaction:
chunk_size_bytes: 10 MiB => 5 MiB # will reduce compactor memory needs
compaction_window: 4h => 1h # will allow more compactors to participate in compaction without substantially increasing blocks
gen index
and gen bloom
commands to tempo-cli. #903 (@annanay25)tempo_distributor_push_duration_seconds
#1027 (@zalegrala)span.kind
to client
in query-frontend #975 (@mapno)tempodb_backend_hedged_roundtrips_total
to correctly count hedged roundtrips. #1079 (@joe-elliott)job_selectors
and cluster_selectors
for configurable unique identifier labels #935 (@kevinschoonover)server.grpc_server_max_recv_msg_size
and server.grpc_server_max_send_msg_size
when handling large traces #1023 (@thejosephstevens)Published by github-actions[bot] about 3 years ago
This release deprecates some internal data formats from prerelease versions of Tempo. If upgrading from Tempo v0.6.0 or earlier, then see the special upgrade instructions below. Tempo v0.7.0 and later have no compatibility issues or special instructions.
Tempo v0.6.0 and earlier used block formats v0 and v1, which are being deprecated, and support for these blocks will be removed in the next release. To resolve this you must first upgrade to Tempo 0.7.0+ (latest 1.1 is recommended) which introduces the supported v2 block format. Tempo will write all new blocks as v2, and it must continue running until all v0 and v1 blocks are gone (either deleted due to retention, or compacted). Block versions can be checked using the tempo-cli list blocks command.
[FEATURE] Added the ability to hedge requests with all backends #750 (@joe-elliott)
[FEATURE] Added a tenant index to reduce bucket polling. #834 (@joe-elliott)
[ENHANCEMENT] Added hedged request metric tempodb_backend_hedged_roundtrips_total and a new storage agnostic tempodb_backend_request_duration_seconds metric that supersedes the soon-to-be deprecated storage specific metrics (tempodb_azure_request_duration_seconds, tempodb_s3_request_duration_seconds and tempodb_gcs_request_duration_seconds). #790 (@JosephWoodward)
[ENHANCEMENT] Performance: improve compaction speed with concurrent reads and writes #754 (@mdisibio)
[ENHANCEMENT] Improve readability of cpu and memory metrics on operational dashboard #764 (@bboreham)
[ENHANCEMENT] Add azure_request_duration_seconds metric. #767 (@JosephWoodward)
[ENHANCEMENT] Add s3_request_duration_seconds metric. #776 (@JosephWoodward)
[ENHANCEMENT] Add tempo_ingester_flush_size_bytes metric. #777 (@bboreham)
[ENHANCEMENT] Microservices jsonnet: resource requests and limits can be set in $._config. #793 (@kvrhdn)
[ENHANCEMENT] Add -config.expand-env cli flag to support environment variables expansion in config file. #796 (@Ashmita152)
[ENHANCEMENT] Add ability to control bloom filter caching based on age and/or compaction level. Add new cli command list cache-summary. #805 (@annanay25)
[ENHANCEMENT] Emit traces for ingester flush operations. #812 (@bboreham)
[ENHANCEMENT] Add retry middleware in query-frontend. #814 (@kvrhdn)
[ENHANCEMENT] Add -use-otel-tracer to use the OpenTelemetry tracer, this will also capture traces emitted by the gcs sdk. Experimental: not all features are supported (i.e. remote sampling). #842 (@kvrhdn)
[ENHANCEMENT] Add /services endpoint. #863 (@kvrhdn)
[ENHANCEMENT] Added "query blocks" cli option. #876 (@joe-elliott)
[ENHANCEMENT] Added traceid to trace too large message
. #888 (@mritunjaysharma394)
[ENHANCEMENT] Reduce compactor memory usage by forcing garbage collection. #915 (@joe-elliott)
[BUGFIX] Allow only valid trace ID characters when decoding #854 (@zalegrala)
[BUGFIX] Queriers complete one polling cycle before finishing startup. #834 (@joe-elliott)
[BUGFIX] Update port spec for GCS docker-compose example #869 (@zalegrala)
[BUGFIX] Cortex upgrade to fix an issue where unhealthy compactors can't be forgotten #878 (@joe-elliott)
[CHANGE] Upgrade Cortex from v1.9.0 to v1.9.0-131-ga4bf10354 #841 (@aknuds1)
[CHANGE] Change example default tempo port from 3100 to 3200 #770 (@MurzNN)
[CHANGE] Jsonnet: use dedicated configmaps for distributors and ingesters #775 (@kvrhdn)
[CHANGE] Docker images are now prefixed by their branch name #828 (@jvrplmlmn)
Published by github-actions[bot] about 3 years ago
This release deprecates some internal data formats from prerelease versions of Tempo. If upgrading from Tempo v0.6.0 or earlier, then see the special upgrade instructions below. Tempo v0.7.0 and later have no compatibility issues or special instructions.
Tempo v0.6.0 and earlier used block formats v0 and v1, which are being deprecated, and support for these blocks will be removed in the next release. To resolve this you must first upgrade to Tempo 0.7.0+ (latest 1.1 is recommended) which introduces the supported v2 block format. Tempo will write all new blocks as v2, and it must continue running until all v0 and v1 blocks are gone (either deleted due to retention, or compacted). Block versions can be checked using the tempo-cli list blocks command.
[FEATURE] Added the ability to hedge requests with all backends #750 (@joe-elliott)
[FEATURE] Added a tenant index to reduce bucket polling. #834 (@joe-elliott)
[ENHANCEMENT] Added hedged request metric tempodb_backend_hedged_roundtrips_total and a new storage agnostic tempodb_backend_request_duration_seconds metric that supersedes the soon-to-be deprecated storage specific metrics (tempodb_azure_request_duration_seconds, tempodb_s3_request_duration_seconds and tempodb_gcs_request_duration_seconds). #790 (@JosephWoodward)
[ENHANCEMENT] Performance: improve compaction speed with concurrent reads and writes #754 (@mdisibio)
[ENHANCEMENT] Improve readability of cpu and memory metrics on operational dashboard #764 (@bboreham)
[ENHANCEMENT] Add azure_request_duration_seconds metric. #767 (@JosephWoodward)
[ENHANCEMENT] Add s3_request_duration_seconds metric. #776 (@JosephWoodward)
[ENHANCEMENT] Add tempo_ingester_flush_size_bytes metric. #777 (@bboreham)
[ENHANCEMENT] Microservices jsonnet: resource requests and limits can be set in $._config. #793 (@kvrhdn)
[ENHANCEMENT] Add -config.expand-env cli flag to support environment variables expansion in config file. #796 (@Ashmita152)
[ENHANCEMENT] Add ability to control bloom filter caching based on age and/or compaction level. Add new cli command list cache-summary. #805 (@annanay25)
[ENHANCEMENT] Emit traces for ingester flush operations. #812 (@bboreham)
[ENHANCEMENT] Add retry middleware in query-frontend. #814 (@kvrhdn)
[ENHANCEMENT] Add -use-otel-tracer to use the OpenTelemetry tracer, this will also capture traces emitted by the gcs sdk. Experimental: not all features are supported (i.e. remote sampling). #842 (@kvrhdn)
[ENHANCEMENT] Add /services endpoint. #863 (@kvrhdn)
[ENHANCEMENT] Added "query blocks" cli option. #876 (@joe-elliott)
[ENHANCEMENT] Added traceid to trace too large message
. #888 (@mritunjaysharma394)
[BUGFIX] Allow only valid trace ID characters when decoding #854 (@zalegrala)
[BUGFIX] Queriers complete one polling cycle before finishing startup. #834 (@joe-elliott)
[BUGFIX] Update port spec for GCS docker-compose example #869 (@zalegrala)
[BUGFIX] Cortex upgrade to fix an issue where unhealthy compactors can't be forgotten #878 (@joe-elliott)
[CHANGE] Upgrade Cortex from v1.9.0 to v1.9.0-131-ga4bf10354 #841 (@aknuds1)
[CHANGE] Change example default tempo port from 3100 to 3200 #770 (@MurzNN)
[CHANGE] Jsonnet: use dedicated configmaps for distributors and ingesters #775 (@kvrhdn)
[CHANGE] Docker images are now prefixed by their branch name #828 (@jvrplmlmn)
Published by github-actions[bot] about 3 years ago
Tempo v0.6.0 and earlier used block formats v0 and v1, which are being deprecated, and support for these blocks will be removed in the next release. To resolve this you must first upgrade to Tempo 0.7.0+ (latest 1.1 is recommended) which introduces the supported v2 block format. Tempo will write all new blocks as v2, and it must continue running until all v0 and v1 blocks are gone (either deleted due to retention, or compacted). Block versions can be checked using the tempo-cli list blocks command.
[FEATURE] Added the ability to hedge requests with all backends #750 (@joe-elliott)
[FEATURE] Added a tenant index to reduce bucket polling. #834 (@joe-elliott)
[ENHANCEMENT] Added hedged request metric tempodb_backend_hedged_roundtrips_total and a new storage agnostic tempodb_backend_request_duration_seconds metric that supersedes the soon-to-be deprecated storage specific metrics (tempodb_azure_request_duration_seconds, tempodb_s3_request_duration_seconds and tempodb_gcs_request_duration_seconds). #790 (@JosephWoodward)
[ENHANCEMENT] Performance: improve compaction speed with concurrent reads and writes #754 (@mdisibio)
[ENHANCEMENT] Improve readability of cpu and memory metrics on operational dashboard #764 (@bboreham)
[ENHANCEMENT] Add azure_request_duration_seconds metric. #767 (@JosephWoodward)
[ENHANCEMENT] Add s3_request_duration_seconds metric. #776 (@JosephWoodward)
[ENHANCEMENT] Add tempo_ingester_flush_size_bytes metric. #777 (@bboreham)
[ENHANCEMENT] Microservices jsonnet: resource requests and limits can be set in $._config. #793 (@kvrhdn)
[ENHANCEMENT] Add -config.expand-env cli flag to support environment variables expansion in config file. #796 (@Ashmita152)
[ENHANCEMENT] Add ability to control bloom filter caching based on age and/or compaction level. Add new cli command list cache-summary. #805 (@annanay25)
[ENHANCEMENT] Emit traces for ingester flush operations. #812 (@bboreham)
[ENHANCEMENT] Add retry middleware in query-frontend. #814 (@kvrhdn)
[ENHANCEMENT] Add -use-otel-tracer to use the OpenTelemetry tracer, this will also capture traces emitted by the gcs sdk. Experimental: not all features are supported (i.e. remote sampling). #842 (@kvrhdn)
[ENHANCEMENT] Add /services endpoint. #863 (@kvrhdn)
[BUGFIX] Allow only valid trace ID characters when decoding #854 (@zalegrala)
[BUGFIX] Queriers complete one polling cycle before finishing startup. #834 (@joe-elliott)
[CHANGE] Upgrade Cortex from v1.9.0 to v1.9.0-131-ga4bf10354 #841 (@aknuds1)
[CHANGE] Change example default tempo port from 3100 to 3200 #770 (@MurzNN)
[CHANGE] Jsonnet: use dedicated configmaps for distributors and ingesters #775 (@kvrhdn)
[CHANGE] Docker images are now prefixed by their branch name #828 (@jvrplmlmn)
Published by github-actions[bot] over 3 years ago
-auth.enabled
is marked deprecated. New flag is -multitenancy.enabled
and is set to false by default. This is a breaking change if you were relying on auth/multitenancy being enabled by default. #646 @dgzlopesThis release contains significant improvements for performance and stability:
/api/echo
to test the query frontend is reachable. #714 @kvrhdnPublished by github-actions[bot] over 3 years ago
-auth.enabled
is marked deprecated. New flag is -multitenancy.enabled
and is set to false by default. This is a breaking change if you were relying on auth/multitenancy being enabled by default. #646 @dgzlopesThis release contains significant improvements for performance and stability:
/api/echo
to test the query frontend is reachable. #714 @kvrhdn