This Week in Elasticsearch and Apache Lucene - March 25, 2015
Welcome to This Week in Elasticsearch and Apache Lucene! With this new weekly post, we're bringing you an update on all things Elasticsearch and Apache Lucene at Elastic, including the latest on commits, releases and other learning resources.
We're experimenting with this new format, and we welcome your feedback. Give us a shout on Twitter to let us know what you think!
Developer All Hands Meeting
Last weekend, the Elasticsearch developer team met for an all hands meeting following Elastic{ON}. This was the first time since June of last year that the entire engineering team came together in one place. We're an incredibly distributed team that's doubled in size since then, so coming together to get on the same page, in the same place was, in a word, fantastic. (P.S. We're hiring.)
We took the time to learn about our new friends at Found, discuss the immediate and long term future, and just talk shop about the projects we love. But we didn't stop there: we discussed our culture, our communication styles, and of course, we also got to know each other better in a way one can only do in person: over a beer or two. We even spent a night hacking together which produced some pretty cool ideas.
Top News
In case you missed it, we released Elasticsearch 1.5.0 on Monday! This is the latest stable version of Elasticsearch. It contains a number of important resiliency enhancements and bug fixes, and we advise all users to upgrade. This release also includes two new experimental features, inner hits and shadow replicas.
Read all about the release and these new features in Clinton Gormley's release announcement.
Elasticsearch: Level Up
We'll share the wider world of all Elasticsearch news with you weekly on Wednesdays in our This Week in Elastic post. But we'll always bring you at least one awesome learning resource here weekly too.
From our new Found family members: Designing for your multi-tenant Elasticsearch application, including tips and tricks for scaling up and out.
Have a recommended article, blog post or video you think we should feature in this section? Let us know!
Elasticsearch Core
- Mappings: Fix _field_names to be disabled on pre 1.3.0 indexes (#10268, 2.0.0, 1.6.0, 1.5.1)
- Tests: Add delete-by-query into translog in OldIndexBackwardsCompatibilityTests (#10266, 2.0.0, 1.6.0, 1.5.1)
- Tests: Enable inline scripts on demand in bw comp tests (#10282, 2.0.0, 1.6.0)
- Scripting: add support for fine-grained settings (#10116, 2.0.0, 1.6.0)
- Mappings: update dynamic fields in mapping on master even if parsing fals for the rest of the doc (#9874, 2.0.0, 1.6.0)
- Core: Enable doc values by default, when appropriate (#10209, 2.0.0)
- Internal: Fix thread leak in Hunspell service tests (#10020, 2.0.0, 1.6.0, 1.5.1)
- Core: Fail shard when index service/mappings fails to instantiate (#10283, 2.0.0, 1.6.0, 1.5.1)
- inner_hits: Fix nested stored field support. (#10235, 2.0.0, 1.6.0, 1.5.1)
- children aggregation: Fix 2 bugs in 'children' agg (#10263, 2.0.0, 1.6.0, 1.5.1)
- Core: The parent option on update request should be used for upsert only. (#9612, 2.0.0, 1.6.0)
- Internal: Fix errors reported by error-prone (#9817, 2.0.0, 1.6.0)
- Internal: Fix wrong use of currentFieldName outside of a parsing loop (#10307, 2.0.0, 1.6.0, 1.5.1)
- Percolator: Fix multi percolate response sample in documentation (#10306, 2.0.0, 1.6.0, 1.5.1, 1.4.5)
- Tests: Assert that we do not leak SearchContexts. (#9595, 2.0.0)
- Internal: Don't try to send a mapping refresh if there is no master (#10311)
- Recovery: RecoveryState.File.toXContent reports file length as recovered bytes (#10310, 2.0.0, 1.6.0, 1.5.1)
- Core: Also refresh if many deletes in a row use up too much version map RAM (#10312, 2.0.0, 1.6.0, 1.5.1)
- Tests: Move FakeRestRequest to org.elasticsearch.test.rest (#10323)
- Netty: Add getter for channel in NettyTransportChannel (#10319, 2.0.0, 1.6.0)
- Tests: Add ability to launch bootstrapped ES using maven (#10287)
Elasticsearch Plugin Releases
- Running Elasticsearch on AWS? We've upgraded our Elasticsearch AWS Cloud plugin to version 2.5.0, including updating to Elasticsearch 1.5, plus bug fixes and a couple of new features.
- More of a fan of Google Compute Engine? We've got you covered. Check out the latest version of our Google Compute Engine Cloud plugin, now updated to work with Elasticsearch 1.5 plus bug fixes.
- If you're a lover of Elasticsearch's language analysis plugins, the past week has been a great one. In addition to other updates, each of these plugins is now compatible with Elasticsearch 1.5: Japanese (kuromoji) Analysis, ICU Analysis, Phonetic Analysis, Stempel (Polish) Analysis, and Smart Chinese Analysis
Elastic and Apache Lucene
- Segment merging now logs the time to write field infos as well
- TermsQuery hashCode was assigning the same hash code even when terms were different
- Speed up PrefixTreeStrategy in Lucene's spatial module by not creating redundant leaf terms
- Improve concurrency of the query cache
- DefaultSimilarity had the wrong example float in its javadocs
- Improve error reporting when Lucene version strings cannot be parsed
- Reduce heap required by TermsQuery
Watch This Space
Stay tuned to the blog, where we'll share more news on the whole ELK ecosystem including news, learning resources and cool use cases!