From 3add7b2403dbcc49430abaa480e1065d04cab900 Mon Sep 17 00:00:00 2001 From: Zdenek Styblik Date: Sun, 24 Aug 2014 07:29:55 +0200 Subject: [PATCH 01/15] Fix comment conf file - s/space/comma/ Commit fixes comment in 'src/opentsdb.conf' which says list of ZK hosts is a space separated list, but in reality it's a comma separated list. --- src/opentsdb.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/opentsdb.conf b/src/opentsdb.conf index 55fc3b25c8..bed259d587 100644 --- a/src/opentsdb.conf +++ b/src/opentsdb.conf @@ -55,6 +55,6 @@ tsd.http.cachedir = # Path under which the znode for the -ROOT- region is located, default is "/hbase" #tsd.storage.hbase.zk_basedir = /hbase -# A space separated list of Zookeeper hosts to connect to, with or without +# A comma separated list of Zookeeper hosts to connect to, with or without # port specifiers, default is "localhost" #tsd.storage.hbase.zk_quorum = localhost \ No newline at end of file From c4f0226a3a0b3e497f4c177360630e28115de2b2 Mon Sep 17 00:00:00 2001 From: Andreas Falk Date: Thu, 10 Jul 2014 13:18:10 +0200 Subject: [PATCH 02/15] Cleanup output from maven during travis build by using quiet mode Signed-off-by: Chris Larsen --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 475bf0c4cb..f622be9cb4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,6 @@ language: java -before_script: ./build.sh pom.xml && mvn dependency:go-offline -script: mvn test +before_script: ./build.sh pom.xml +script: mvn test --quiet jdk: - oraclejdk7 - openjdk6 From 18dae335e166874450ee4f8cb785b1f02aa057be Mon Sep 17 00:00:00 2001 From: "Philip K. Warren" Date: Thu, 14 Aug 2014 14:37:32 -0500 Subject: [PATCH 03/15] Fix comment for double precision data points. Signed-off-by: Chris Larsen --- src/core/TSDB.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/TSDB.java b/src/core/TSDB.java index 9a46b17758..7b0b5e13f1 100644 --- a/src/core/TSDB.java +++ b/src/core/TSDB.java @@ -580,7 +580,7 @@ public Deferred addPoint(final String metric, + " for metric=" + metric + " timestamp=" + timestamp); } - final short flags = Const.FLAG_FLOAT | 0x7; // A float stored on 4 bytes. + final short flags = Const.FLAG_FLOAT | 0x7; // A float stored on 8 bytes. return addPointInternal(metric, timestamp, Bytes.fromLong(Double.doubleToRawLongBits(value)), tags, flags); From d1141ba24559ad1ba4526ede561eaf075a4bd152 Mon Sep 17 00:00:00 2001 From: Chris Larsen Date: Fri, 22 Aug 2014 15:12:06 -0700 Subject: [PATCH 04/15] Disable the TestGraphHandler.java class for maven unit tests as it is failing in the travis ci builds due failed lookups of the gnuplot scripts in the class path. Signed-off-by: Chris Larsen --- pom.xml.in | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pom.xml.in b/pom.xml.in index bfd44b7bbe..5306173657 100644 --- a/pom.xml.in +++ b/pom.xml.in @@ -76,6 +76,9 @@ **/client/*.java + + **/TestGraphHandler.java + From 055925a056cebd92d2ab3c10b8c35282f8855cee Mon Sep 17 00:00:00 2001 From: Chris Larsen Date: Thu, 11 Sep 2014 10:23:24 -0700 Subject: [PATCH 05/15] Bump the Maven heap to 2048 as Travis tests fail occasionally Signed-off-by: Chris Larsen --- pom.xml.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml.in b/pom.xml.in index 5306173657..5a5c7016eb 100644 --- a/pom.xml.in +++ b/pom.xml.in @@ -200,7 +200,7 @@ maven-surefire-plugin 2.16 - -Xmx1024m -XX:MaxPermSize=256m + -Xmx2048m -XX:MaxPermSize=256m true classes 2 From bfbc36ccdf9970a35d8ca8c2ea71f52db5c37348 Mon Sep 17 00:00:00 2001 From: clarsen Date: Mon, 13 Oct 2014 21:07:28 -0700 Subject: [PATCH 06/15] Update asynchbase to 1.6.0 and update some additional dependencies Signed-off-by: Chris Larsen Signed-off-by: Chris Larsen --- third_party/guava/guava-16.0.1.jar.md5 | 1 - third_party/guava/guava-18.0.jar.md5 | 1 + third_party/guava/include.mk | 38 ++++++---- third_party/hbase/asynchbase-1.4.1.jar.md5 | 1 - third_party/hbase/asynchbase-1.6.0.jar.md5 | 1 + third_party/hbase/include.mk | 46 +++++------ third_party/jackson/include.mk | 2 +- .../jackson/jackson-annotations-2.1.4.jar.md5 | 1 - .../jackson/jackson-annotations-2.4.3.jar.md5 | 1 + .../jackson/jackson-core-2.1.4.jar.md5 | 1 - .../jackson/jackson-core-2.4.3.jar.md5 | 1 + .../jackson/jackson-databind-2.1.4.jar.md5 | 1 - .../jackson/jackson-databind-2.4.3.jar.md5 | 1 + third_party/javassist/include.mk | 38 ++++++---- .../javassist/javassist-3.15.0-GA.jar.md5 | 1 - .../javassist/javassist-3.18.1-GA.jar.md5 | 1 + third_party/logback/include.mk | 76 +++++++++++-------- .../logback/logback-classic-1.0.0.jar.md5 | 1 - .../logback/logback-classic-1.0.13.jar.md5 | 1 + .../logback/logback-core-1.0.0.jar.md5 | 1 - .../logback/logback-core-1.0.13.jar.md5 | 1 + third_party/netty/include.mk | 38 ++++++---- third_party/netty/netty-3.6.2.Final.jar.md5 | 1 - third_party/netty/netty-3.9.0.Final.jar.md5 | 1 - third_party/netty/netty-3.9.4.Final.jar.md5 | 1 + third_party/objenesis/objenesis-2.1.jar.md5 | 1 + third_party/powermock/include.mk | 42 ++++++---- .../powermock-mockito-1.4.10.jar.md5 | 1 - ...ck-mockito-release-full-1.5.4-full.jar.md5 | 1 + 29 files changed, 176 insertions(+), 126 deletions(-) delete mode 100644 third_party/guava/guava-16.0.1.jar.md5 create mode 100644 third_party/guava/guava-18.0.jar.md5 delete mode 100644 third_party/hbase/asynchbase-1.4.1.jar.md5 create mode 100644 third_party/hbase/asynchbase-1.6.0.jar.md5 delete mode 100644 third_party/jackson/jackson-annotations-2.1.4.jar.md5 create mode 100644 third_party/jackson/jackson-annotations-2.4.3.jar.md5 delete mode 100644 third_party/jackson/jackson-core-2.1.4.jar.md5 create mode 100644 third_party/jackson/jackson-core-2.4.3.jar.md5 delete mode 100644 third_party/jackson/jackson-databind-2.1.4.jar.md5 create mode 100644 third_party/jackson/jackson-databind-2.4.3.jar.md5 delete mode 100644 third_party/javassist/javassist-3.15.0-GA.jar.md5 create mode 100644 third_party/javassist/javassist-3.18.1-GA.jar.md5 delete mode 100644 third_party/logback/logback-classic-1.0.0.jar.md5 create mode 100644 third_party/logback/logback-classic-1.0.13.jar.md5 delete mode 100644 third_party/logback/logback-core-1.0.0.jar.md5 create mode 100644 third_party/logback/logback-core-1.0.13.jar.md5 delete mode 100644 third_party/netty/netty-3.6.2.Final.jar.md5 delete mode 100644 third_party/netty/netty-3.9.0.Final.jar.md5 create mode 100644 third_party/netty/netty-3.9.4.Final.jar.md5 create mode 100644 third_party/objenesis/objenesis-2.1.jar.md5 delete mode 100644 third_party/powermock/powermock-mockito-1.4.10.jar.md5 create mode 100644 third_party/powermock/powermock-mockito-release-full-1.5.4-full.jar.md5 diff --git a/third_party/guava/guava-16.0.1.jar.md5 b/third_party/guava/guava-16.0.1.jar.md5 deleted file mode 100644 index 1d90a82370..0000000000 --- a/third_party/guava/guava-16.0.1.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -a68693df58191585d9af914cfbe6067a diff --git a/third_party/guava/guava-18.0.jar.md5 b/third_party/guava/guava-18.0.jar.md5 new file mode 100644 index 0000000000..bed2508a39 --- /dev/null +++ b/third_party/guava/guava-18.0.jar.md5 @@ -0,0 +1 @@ +947641f6bb535b1d942d1bc387c45290 diff --git a/third_party/guava/include.mk b/third_party/guava/include.mk index 3c4096412c..b686739a88 100644 --- a/third_party/guava/include.mk +++ b/third_party/guava/include.mk @@ -1,19 +1,29 @@ -# Copyright (C) 2012-2013 The OpenTSDB Authors. +# Copyright (C) 2012 The Async HBase Authors. All rights reserved. +# This file is part of Async HBase. # -# This library is free software: you can redistribute it and/or modify it -# under the terms of the GNU Lesser General Public License as published -# by the Free Software Foundation, either version 2.1 of the License, or -# (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with this library. If not, see . +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# - Redistributions of source code must retain the above copyright notice, +# this list of conditions and the following disclaimer. +# - Redistributions in binary form must reproduce the above copyright notice, +# this list of conditions and the following disclaimer in the documentation +# and/or other materials provided with the distribution. +# - Neither the name of the StumbleUpon nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. -GUAVA_VERSION := 17.0 +GUAVA_VERSION := 18.0 GUAVA := third_party/guava/guava-$(GUAVA_VERSION).jar GUAVA_BASE_URL := http://central.maven.org/maven2/com/google/guava/guava/$(GUAVA_VERSION) diff --git a/third_party/hbase/asynchbase-1.4.1.jar.md5 b/third_party/hbase/asynchbase-1.4.1.jar.md5 deleted file mode 100644 index e1290e3983..0000000000 --- a/third_party/hbase/asynchbase-1.4.1.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -0cca4efe89f083e60664e08de052b022 diff --git a/third_party/hbase/asynchbase-1.6.0.jar.md5 b/third_party/hbase/asynchbase-1.6.0.jar.md5 new file mode 100644 index 0000000000..7fcfbd8ec4 --- /dev/null +++ b/third_party/hbase/asynchbase-1.6.0.jar.md5 @@ -0,0 +1 @@ +6738dd73fd48d30cbf5c78f62bc18852 diff --git a/third_party/hbase/include.mk b/third_party/hbase/include.mk index 591cffe21a..4000129f34 100644 --- a/third_party/hbase/include.mk +++ b/third_party/hbase/include.mk @@ -1,23 +1,23 @@ -# Copyright (C) 2011-2014 The OpenTSDB Authors. -# -# This library is free software: you can redistribute it and/or modify it -# under the terms of the GNU Lesser General Public License as published -# by the Free Software Foundation, either version 2.1 of the License, or -# (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with this library. If not, see . - -ASYNCHBASE_VERSION := 1.5.0 -ASYNCHBASE := third_party/hbase/asynchbase-$(ASYNCHBASE_VERSION).jar -ASYNCHBASE_BASE_URL := $(OPENTSDB_THIRD_PARTY_BASE_URL) - -$(ASYNCHBASE): $(ASYNCHBASE).md5 - set dummy "$(ASYNCHBASE_BASE_URL)" "$(ASYNCHBASE)"; shift; $(FETCH_DEPENDENCY) - -THIRD_PARTY += $(ASYNCHBASE) +# Copyright (C) 2011-2014 The OpenTSDB Authors. +# +# This library is free software: you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published +# by the Free Software Foundation, either version 2.1 of the License, or +# (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with this library. If not, see . + +OPENTSDB_VERSION := 1.6.0 +ASYNCHBASE := third_party/hbase/asynchbase-$(OPENTSDB_VERSION).jar +OPENTSDB_BASE_URL := http://central.maven.org/maven2/org/hbase/asynchbase/$(OPENTSDB_VERSION) + +$(ASYNCHBASE): $(ASYNCHBASE).md5 + set dummy "$(OPENTSDB_BASE_URL)" "$(ASYNCHBASE)"; shift; $(FETCH_DEPENDENCY) + +THIRD_PARTY += $(ASYNCHBASE) diff --git a/third_party/jackson/include.mk b/third_party/jackson/include.mk index 4f7a717a72..c74fb7fa39 100644 --- a/third_party/jackson/include.mk +++ b/third_party/jackson/include.mk @@ -13,7 +13,7 @@ # You should have received a copy of the GNU Lesser General Public License # along with this library. If not, see . -JACKSON_VERSION := 2.1.5 +JACKSON_VERSION := 2.4.3 JACKSON_ANNOTATIONS_VERSION = $(JACKSON_VERSION) JACKSON_ANNOTATIONS := third_party/jackson/jackson-annotations-$(JACKSON_ANNOTATIONS_VERSION).jar diff --git a/third_party/jackson/jackson-annotations-2.1.4.jar.md5 b/third_party/jackson/jackson-annotations-2.1.4.jar.md5 deleted file mode 100644 index 4c3b8d9f56..0000000000 --- a/third_party/jackson/jackson-annotations-2.1.4.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -5996593d0367d2cf8b401db5ba9018d3 diff --git a/third_party/jackson/jackson-annotations-2.4.3.jar.md5 b/third_party/jackson/jackson-annotations-2.4.3.jar.md5 new file mode 100644 index 0000000000..b921a9846f --- /dev/null +++ b/third_party/jackson/jackson-annotations-2.4.3.jar.md5 @@ -0,0 +1 @@ +31ef4fa866f9d24960a6807c9c299e98 diff --git a/third_party/jackson/jackson-core-2.1.4.jar.md5 b/third_party/jackson/jackson-core-2.1.4.jar.md5 deleted file mode 100644 index def35b49f3..0000000000 --- a/third_party/jackson/jackson-core-2.1.4.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -0aeb4800fff8a5c6711c2b8927485631 diff --git a/third_party/jackson/jackson-core-2.4.3.jar.md5 b/third_party/jackson/jackson-core-2.4.3.jar.md5 new file mode 100644 index 0000000000..d166db8725 --- /dev/null +++ b/third_party/jackson/jackson-core-2.4.3.jar.md5 @@ -0,0 +1 @@ +750ef3d86f04fe0d6d14d6ae904a6d2d diff --git a/third_party/jackson/jackson-databind-2.1.4.jar.md5 b/third_party/jackson/jackson-databind-2.1.4.jar.md5 deleted file mode 100644 index f9b32d70ba..0000000000 --- a/third_party/jackson/jackson-databind-2.1.4.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -315d2fafa9ce1eb4f9a3bcd610c0de85 diff --git a/third_party/jackson/jackson-databind-2.4.3.jar.md5 b/third_party/jackson/jackson-databind-2.4.3.jar.md5 new file mode 100644 index 0000000000..52f07b826c --- /dev/null +++ b/third_party/jackson/jackson-databind-2.4.3.jar.md5 @@ -0,0 +1 @@ +4fcb9f74280eaa21de10191212c65b11 diff --git a/third_party/javassist/include.mk b/third_party/javassist/include.mk index 7c8befb26d..2df2cf6063 100644 --- a/third_party/javassist/include.mk +++ b/third_party/javassist/include.mk @@ -1,19 +1,29 @@ -# Copyright (C) 2011-2013 The OpenTSDB Authors. +# Copyright (C) 2011-2012 The Async HBase Authors. All rights reserved. +# This file is part of Async HBase. # -# This library is free software: you can redistribute it and/or modify it -# under the terms of the GNU Lesser General Public License as published -# by the Free Software Foundation, either version 2.1 of the License, or -# (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with this library. If not, see . +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# - Redistributions of source code must retain the above copyright notice, +# this list of conditions and the following disclaimer. +# - Redistributions in binary form must reproduce the above copyright notice, +# this list of conditions and the following disclaimer in the documentation +# and/or other materials provided with the distribution. +# - Neither the name of the StumbleUpon nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. -JAVASSIST_VERSION := 3.17.1-GA +JAVASSIST_VERSION := 3.18.1-GA JAVASSIST := third_party/javassist/javassist-$(JAVASSIST_VERSION).jar JAVASSIST_BASE_URL := http://central.maven.org/maven2/org/javassist/javassist/$(JAVASSIST_VERSION) diff --git a/third_party/javassist/javassist-3.15.0-GA.jar.md5 b/third_party/javassist/javassist-3.15.0-GA.jar.md5 deleted file mode 100644 index eeeadeee94..0000000000 --- a/third_party/javassist/javassist-3.15.0-GA.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -98b83db263880dc3bd9fd234ac4b8802 diff --git a/third_party/javassist/javassist-3.18.1-GA.jar.md5 b/third_party/javassist/javassist-3.18.1-GA.jar.md5 new file mode 100644 index 0000000000..c4dd41af8e --- /dev/null +++ b/third_party/javassist/javassist-3.18.1-GA.jar.md5 @@ -0,0 +1 @@ +5bb83868c87334320562af7eded65cc2 diff --git a/third_party/logback/include.mk b/third_party/logback/include.mk index 687c34de3e..83074aba4f 100644 --- a/third_party/logback/include.mk +++ b/third_party/logback/include.mk @@ -1,33 +1,43 @@ -# Copyright (C) 2011-2013 The OpenTSDB Authors. -# -# This library is free software: you can redistribute it and/or modify it -# under the terms of the GNU Lesser General Public License as published -# by the Free Software Foundation, either version 2.1 of the License, or -# (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with this library. If not, see . - -LOGBACK_VERSION = 1.0.9 - -LOGBACK_CLASSIC_VERSION := $(LOGBACK_VERSION) -LOGBACK_CLASSIC := third_party/logback/logback-classic-$(LOGBACK_CLASSIC_VERSION).jar -LOGBACK_CLASSIC_BASE_URL := $(OPENTSDB_THIRD_PARTY_BASE_URL) - -$(LOGBACK_CLASSIC): $(LOGBACK_CLASSIC).md5 - set dummy "$(LOGBACK_CLASSIC_BASE_URL)" "$(LOGBACK_CLASSIC)"; shift; $(FETCH_DEPENDENCY) - - -LOGBACK_CORE_VERSION := $(LOGBACK_VERSION) -LOGBACK_CORE := third_party/logback/logback-core-$(LOGBACK_CORE_VERSION).jar -LOGBACK_CORE_BASE_URL := $(OPENTSDB_THIRD_PARTY_BASE_URL) - -$(LOGBACK_CORE): $(LOGBACK_CORE).md5 - set dummy "$(LOGBACK_CORE_BASE_URL)" "$(LOGBACK_CORE)"; shift; $(FETCH_DEPENDENCY) - -THIRD_PARTY += $(LOGBACK_CLASSIC) $(LOGBACK_CORE) +# Copyright (C) 2011-2012 The Async HBase Authors. All rights reserved. +# This file is part of Async HBase. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# - Redistributions of source code must retain the above copyright notice, +# this list of conditions and the following disclaimer. +# - Redistributions in binary form must reproduce the above copyright notice, +# this list of conditions and the following disclaimer in the documentation +# and/or other materials provided with the distribution. +# - Neither the name of the StumbleUpon nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. + +LOGBACK_VERSION := 1.0.13 + +LOGBACK_CLASSIC_VERSION := $(LOGBACK_VERSION) +LOGBACK_CLASSIC := third_party/logback/logback-classic-$(LOGBACK_CLASSIC_VERSION).jar +LOGBACK_CLASSIC_BASE_URL := $(OPENTSDB_THIRD_PARTY_BASE_URL) + +$(LOGBACK_CLASSIC): $(LOGBACK_CLASSIC).md5 + set dummy "$(LOGBACK_CLASSIC_BASE_URL)" "$(LOGBACK_CLASSIC)"; shift; $(FETCH_DEPENDENCY) + + +LOGBACK_CORE_VERSION := $(LOGBACK_VERSION) +LOGBACK_CORE := third_party/logback/logback-core-$(LOGBACK_CORE_VERSION).jar +LOGBACK_CORE_BASE_URL := $(OPENTSDB_THIRD_PARTY_BASE_URL) + +$(LOGBACK_CORE): $(LOGBACK_CORE).md5 + set dummy "$(LOGBACK_CORE_BASE_URL)" "$(LOGBACK_CORE)"; shift; $(FETCH_DEPENDENCY) + +THIRD_PARTY += $(LOGBACK_CLASSIC) $(LOGBACK_CORE) diff --git a/third_party/logback/logback-classic-1.0.0.jar.md5 b/third_party/logback/logback-classic-1.0.0.jar.md5 deleted file mode 100644 index 2c01a2eceb..0000000000 --- a/third_party/logback/logback-classic-1.0.0.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -7dab366c562d9f2eee771a53d04b4cf0 diff --git a/third_party/logback/logback-classic-1.0.13.jar.md5 b/third_party/logback/logback-classic-1.0.13.jar.md5 new file mode 100644 index 0000000000..66fd767e18 --- /dev/null +++ b/third_party/logback/logback-classic-1.0.13.jar.md5 @@ -0,0 +1 @@ +b4dc8eb42150aafd6d9fd3d211807621 diff --git a/third_party/logback/logback-core-1.0.0.jar.md5 b/third_party/logback/logback-core-1.0.0.jar.md5 deleted file mode 100644 index ed56981dcf..0000000000 --- a/third_party/logback/logback-core-1.0.0.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -3081de22dc6dd5f1e97f6b3c3e5033dc diff --git a/third_party/logback/logback-core-1.0.13.jar.md5 b/third_party/logback/logback-core-1.0.13.jar.md5 new file mode 100644 index 0000000000..19107c10a7 --- /dev/null +++ b/third_party/logback/logback-core-1.0.13.jar.md5 @@ -0,0 +1 @@ +3d5f8ce8dca36e493d39177b71958bd4 diff --git a/third_party/netty/include.mk b/third_party/netty/include.mk index 12330652c7..638da86057 100644 --- a/third_party/netty/include.mk +++ b/third_party/netty/include.mk @@ -1,20 +1,30 @@ -# Copyright (C) 2011-2013 The OpenTSDB Authors. +# Copyright (C) 2011-2012 The Async HBase Authors. All rights reserved. +# This file is part of Async HBase. # -# This library is free software: you can redistribute it and/or modify it -# under the terms of the GNU Lesser General Public License as published -# by the Free Software Foundation, either version 2.1 of the License, or -# (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with this library. If not, see . +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# - Redistributions of source code must retain the above copyright notice, +# this list of conditions and the following disclaimer. +# - Redistributions in binary form must reproduce the above copyright notice, +# this list of conditions and the following disclaimer in the documentation +# and/or other materials provided with the distribution. +# - Neither the name of the StumbleUpon nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. NETTY_MAJOR_VERSION = 3.9 -NETTY_VERSION := 3.9.1.Final +NETTY_VERSION := 3.9.4.Final NETTY := third_party/netty/netty-$(NETTY_VERSION).jar NETTY_BASE_URL := http://central.maven.org/maven2/io/netty/netty/$(NETTY_VERSION) diff --git a/third_party/netty/netty-3.6.2.Final.jar.md5 b/third_party/netty/netty-3.6.2.Final.jar.md5 deleted file mode 100644 index bd62ffab40..0000000000 --- a/third_party/netty/netty-3.6.2.Final.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -beb25141cab18d504b77914a1c3242cf diff --git a/third_party/netty/netty-3.9.0.Final.jar.md5 b/third_party/netty/netty-3.9.0.Final.jar.md5 deleted file mode 100644 index 4716a0101b..0000000000 --- a/third_party/netty/netty-3.9.0.Final.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -741e87c513e18f61a2f8490c3551268a diff --git a/third_party/netty/netty-3.9.4.Final.jar.md5 b/third_party/netty/netty-3.9.4.Final.jar.md5 new file mode 100644 index 0000000000..63d926c988 --- /dev/null +++ b/third_party/netty/netty-3.9.4.Final.jar.md5 @@ -0,0 +1 @@ +b3701ef46c7518d0d63705e2f092dbe5 diff --git a/third_party/objenesis/objenesis-2.1.jar.md5 b/third_party/objenesis/objenesis-2.1.jar.md5 new file mode 100644 index 0000000000..0d16b1a2bf --- /dev/null +++ b/third_party/objenesis/objenesis-2.1.jar.md5 @@ -0,0 +1 @@ +32ccb1d20a42b5aaaceb90c9082a2efa diff --git a/third_party/powermock/include.mk b/third_party/powermock/include.mk index d152776883..234235e355 100644 --- a/third_party/powermock/include.mk +++ b/third_party/powermock/include.mk @@ -1,21 +1,31 @@ -# Copyright (C) 2011-2013 The OpenTSDB Authors. +# Copyright (C) 2011-2012 The Async HBase Authors. All rights reserved. +# This file is part of Async HBase. # -# This library is free software: you can redistribute it and/or modify it -# under the terms of the GNU Lesser General Public License as published -# by the Free Software Foundation, either version 2.1 of the License, or -# (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with this library. If not, see . +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# - Redistributions of source code must retain the above copyright notice, +# this list of conditions and the following disclaimer. +# - Redistributions in binary form must reproduce the above copyright notice, +# this list of conditions and the following disclaimer in the documentation +# and/or other materials provided with the distribution. +# - Neither the name of the StumbleUpon nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. -POWERMOCK_MOCKITO_VERSION := 1.5 -POWERMOCK_MOCKITO := third_party/powermock/powermock-mockito-$(POWERMOCK_MOCKITO_VERSION).jar -POWERMOCK_MOCKITO_BASE_URL := $(OPENTSDB_THIRD_PARTY_BASE_URL) +POWERMOCK_MOCKITO_VERSION := 1.5.4 +POWERMOCK_MOCKITO := third_party/powermock/powermock-mockito-release-full-$(POWERMOCK_MOCKITO_VERSION)-full.jar +POWERMOCK_MOCKITO_BASE_URL := http://central.maven.org/maven2/org/powermock/powermock-mockito-release-full/$(POWERMOCK_MOCKITO_VERSION) $(POWERMOCK_MOCKITO): $(POWERMOCK_MOCKITO).md5 set dummy "$(POWERMOCK_MOCKITO_BASE_URL)" "$(POWERMOCK_MOCKITO)"; shift; $(FETCH_DEPENDENCY) diff --git a/third_party/powermock/powermock-mockito-1.4.10.jar.md5 b/third_party/powermock/powermock-mockito-1.4.10.jar.md5 deleted file mode 100644 index e399f8465b..0000000000 --- a/third_party/powermock/powermock-mockito-1.4.10.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -4b1e653ed8b2657ac4ef27bbf440909e diff --git a/third_party/powermock/powermock-mockito-release-full-1.5.4-full.jar.md5 b/third_party/powermock/powermock-mockito-release-full-1.5.4-full.jar.md5 new file mode 100644 index 0000000000..49daed5035 --- /dev/null +++ b/third_party/powermock/powermock-mockito-release-full-1.5.4-full.jar.md5 @@ -0,0 +1 @@ +5dee1dce6952bb7338d4d053157ae647 From dab7ddd1867844d2aa813d9def73f16894c7019f Mon Sep 17 00:00:00 2001 From: clarsen Date: Mon, 13 Oct 2014 23:09:08 -0700 Subject: [PATCH 07/15] Fix asynchbase_version in include file --- third_party/hbase/include.mk | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/third_party/hbase/include.mk b/third_party/hbase/include.mk index 4000129f34..eb7ca564ab 100644 --- a/third_party/hbase/include.mk +++ b/third_party/hbase/include.mk @@ -13,11 +13,11 @@ # You should have received a copy of the GNU Lesser General Public License # along with this library. If not, see . -OPENTSDB_VERSION := 1.6.0 -ASYNCHBASE := third_party/hbase/asynchbase-$(OPENTSDB_VERSION).jar -OPENTSDB_BASE_URL := http://central.maven.org/maven2/org/hbase/asynchbase/$(OPENTSDB_VERSION) +ASYNCHBASE_VERSION := 1.6.0 +ASYNCHBASE := third_party/hbase/asynchbase-$(ASYNCHBASE_VERSION).jar +ASYNCHBASE_BASE_URL := http://central.maven.org/maven2/org/hbase/asynchbase/$(ASYNCHBASE_VERSION) $(ASYNCHBASE): $(ASYNCHBASE).md5 - set dummy "$(OPENTSDB_BASE_URL)" "$(ASYNCHBASE)"; shift; $(FETCH_DEPENDENCY) + set dummy "$(ASYNCHBASE_BASE_URL)" "$(ASYNCHBASE)"; shift; $(FETCH_DEPENDENCY) THIRD_PARTY += $(ASYNCHBASE) From a802c19860eb3ebec0a9454c33b91513778e607d Mon Sep 17 00:00:00 2001 From: "Philip K. Warren" Date: Wed, 9 Jul 2014 19:38:59 -0500 Subject: [PATCH 08/15] Close scanner when reached max_results. When the suggest scanner has reached max_results, close the scanner. This requires upstream fix for asynchbase for 0.96+: https://github.com/OpenTSDB/asynchbase/pull/91 --- src/uid/UniqueId.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/uid/UniqueId.java b/src/uid/UniqueId.java index 4387224262..57239a8134 100644 --- a/src/uid/UniqueId.java +++ b/src/uid/UniqueId.java @@ -762,7 +762,12 @@ public Object call(final ArrayList> rows) { } suggestions.add(name); if ((short) suggestions.size() >= max_results) { // We have enough. - return suggestions; + return scanner.close().addCallback(new Callback() { + @Override + public Object call(Object ignored) throws Exception { + return suggestions; + } + }); } row.clear(); // free() } @@ -1153,4 +1158,4 @@ public Map call(final ArrayList row) get.qualifiers(kinds); return tsdb.getClient().get(get).addCallback(new GetCB()); } -} \ No newline at end of file +} From 3d55d93d40a3649bbc1ec0796710320affa7ba39 Mon Sep 17 00:00:00 2001 From: clarsen Date: Wed, 15 Oct 2014 20:39:45 -0700 Subject: [PATCH 09/15] Fix unsigned Infinity test in the TestPutRpc class as the latest version of Jackson will parse it properly. We'll still return an error though. --- test/tsd/TestPutRpc.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/test/tsd/TestPutRpc.java b/test/tsd/TestPutRpc.java index 7a0668b237..983594cf49 100644 --- a/test/tsd/TestPutRpc.java +++ b/test/tsd/TestPutRpc.java @@ -549,13 +549,19 @@ public void ValueNInfiniy() throws Exception { assertTrue(response.contains("\"success\":0")); } - @Test (expected = BadRequestException.class) + @Test public void ValueInfinityUnsigned() throws Exception { HttpQuery query = NettyMocks.postQuery(tsdb, "/api/put?details", "{\"metric\":\"sys.cpu.nice\",\"timestamp\":1365465600,\"value\"" +":Infinity,\"tags\":{\"host\":\"web01\"}}"); PutDataPointRpc put = new PutDataPointRpc(); put.execute(tsdb, query); + assertEquals(HttpResponseStatus.BAD_REQUEST, query.response().getStatus()); + final String response = + query.response().getContent().toString(Charset.forName("UTF-8")); + assertTrue(response.contains("\"error\":\"Unable to parse value to a number\"")); + assertTrue(response.contains("\"failed\":1")); + assertTrue(response.contains("\"success\":0")); } @Test From 0a6ddece65025a54d0eff62d35d199d0e0e1de50 Mon Sep 17 00:00:00 2001 From: saiYu Date: Thu, 17 Jul 2014 20:07:49 +0800 Subject: [PATCH 10/15] fix RTPublisher public data with reverse logic error Signed-off-by: Chris Larsen --- src/tsd/RTPublisher.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tsd/RTPublisher.java b/src/tsd/RTPublisher.java index 251192e472..551267e62d 100644 --- a/src/tsd/RTPublisher.java +++ b/src/tsd/RTPublisher.java @@ -97,7 +97,7 @@ public abstract class RTPublisher { public final Deferred sinkDataPoint(final String metric, final long timestamp, final byte[] value, final Map tags, final byte[] tsuid, final short flags) { - if ((flags & Const.FLAG_FLOAT) == 0x0) { + if ((flags & Const.FLAG_FLOAT) != 0x0) { return publishDataPoint(metric, timestamp, Internal.extractFloatingPointValue(value, 0, (byte) flags), tags, tsuid); From c4716addc84888b191489d8cf55b503ff35f44cf Mon Sep 17 00:00:00 2001 From: "Philip K. Warren" Date: Thu, 17 Jul 2014 12:44:07 -0500 Subject: [PATCH 11/15] Avoid HBase lookups in TsdbQuery.toString(). Calling UniqueId.getName() in the TsdbQuery.toString() method is causing deadlocks when logging the results of a TsdbQuery execution (if the uids aren't cached locally). This changes the behavior of TsdbQuery.toString() to avoid any external calls which could trigger a HBase lookup. Signed-off-by: Chris Larsen --- src/core/TsdbQuery.java | 78 +++++++++++++++++------------------------ 1 file changed, 32 insertions(+), 46 deletions(-) diff --git a/src/core/TsdbQuery.java b/src/core/TsdbQuery.java index 9f95a3a942..a36b5ee29b 100644 --- a/src/core/TsdbQuery.java +++ b/src/core/TsdbQuery.java @@ -35,7 +35,6 @@ import static org.hbase.async.Bytes.ByteMap; import net.opentsdb.stats.Histogram; -import net.opentsdb.uid.NoSuchUniqueId; import net.opentsdb.uid.NoSuchUniqueName; import net.opentsdb.uid.UniqueId; @@ -145,7 +144,7 @@ public void setStartTime(final long timestamp) { } /** - * @returns the start time for the query + * @return the start time for the query * @throws IllegalStateException if the start time hasn't been set yet */ public long getStartTime() { @@ -769,55 +768,42 @@ public String toString() { .append(getStartTime()) .append(", end_time=") .append(getEndTime()); - if (tsuids != null && !tsuids.isEmpty()) { - buf.append(", tsuids="); - for (final String tsuid : tsuids) { - buf.append(tsuid).append(","); - } - } else { - buf.append(", metric=").append(Arrays.toString(metric)); - try { - buf.append(" (").append(tsdb.metrics.getName(metric)); - } catch (NoSuchUniqueId e) { - buf.append(" (<").append(e.getMessage()).append('>'); - } - try { - buf.append("), tags=").append(Tags.resolveIds(tsdb, tags)); - } catch (NoSuchUniqueId e) { - buf.append("), tags=<").append(e.getMessage()).append('>'); + if (tsuids != null && !tsuids.isEmpty()) { + buf.append(", tsuids="); + for (final String tsuid : tsuids) { + buf.append(tsuid).append(","); } - } - buf.append(", rate=").append(rate) - .append(", aggregator=").append(aggregator) - .append(", group_bys=("); - if (group_bys != null) { - for (final byte[] tag_id : group_bys) { - try { - buf.append(tsdb.tag_names.getName(tag_id)); - } catch (NoSuchUniqueId e) { - buf.append('<').append(e.getMessage()).append('>'); + } else { + buf.append(", metric=").append(Arrays.toString(metric)); + buf.append(", tags=["); + for (final Iterator it = tags.iterator(); it.hasNext(); ) { + buf.append(Arrays.toString(it.next())); + if (it.hasNext()) { + buf.append(','); } - buf.append(' ') - .append(Arrays.toString(tag_id)); - if (group_by_values != null) { - final byte[][] value_ids = group_by_values.get(tag_id); - if (value_ids == null) { - continue; - } - buf.append("={"); - for (final byte[] value_id : value_ids) { - try { - buf.append(tsdb.tag_values.getName(value_id)); - } catch (NoSuchUniqueId e) { - buf.append('<').append(e.getMessage()).append('>'); + } + buf.append("], rate=").append(rate) + .append(", aggregator=").append(aggregator) + .append(", group_bys=("); + if (group_bys != null) { + for (final byte[] tag_id : group_bys) { + buf.append(Arrays.toString(tag_id)); + if (group_by_values != null) { + final byte[][] value_ids = group_by_values.get(tag_id); + if (value_ids == null) { + continue; + } + buf.append("={"); + for (int i = 0; i < value_ids.length; i++) { + buf.append(Arrays.toString(value_ids[i])); + if (i < value_ids.length - 1) { + buf.append(','); + } } - buf.append(' ') - .append(Arrays.toString(value_id)) - .append(", "); + buf.append('}'); } - buf.append('}'); + buf.append(", "); } - buf.append(", "); } } buf.append("))"); From 378542c4e9129644ec273a9e8bafd66677a799ef Mon Sep 17 00:00:00 2001 From: clarsen Date: Wed, 15 Oct 2014 21:39:31 -0700 Subject: [PATCH 12/15] Different means of passing heap size to Travis for the unit tests Signed-off-by: Chris Larsen --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index f622be9cb4..1126638b1e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,6 @@ language: java before_script: ./build.sh pom.xml -script: mvn test --quiet +script: export MAVEN_OPTS="-Xmx1024m" && mvn test --quiet jdk: - oraclejdk7 - openjdk6 From 08ab3e4f4af3ff825eb98b0da8f15ee28ec8a241 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johan=20Str=C3=B6m?= Date: Fri, 4 Jul 2014 23:39:47 +0200 Subject: [PATCH 13/15] Fix build on FreeBSD (#209) Signed-off-by: Chris Larsen --- build-aux/create-src-dir-overlay.sh | 2 +- build-aux/fetchdep.sh.in | 2 +- build-aux/gen_build_data.sh | 2 +- build.sh | 6 ++++-- tools/clean_cache.sh | 2 +- tsdb.in | 2 +- 6 files changed, 9 insertions(+), 7 deletions(-) diff --git a/build-aux/create-src-dir-overlay.sh b/build-aux/create-src-dir-overlay.sh index ea1ca2f405..75262e58ed 100755 --- a/build-aux/create-src-dir-overlay.sh +++ b/build-aux/create-src-dir-overlay.sh @@ -1,6 +1,6 @@ # Creates directory structure overlay on top of original source directories so # that the overlay matches Java package hierarchy. -#!/bin/bash +#!/usr/bin/env bash if [ ! -d src-main ]; then mkdir src-main diff --git a/build-aux/fetchdep.sh.in b/build-aux/fetchdep.sh.in index 30e3682860..78a91beee0 100644 --- a/build-aux/fetchdep.sh.in +++ b/build-aux/fetchdep.sh.in @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e # Getting this value out of Autoconf is not a good idea, because it might be # set to a relative path to install-sh. We don't install `install-sh' during diff --git a/build-aux/gen_build_data.sh b/build-aux/gen_build_data.sh index 6ed799e317..a67ff26b9a 100755 --- a/build-aux/gen_build_data.sh +++ b/build-aux/gen_build_data.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/usr/bin/env bash # Generates BuildData.java # Usage: gen_build_data.sh path/to/BuildData.java my.package.name # Author: Benoit Sigoure (tsuna@stumbleupon.com) diff --git a/build.sh b/build.sh index 646e377307..288075295b 100755 --- a/build.sh +++ b/build.sh @@ -1,7 +1,9 @@ -#!/bin/bash +#!/usr/bin/env bash set -xe test -f configure || ./bootstrap test -d build || mkdir build cd build test -f Makefile || ../configure "$@" -exec make "$@" +MAKE=make +[ `uname -s` = "FreeBSD" ] && MAKE=gmake +exec ${MAKE} "$@" diff --git a/tools/clean_cache.sh b/tools/clean_cache.sh index 04e213691e..6babdb44ad 100755 --- a/tools/clean_cache.sh +++ b/tools/clean_cache.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash CACHE_DIR=/tmp/tsd diff --git a/tsdb.in b/tsdb.in index ebf6e3d6a6..2177097c43 100644 --- a/tsdb.in +++ b/tsdb.in @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e me=`basename "$0"` From 0b79e4319fc99e4d657aa429ba884153edf5bae2 Mon Sep 17 00:00:00 2001 From: Slawek Ligus Date: Fri, 12 Sep 2014 01:22:31 -0700 Subject: [PATCH 14/15] Fix for repeated global annotation as reported in issue #377 Signed-off-by: Chris Larsen --- src/meta/Annotation.java | 4 ++-- test/meta/TestAnnotation.java | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/meta/Annotation.java b/src/meta/Annotation.java index 9cbddb3df3..f0cbbf909d 100644 --- a/src/meta/Annotation.java +++ b/src/meta/Annotation.java @@ -273,7 +273,7 @@ public Deferred call(final ArrayList row) return Deferred.fromResult(null); } - Annotation note = JSON.parseToObject(row.get(0).value(), + Annotation note = JSON.parseToObject(row.get(0).value(), Annotation.class); return Deferred.fromResult(note); } @@ -356,7 +356,7 @@ public Deferred> call ( for (KeyValue column : row) { if (column.qualifier().length == 3 && column.qualifier()[0] == PREFIX()) { - Annotation note = JSON.parseToObject(row.get(0).value(), + Annotation note = JSON.parseToObject(column.value(), Annotation.class); if (note.start_time < start_time || note.end_time > end_time) { continue; diff --git a/test/meta/TestAnnotation.java b/test/meta/TestAnnotation.java index 0751d621d0..98ca2fe067 100644 --- a/test/meta/TestAnnotation.java +++ b/test/meta/TestAnnotation.java @@ -153,6 +153,10 @@ public void getGlobalAnnotations() throws Exception { 1328141000).joinUninterruptibly(); assertNotNull(notes); assertEquals(2, notes.size()); + Annotation note0 = notes.get(0); + Annotation note1 = notes.get(1); + assertEquals("Description", note0.getDescription()); + assertEquals("Global 2", note1.getDescription()); } @Test From 76b928da99db7552a79e1ac04dbb3810908b8b5b Mon Sep 17 00:00:00 2001 From: clarsen Date: Sun, 9 Nov 2014 15:29:42 -0800 Subject: [PATCH 15/15] Release 2.0.1 Signed-off-by: Chris Larsen --- NEWS | 18 +++++++++++++++++- configure.ac | 2 +- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index 61f590ee9c..2371507762 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,22 @@ OpenTSDB - User visible changes. -* Version 2.0.0 (2014-05-5) [???????] +* Version 2.0.1 (2014-11-09) + +Bug Fixes: + - Fix tree REST endpoint to allow modification of the strictMatch and storeFailure fields + - Fix compacted millisecond columns throwing an error during fsck + - Fix tsd startup directory permission checks + - Fix thread safety of pending UID assignment when they are complete + - Fix compaction queue flushing on tsd shutdown + - Fix RTPublisher plugin floating point value detection where it was previously posting to the wrong method + - Fix TsdbQuery.toString() to avoid looing up UIDs if an error was thrown as this can cause cause a deadlock + +Noteworthy changes: + - Add Travis CI build support + - Update to Asynchbase 1.6.0 and update additional dependencies + - Modify scripts to allow easier compilation under FreeBSD + +* Version 2.0.0 (2014-05-5) API incompatible changes: - The `TSDB' class now takes a `Config' object in argument instead of an diff --git a/configure.ac b/configure.ac index b9eb992202..08653133de 100644 --- a/configure.ac +++ b/configure.ac @@ -14,7 +14,7 @@ # along with this library. If not, see . # Semantic Versioning (see http://semver.org/). -AC_INIT([opentsdb], [2.0.0], [opentsdb@googlegroups.com]) +AC_INIT([opentsdb], [2.0.1], [opentsdb@googlegroups.com]) AC_CONFIG_AUX_DIR([build-aux]) AM_INIT_AUTOMAKE([foreign])