Skip to content

Commit cac608a

Browse files
committed
Cut 2.3.0
Merge branch 'next'
2 parents c185b27 + 8993ccf commit cac608a

File tree

204 files changed

+28063
-1444
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

204 files changed

+28063
-1444
lines changed

.gitignore

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,10 @@ guava-rpm-maker/\.project
3838
src-main
3939
src-test
4040
plugin_test.jar
41-
/bin/
41+
bin/
42+
43+
#Docker
44+
tools/docker/libs
45+
tools/docker/*.jar
46+
tools/docker/logback.xml
47+
tools/docker/opentsdb.conf

.travis.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,6 @@ addons:
66
jdk:
77
- oraclejdk7
88
- openjdk6
9+
- oraclejdk8
910
notifications:
1011
email: false

AUTHORS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,6 @@ Chris Larsen <[email protected]>
2424
David Bainbridge <[email protected]>
2525
Geoffrey Anderson <[email protected]>
2626
Ion Savin <[email protected]>
27+
Jonathan Creasy <[email protected]>
2728
Nicholas Whitehead <[email protected]>
2829
Will Moss <[email protected]>

Makefile.am

Lines changed: 131 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -68,18 +68,55 @@ tsdb_SRC := \
6868
src/core/TSQuery.java \
6969
src/core/TSSubQuery.java \
7070
src/core/WritableDataPoints.java \
71+
src/core/WriteableDataPointFilterPlugin.java \
7172
src/graph/Plot.java \
7273
src/meta/Annotation.java \
74+
src/meta/MetaDataCache.java \
7375
src/meta/TSMeta.java \
7476
src/meta/TSUIDQuery.java \
7577
src/meta/UIDMeta.java \
7678
src/query/QueryUtil.java \
79+
src/query/expression/Absolute.java \
80+
src/query/expression/Alias.java \
81+
src/query/expression/DiffSeries.java \
82+
src/query/expression/DivideSeries.java \
83+
src/query/expression/EDPtoDPS.java \
84+
src/query/expression/Expression.java \
85+
src/query/expression/ExpressionDataPoint.java \
86+
src/query/expression/ExpressionFactory.java \
87+
src/query/expression/ExpressionIterator.java \
88+
src/query/expression/ExpressionReader.java \
89+
src/query/expression/Expressions.java \
90+
src/query/expression/ExpressionTree.java \
91+
src/query/expression/HighestCurrent.java \
92+
src/query/expression/HighestMax.java \
93+
src/query/expression/IntersectionIterator.java \
94+
src/query/expression/ITimeSyncedIterator.java \
95+
src/query/expression/NumericFillPolicy.java \
96+
src/query/expression/MovingAverage.java \
97+
src/query/expression/MultiplySeries.java \
98+
src/query/expression/PostAggregatedDataPoints.java \
99+
src/query/expression/Scale.java \
100+
src/query/expression/SumSeries.java \
101+
src/query/expression/TimeShift.java \
102+
src/query/expression/TimeSyncedIterator.java \
103+
src/query/expression/UnionIterator.java \
104+
src/query/expression/VariableIterator.java \
77105
src/query/filter/TagVFilter.java \
78106
src/query/filter/TagVLiteralOrFilter.java \
79107
src/query/filter/TagVNotKeyFilter.java \
80108
src/query/filter/TagVNotLiteralOrFilter.java \
81109
src/query/filter/TagVRegexFilter.java \
82110
src/query/filter/TagVWildcardFilter.java \
111+
src/query/pojo/Downsampler.java \
112+
src/query/pojo/Expression.java \
113+
src/query/pojo/Filter.java \
114+
src/query/pojo/Join.java \
115+
src/query/pojo/Metric.java \
116+
src/query/pojo/Output.java \
117+
src/query/pojo/Query.java \
118+
src/query/pojo/Timespan.java \
119+
src/query/pojo/Validatable.java \
83120
src/search/SearchPlugin.java \
84121
src/search/SearchQuery.java \
85122
src/search/TimeSeriesLookup.java \
@@ -96,6 +133,7 @@ tsdb_SRC := \
96133
src/tools/MetaPurge.java \
97134
src/tools/MetaSync.java \
98135
src/tools/Search.java \
136+
src/tools/StartupPlugin.java \
99137
src/tools/TSDMain.java \
100138
src/tools/TextImporter.java \
101139
src/tools/TreeSync.java \
@@ -109,6 +147,7 @@ tsdb_SRC := \
109147
src/tsd/AnnotationRpc.java \
110148
src/tsd/BadRequestException.java \
111149
src/tsd/ConnectionManager.java \
150+
src/tsd/DropCachesRpc.java \
112151
src/tsd/GnuplotException.java \
113152
src/tsd/GraphHandler.java \
114153
src/tsd/HttpJsonSerializer.java \
@@ -121,10 +160,12 @@ tsdb_SRC := \
121160
src/tsd/LogsRpc.java \
122161
src/tsd/PipelineFactory.java \
123162
src/tsd/PutDataPointRpc.java \
163+
src/tsd/QueryExecutor.java \
124164
src/tsd/QueryRpc.java \
125165
src/tsd/RpcHandler.java \
126166
src/tsd/RpcPlugin.java \
127167
src/tsd/RpcManager.java \
168+
src/tsd/RpcUtil.java \
128169
src/tsd/RTPublisher.java \
129170
src/tsd/SearchRpc.java \
130171
src/tsd/StaticFileRpc.java \
@@ -140,8 +181,10 @@ tsdb_SRC := \
140181
src/uid/NoSuchUniqueName.java \
141182
src/uid/RandomUniqueId.java \
142183
src/uid/UniqueId.java \
184+
src/uid/UniqueIdFilterPlugin.java \
143185
src/uid/UniqueIdInterface.java \
144186
src/utils/ByteArrayPair.java \
187+
src/utils/ByteSet.java \
145188
src/utils/Config.java \
146189
src/utils/DateTime.java \
147190
src/utils/Exceptions.java \
@@ -153,21 +196,47 @@ tsdb_SRC := \
153196
src/utils/Threads.java
154197

155198
tsdb_DEPS = \
156-
$(ASYNCHBASE) \
199+
$(COMMONS_LOGGING) \
157200
$(GUAVA) \
158201
$(LOG4J_OVER_SLF4J) \
159202
$(LOGBACK_CLASSIC) \
160203
$(LOGBACK_CORE) \
161204
$(JACKSON_ANNOTATIONS) \
162205
$(JACKSON_CORE) \
163206
$(JACKSON_DATABIND) \
207+
$(JAVACC) \
208+
$(JEXL) \
209+
$(JGRAPHT) \
164210
$(NETTY) \
165-
$(PROTOBUF) \
166211
$(SLF4J_API) \
167212
$(SUASYNC) \
168-
$(ZOOKEEPER) \
169213
$(APACHE_MATH)
170214

215+
if BIGTABLE
216+
tsdb_DEPS += \
217+
$(ALPN_BOOT) \
218+
$(ASYNCBIGTABLE)
219+
maven_profile_bigtable := true
220+
maven_profile_hbase := false
221+
maven_profile_cassandra := false
222+
else
223+
if CASSANDRA
224+
tsdb_DEPS += \
225+
$(ASYNCCASSANDRA)
226+
maven_profile_bigtable := false
227+
maven_profile_hbase := false
228+
maven_profile_cassandra := true
229+
else
230+
tsdb_DEPS += \
231+
$(ASYNCHBASE) \
232+
$(PROTOBUF) \
233+
$(ZOOKEEPER)
234+
maven_profile_bigtable := false
235+
maven_profile_hbase := true
236+
maven_profile_cassandra := false
237+
endif
238+
endif
239+
171240
test_SRC := \
172241
test/core/SeekableViewsForTest.java \
173242
test/core/BaseTsdbTest.java \
@@ -190,6 +259,7 @@ test_SRC := \
190259
test/core/TestSpanGroup.java \
191260
test/core/TestTags.java \
192261
test/core/TestTSDB.java \
262+
test/core/TestTSDBAddPoint.java \
193263
test/core/TestTsdbQueryDownsample.java \
194264
test/core/TestTsdbQueryDownsampleSalted.java \
195265
test/core/TestTsdbQuery.java \
@@ -206,12 +276,41 @@ test_SRC := \
206276
test/meta/TestTSMeta.java \
207277
test/meta/TestTSUIDQuery.java \
208278
test/meta/TestUIDMeta.java \
279+
test/query/expression/BaseTimeSyncedIteratorTest.java \
280+
test/query/expression/TestAbsolute.java \
281+
test/query/expression/TestAlias.java \
282+
test/query/expression/TestDiffSeries.java \
283+
test/query/expression/TestDivideSeries.java \
284+
test/query/expression/TestExpressionFactory.java \
285+
test/query/expression/TestExpressionIterator.java \
286+
test/query/expression/TestExpressionReader.java \
287+
test/query/expression/TestExpressions.java \
288+
test/query/expression/TestExpressionTree.java \
289+
test/query/expression/TestHighestCurrent.java \
290+
test/query/expression/TestHighestMax.java \
291+
test/query/expression/TestIntersectionIterator.java \
292+
test/query/expression/TestNumericFillPolicy.java \
293+
test/query/expression/TestMovingAverage.java \
294+
test/query/expression/TestMultiplySeries.java \
295+
test/query/expression/TestPostAggregatedDataPoints.java \
296+
test/query/expression/TestScale.java \
297+
test/query/expression/TestSumSeries.java \
298+
test/query/expression/TestTimeSyncedIterator.java \
299+
test/query/expression/TestUnionIterator.java \
209300
test/query/filter/TestTagVFilter.java \
210301
test/query/filter/TestTagVLiteralOrFilter.java \
211302
test/query/filter/TestTagVNotKeyFilter.java \
212303
test/query/filter/TestTagVNotLiteralOrFilter.java \
213304
test/query/filter/TestTagVRegexFilter.java \
214305
test/query/filter/TestTagVWildcardFilter.java \
306+
test/query/pojo/TestDownsampler.java \
307+
test/query/pojo/TestExpression.java \
308+
test/query/pojo/TestFilter.java \
309+
test/query/pojo/TestJoin.java \
310+
test/query/pojo/TestMetric.java \
311+
test/query/pojo/TestOutput.java \
312+
test/query/pojo/TestQuery.java \
313+
test/query/pojo/TestTimeSpan.java \
215314
test/search/TestSearchPlugin.java \
216315
test/search/TestSearchQuery.java \
217316
test/search/TestTimeSeriesLookup.java \
@@ -237,6 +336,7 @@ test_SRC := \
237336
test/tsd/TestHttpQuery.java \
238337
test/tsd/TestHttpRpcPluginQuery.java \
239338
test/tsd/TestPutRpc.java \
339+
test/tsd/TestQueryExecutor.java \
240340
test/tsd/TestQueryRpc.java \
241341
test/tsd/TestQueryRpcLastDataPoint.java \
242342
test/tsd/TestRpcHandler.java \
@@ -252,6 +352,7 @@ test_SRC := \
252352
test/uid/TestRandomUniqueId.java \
253353
test/uid/TestUniqueId.java \
254354
test/utils/TestByteArrayPair.java \
355+
test/utils/TestByteSet.java \
255356
test/utils/TestConfig.java \
256357
test/utils/TestDateTime.java \
257358
test/utils/TestExceptions.java \
@@ -286,11 +387,11 @@ test_DEPS = \
286387
$(tsdb_DEPS) \
287388
$(JAVASSIST) \
288389
$(JUNIT) \
289-
$(HAMCREST) \
390+
$(HAMCREST) \
290391
$(MOCKITO) \
291-
$(OBJENESIS) \
392+
$(OBJENESIS) \
292393
$(POWERMOCK_MOCKITO) \
293-
$(jar)
394+
$(jar)
294395

295396
httpui_SRC := \
296397
src/tsd/client/DateTimeBox.java \
@@ -304,12 +405,18 @@ httpui_SRC := \
304405

305406
httpui_DEPS = src/tsd/QueryUi.gwt.xml
306407

408+
# TODO(CL) - There is likely a MUCH better way to compile and add the expression sources and jars.
409+
expr_grammar = $(srcdir)/src/parser.jj
410+
expr_package = net/opentsdb/query/expression/parser
411+
expr_src_dir = $(builddir)/src/$(expr_package)
412+
get_expr_classes = `classes=''; for f in $(packagedir)$(expr_package)/*.class; do classes="$$classes $$f"; done; echo $$classes;`
413+
307414
#dist_pkgdata_DATA = src/logback.xml
308415
dist_static_DATA = \
309416
src/tsd/static/favicon.ico \
310417
src/tsd/static/opentsdb_header.jpg
311418

312-
EXTRA_DIST = tsdb.in $(tsdb_SRC) $(test_SRC) \
419+
EXTRA_DIST = tsdb.in $(tsdb_SRC) $(test_SRC) $(expr_grammar) \
313420
$(test_plugin_SRC) $(test_plugin_MF) $(test_plugin_SVCS:%=test/%) \
314421
$(THIRD_PARTY) $(THIRD_PARTY:=.md5) \
315422
$(httpui_SRC) $(httpui_DEPS) \
@@ -379,6 +486,9 @@ filter_src = \
379486
src="$$src $$i";; \
380487
esac; \
381488
done; \
489+
for f in $(expr_src_dir)/*.java; do \
490+
src="$$src $$f"; \
491+
done; \
382492
test -n "$$src" || exit 0
383493
# Touches all the targets if any of the dependencies are newer.
384494
# This is useful to force-recompile all files if one of the
@@ -395,7 +505,7 @@ $(tsdb_SRC): $(tsdb_DEPS)
395505

396506
find_jar = test -f "$$jar" && echo "$$jar" || echo "$(srcdir)/$$jar"
397507
get_dep_classpath = `for jar in $(tsdb_DEPS); do $(find_jar); done | tr '\n' ':'`
398-
.javac-stamp: $(tsdb_SRC) $(builddata_SRC)
508+
.javac-stamp: $(tsdb_SRC) $(builddata_SRC) runjavacc
399509
@$(filter_src); cp=$(get_dep_classpath); \
400510
echo "$(JAVA_COMPILE) -cp $$cp $$src"; \
401511
$(JAVA_COMPILE) -cp $$cp $$src
@@ -611,8 +721,8 @@ manifest: .javac-stamp .git/HEAD
611721
echo "Implementation-Version: $(git_version)"; \
612722
echo "Implementation-Vendor: $(spec_vendor)"; } >"$@"
613723

614-
$(jar): manifest .javac-stamp $(classes)
615-
$(JAR) cfm `basename $(jar)` manifest $(classes_with_nested_classes) \
724+
$(jar): manifest .javac-stamp
725+
$(JAR) cfm `basename $(jar)` manifest $(classes_with_nested_classes) $(get_expr_classes) \
616726
|| { rv=$$? && rm -f `basename $(jar)` && exit $$rv; }
617727
# ^^^^^^^^^^^^^^^^^^^^^^^
618728
# I've seen cases where `jar' exits with an error but leaves a partially built .jar file!
@@ -636,6 +746,9 @@ $(JAVADOC_DIR)/index.html: $(tsdb_SRC)
636746
-link $(JDK_JAVADOC) -link $(NETTY_JAVADOC) -link $(SUASYNC_JAVADOC) \
637747
$? $(builddata_SRC)
638748

749+
runjavacc:
750+
$(JAVA) -cp $(JAVACC) javacc -OUTPUT_DIRECTORY:$(expr_src_dir) $(expr_grammar); echo PWD: `pwd`;
751+
639752
dist-hook:
640753
$(mkdir_p) $(distdir)/.git
641754
echo $(git_version) >$(distdir)/.git/HEAD
@@ -666,6 +779,8 @@ pom.xml: pom.xml.in Makefile
666779
echo '<!-- Generated by Makefile on '`date`' -->'; \
667780
sed <$< \
668781
-e 's/@ASYNCHBASE_VERSION@/$(ASYNCHBASE_VERSION)/' \
782+
-e 's/@ASYNCBIGTABLE_VERSION@/$(ASYNCBIGTABLE_VERSION)/' \
783+
-e 's/@ASYNCCASSANDRA_VERSION@/$(ASYNCCASSANDRA_VERSION)/' \
669784
-e 's/@GUAVA_VERSION@/$(GUAVA_VERSION)/' \
670785
-e 's/@GWT_VERSION@/$(GWT_VERSION)/' \
671786
-e 's/@GWT_THEME_VERSION@/$(GWT_THEME_VERSION)/' \
@@ -684,9 +799,14 @@ pom.xml: pom.xml.in Makefile
684799
-e 's/@SUASYNC_VERSION@/$(SUASYNC_VERSION)/' \
685800
-e 's/@ZOOKEEPER_VERSION@/$(ZOOKEEPER_VERSION)/' \
686801
-e 's/@APACHE_MATH_VERSION@/$(APACHE_MATH_VERSION)/' \
802+
-e 's/@JEXL_VERSION@/$(JEXL_VERSION)/' \
803+
-e 's/@JGRAPHT_VERSION@/$(JGRAPHT_VERSION)/' \
687804
-e 's/@spec_title@/$(spec_title)/' \
688805
-e 's/@spec_vendor@/$(spec_vendor)/' \
689806
-e 's/@spec_version@/$(PACKAGE_VERSION)/' \
807+
-e 's/@maven_profile_hbase@/$(maven_profile_hbase)/' \
808+
-e 's/@maven_profile_bigtable@/$(maven_profile_bigtable)/' \
809+
-e 's/@maven_profile_cassandrae@/$(maven_profile_cassandra)/' \
690810
; \
691811
} >$@-t
692812
mv $@-t ../$@
@@ -741,7 +861,7 @@ debian: dist staticroot
741861
cp -r gwt/queryui/* $(distdir)/debian/usr/share/opentsdb/static
742862
`for dep_jar in $(tsdb_DEPS); do cp $$dep_jar \
743863
$(distdir)/debian/usr/share/opentsdb/lib; done;`
744-
cp $(top_srcdir)/tools/* $(distdir)/debian/usr/share/opentsdb/tools
864+
cp -r $(top_srcdir)/tools/* $(distdir)/debian/usr/share/opentsdb/tools
745865
dpkg -b $(distdir)/debian $(distdir)/opentsdb-$(PACKAGE_VERSION)_all.deb
746866

747867
.PHONY: jar doc check gwtc gwtdev printdeps staticroot gwttsd rpm

0 commit comments

Comments
 (0)