Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Comparing changes

Choose two branches to see what's changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
base fork: gutefrage/opentsdb
head fork: gutefrage/opentsdb
Checking mergeability… Don't worry, you can still create the pull request.
Commits on Jul 12, 2012
@tsuna tsuna Upgrade to asynchbase 1.3.2.
Change-Id: I2c677fbb7a4da2c9d129c9ee56082a05c5088cb9
@tsuna tsuna Upgrade to Netty 3.5.2.
Change-Id: I2723644bd9193aac6430445744ed78e4da773e0a
Commits on Sep 28, 2012
@tsuna tsuna Fix yet another sign extension bug.
There is no code path that writes one-byte long integer values, but this
bug causes forward compatibility issues with future releases that will
write one-byte long integer values.

!@#$%^ you Java for not having `unsigned'.

Change-Id: Ib3c03b7a63bce9aacf7e26a5a1d84f00e2dacaea
@tsuna tsuna Fix regression that prevents reading pre-1.0 floating point values.
Before OpenTSDB 1.0, floating point values were incorrectly encoded
when stored in HBase.  Their flags pretended they were stored on 4
bytes, but they were instead stored on 8 bytes with 4 leading zeros.
This bug got fixed in f4f405c, with a workaround added to detect
such values and fix them automatically as part of the compaction

The code contains an optimization, however, to skip the compaction
for single-KeyValue rows.  This is because if a row contains only
one KeyValue, there is obviously no point in running it through the
compaction code, since there is nothing to compact.  But because
the compaction code was the one that was transparently fixing up
those incorrectly encoded floating point values, this optimization
prevented them from getting fixed up.

So add some code to detect this case and fix up the KeyValue anyway.

There was also another bug in the code dumping time series data, where
it was also ignoring this corner case and incorrectly parsing the value.

In both cases the end result for a user is that the code would pretend
the value is 0, when in fact it's not.

Thanks to Paula Keezer for reporting the bug.

Change-Id: I8cc8915602185a3085ad0228554494efdc1ba1e1
Commits on Oct 17, 2012
@masiulaniec masiulaniec check_tsd: add a --rate flag.
Signed-off-by: Benoit Sigoure <>
Commits on Nov 11, 2012
@tsuna tsuna Update asynchbase, Netty, and suasync. f730e4f
@tsuna tsuna Don't log an "Unexpected exception" when a client connection times out. b357269
Commits on Nov 12, 2012
@oozie oozie Fix for 30d integer overflow in DateTimeBox.
Signed-off-by: Benoit Sigoure <>
@oozie oozie Properly allow use of both axis with a log scale.
This closes #92.

Signed-off-by: Benoit Sigoure <>
@adrien-mogenet adrien-mogenet Add styling options to smooth curves.
Signed-off-by: Benoit Sigoure <>
@tsuna tsuna Additional accessors to BuildData to avoid cross-jar inlining.
This closes #101.
Commits on Nov 14, 2012
@geoffreyanderson geoffreyanderson Add the ability to use mouse for drag-to-zoom on graphs.
Signed-off-by: Benoit Sigoure <>
@tsuna tsuna Stop tracking mouse movements when not using the zoom box. 3a2d838
Commits on Nov 15, 2012
@davebarr davebarr Add -W (downsample window) flag.
Previously if you said you wanted to downsample, it would just use
your duration (lookback) window as the downsample period.
This lets you specify either.

Change-Id: Ic03ea56d325140b33248eff335818159094bd43c
Reviewed-by: Tony Landells <>
Reviewed-by: Benoit Sigoure <>
Tested-by: Dave Barr <>
@tsuna tsuna Don't block mouse click events on the image.
Doing so means that when the focus is on one of the text boxes,
clicking on the image doesn't remove the focus from the text box,
which is annoying as change of focus is often used to trigger an
update of the graph.

Also increase the minimum selection size to avoid unintentional
drag-to-zoom events, which happen easily with a touch pad.
Commits on Nov 19, 2012
@looztra looztra Upgrade suasync to 1.3.1.
Signed-off-by: Benoit Sigoure <>
@looztra looztra Update javassist's version to match what's in Maven.
Signed-off-by: Benoit Sigoure <>
@tsuna tsuna Fix make distcheck by adding a missing file to 3c558d8
@looztra looztra Provide a pom.xml for Maven users.
This starts to address #103 and closes #134.

Signed-off-by: Benoit Sigoure <>
@tsuna tsuna Finish integration with Maven.
This closes #103.
Commits on Nov 20, 2012
@tsuna tsuna Improve TSD write throughput by 10x.
This fixes an important performance bug in TSD.  The bug is triggered
when large TCP frames are handled by TSD's telnet-style decoding logic.
TSD is trying to split the input lines, however it was using a Netty
class that exhibits very poor performance for this job.  This due to
the fact Netty's DelimiterBasedFrameDecoder is built to handle multiple
delimiters (e.g. "\n" or "\r\n"), and it would always attempt to match
all delimiters to the input buffer to try to find the smallest match.

So on large input buffers, which is particularly worse when the client
is connected from localhost as the MTU of loopback interfaces tend to
be very large, the code would always attempt to look for a "\r\n" in
the entire input, thereby wasting a great deal of CPU cycles.

This code replaces Netty's DelimiterBasedFrameDecoder with a simpler
decoder that only supports splitting lines on "\n" or "\r\n" and
always works in one pass.  Single-socket throughput has been seen
to increase by as much as 20x, and overall throughput with several
clients contending for CPU time has been seen to increase around 10x.

This closes #120.
Commits on Dec 04, 2012
@tsuna tsuna Fix check_tsd -v when IPv6 is used. f5b0208
@tsuna tsuna Fix coding style a bit in tsd_check.
Mostly prevent lines from being longer than 80 columns and remove some
unnecessary cruft when parsing command-line arguments.  This change is
mostly a no-op.
Commits on Dec 06, 2012
@tsuna tsuna Properly parse floating point values in scientific notations.
They do not always contain a period.  So check also for an 'e'
in lower or upper case.

Bug reported by Paula Keezer.
@tsuna tsuna Make sure the .git directory exists before writing HEAD.
This closes #136.
Commits on Jan 11, 2013
@octo47 octo47 Allow tuning the number of worker threads or using OIO.
Signed-off-by: Benoit Sigoure <>
Something went wrong with that request. Please try again.