Druid 0.7.1.1 - Stable
New Features
-
Group results by day of week, hour of day, etc.
We added support for time extraction functions where you can group by results based on anything DateTimeFormatter supports. For more details, see http://druid.io/docs/latest/DimensionSpecs.html#time-format-extraction-function .
-
Audit rule and dynamic configuration changes
Druid now provides support for remembering why a rule or configuration change was made, and who made the change. Note that you must provide the author and comment fields yourself. The IP which issued the configuration change will be recorded by default. For more details, see headers "X-Druid-Author" and "X-Druid-Comment" on http://druid.io/docs/latest/Coordinator.html
-
Provide support for a password provider for the metadata store
This enables people to write a module extension which implements the logic for getting a password to the metadata store.
-
Enable servlet filters on Druid nodes
This enables people to write authentication filters for Druid requests.
Improvements
-
Query parallelization on the broker for long interval queries
We’ve added the ability to break up a long interval query into multiple shorter interval queries that can be run in parallel. This should improve the performance of more expensive
groupBy
s. For more details, see "chunkPeriod" on http://druid.io/docs/latest/Querying.html#query-context -
Better schema exploration
The broker can now return the dimensions and metrics for a datasource broken down by interval.
-
Improved code coverage
We’ve added numerous unit tests to improve code coverage and will be tracking coverage in the future with Coveralls.
-
Additional ingestion metrics
Added additional metrics for failed persists and failed handoffs.
-
Configurable InputFormat for batch ingestion (#1177)
Bug Fixes
- Fixed a bug where sometimes the broker and coordinator would miss announcements of segments, leading to null pointer exceptions. (#1161)
- Fixed a bug where groupBy queries would fail when aggregators and post-aggregators were named the same (#1044)
- Fixed a bug where not including a
pagingSpec
in a select query generates a obscure NPE (#1165). Thanks to friedhardware! - "bySegment" groupBy queries should now work (#1180)
- Honor
ignoreInvalidRows
in reducer for Hadoop indexing - Download dependencies from Maven Central over https
- Updated MySQL connector to fix issues with recent MySQL versions
- Fix
timeBoundary
query on union datasources (#1243) - Fix Guice injections for
DruidSecondaryModule
(#1245) - Fix log4j version dependencies (#1239)
- Fix NPE when partition number 0 does not exist (#1190)
- Fix arbitrary granularity spec (#1214) and ignore rows with invalid interval for index task (#1264)
- Fix thread starvation in AsyncQueryForwardingServletTest (#1233)
- More useful ZooKeeper log messages
- Various new unit tests for things
- Updated MapDB to 1.0.7 for bugfixes
- Fix re-uploading of self-containted SNAPSHOT jars when developing on hadoop (#1261)
Documentation
- Reworked the flow of Druid documentation and fixed numerous errors along the way.
- Thanks to @infynxx for fixing many of our broken links!
- Thanks to @mrijke for many fixes with metrics and emitter configuration.
- Thanks to @b-slim, @bobrik and @andrewserff for documentation and example fixes
Misc
- Improved startup scripts thanks to @housejester.