From efc8fc099a38570fe63bad67b2ca6d9c8471a6c3 Mon Sep 17 00:00:00 2001 From: Chris Larsen Date: Sun, 14 Feb 2016 17:43:12 -0800 Subject: [PATCH] Fix merge issues --- NEWS | 95 ++++++++++++++++++++++++++++++++++++++++++++++ src/core/TSDB.java | 24 ------------ 2 files changed, 95 insertions(+), 24 deletions(-) diff --git a/NEWS b/NEWS index d94c1df182..277824cc13 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,100 @@ OpenTSDB - User visible changes. +* Version 2.2.0 (2016-02-14) + +Noteworthy Changes + - Rework the QueryStats output to be a bit more useful and add timings from the + various scanners and query components. + - Modify the UI to allow for group by or aggregate per tag (use the new query feature) + - Rework the UI skin with the new TSDB logo and color scheme. + - Add the QueryLog config to logback.xml so users can optionally enable logging of + all queries along with their stats. + +Buf Fixes: + - Properly handle append data points in the FSCK utility. + - Fix FSCK to handle salting properly. + - Fix the IncomingDataPoints class for the CLI import tool to properly account for + salting. + - Fix the QueryStats maps by making sure the hash accounts for an unmodified list of + filters (return copies to callers so sorting won't break the hash code). + - Fix the case-insensitive wildcard filter to properly ignore the case. + - Fix the CLI dumper/scan utility to properly handle salted data. + - Fix a case where the compaction queue could grow unbounded when salting was enabled. + - Allow duplicate queries by default (as we did in the past) and users must now block + them explicitly. + - Fix the /api/stats endpoint to allow for returning a value if the max UID width is + set to 8 for any type. Previously it would throw an exception. + - Add a try catch to FSCK to debug issues where printing a problematic row would cause + a hangup or no output. + +* Version 2.2.0 RC3 (2015-11-11) + +Bug Fixes: + - Fix build issues where the static files were not copied into the proper location. + +* Version 2.2.0 RC2 (2015-11-09) + +Noteworthy Changes: + - Allow overriding the metric and tag UID widths via config file instead of + having to modify the source code. + +Bug Fixes: + - OOM handling script now handles multiple TSDs installed on the same host. + - Fix a bug where queries never return if an exception is thrown from the + storage layer. + - Fix random metric UID assignment in the CLI tool. + - Fix for meta data sync when salting is enabled. + - + +* Version 2.2.0 RC1 (2015-09-12) + +Noteworthy Changes: + - Add the option to randomly assign UIDs to metrics to improve distribution across + HBase region servers. + - Introduce salting of data to improve distribution of high cardinality regions + across region servers. + - Introduce query stats for tracking various timings related to TSD queries. + - Add more stats endpoints including /threads, /jvm and /region_clients + - Allow for deleting UID mappings via CLI or the API + - Name the various threads for easier debugging, particularly for distinguishing + between TSD and AsyncHBase threads. + - Allow for pre-fetching all of the meta information for the tables to improve + performance. + - Update to the latest AsyncHBase with support for secure HBase clusters and RPC + timeouts. + - Allow for overriding metric and tag widths via the config file. (Be careful!) + - URLs from the API are now relative instead of absolute, allowing for easier reverse + proxy use. + - Allow for percent deviation in the Nagios check + - Let queries skip over unknown tag values that may not exist yet (via config) + - Add various query filters such as case (in)sensitive pipes, wildcards and pipes + over tag values. Filters do not work over metrics at this time. + - Add support for writing data points using Appends in HBase as a way of writing + compacted data without having to read and re-write at the top of each hour. + - Introduce an option to emit NaNs or Nulls in the JSON output when downsampling and + a bucket is missing values. + - Introduce query time flags to show the original query along with some timing stats + in the response. + - Introduce a storage exception handler plugin that will allow users to spool or + requeue data points that fail writes to HBase due to various issues. + - Rework the HTTP pipeline to support plugins with RPC implementations. + - Allow for some style options in the Gnuplot graphs. + - Allow for timing out long running HTTP queries. + - Text importer will now log and continue bad rows instead of failing. + - New percentile and count aggregators. + - Add the /api/annotations endpoint to fetch multiple annotations in one call. + - Add a class to support improved bulk imports by batching requests in memory for a + full hour before writing. + +Bug Fixes: + - Modify the .rpm build to allow dashes in the name. + - Allow the Nagios check script to handle 0 values properly in checks. + - Fix FSCK where floating point values were not processed correctly (#430) + - Fix missing information from the /appi/uid/tsmeta calls (#498) + - Fix more issues with the FSCK around deleting columns that were in the list (#436) + - Avoid OOM issues over Telnet when the sending client isn't reading errors off it's + socket fast enough by blocking writes. + * Version 2.1.4 (2016-02-14) Bug Fixes: diff --git a/src/core/TSDB.java b/src/core/TSDB.java index 55b562ab5f..64cf75c779 100644 --- a/src/core/TSDB.java +++ b/src/core/TSDB.java @@ -428,30 +428,6 @@ public Deferred getUIDAsync(final UniqueIdType type, final String name) } } - /** - * Attempts to find the UID matching a given name - * @param type The type of UID - * @param name The name to search for - * @throws IllegalArgumentException if the type is not valid - * @throws NoSuchUniqueName if the name was not found - * @since 2.1 - */ - public Deferred getUIDAsync(final UniqueIdType type, final String name) { - if (name == null || name.isEmpty()) { - throw new IllegalArgumentException("Missing UID name"); - } - switch (type) { - case METRIC: - return metrics.getIdAsync(name); - case TAGK: - return tag_names.getIdAsync(name); - case TAGV: - return tag_values.getIdAsync(name); - default: - throw new IllegalArgumentException("Unrecognized UID type"); - } - } - /** * Verifies that the data and UID tables exist in HBase and optionally the * tree and meta data tables if the user has enabled meta tracking or tree