Added a new index
field to structs - if available - #38
Switched to passing authorization headers, rather than parameters, through to AWS (for AWS Signature v4). It seemed that AWS was passing these parameters through to Elastic Search, which was causing issues. See #23 for the original issue, and #24 for the fix.
Added basic_auth
and timeout
options to HTTP requests - #22
Fixed issue where posting with NDJSON body was broken - #20 / #31
- Bumped dependencies
- Switched from Poison to Jason for JSON encoding / decoding
Reject empty strings in Index.name/1 - #19
Added parameterised version of Index.create
- #18
Support lots of different ElasticSearch versions.
Relax Poison dependency to allow ~> 2.2 or ~> 3.0.
- Increased default
Elastic.HTTP
timeout from 5 seconds to 30 seconds. This change was made because sufficiently largebulk_create
queries may cause Elastic Search to take longer than 5 seconds to process them. If you're still seeingbulk_create
queries timing out, consider splitting them into smaller queries.
- Added
Elastic.Scroller
for Scroll API support.
- Added
Elastic.Index.open/1
andElastic.Index.close/1
- Added missing documentation for
Elastic.Index
- Gracefully handle
connection_closed
errors from Elastic Search. These can occur, for example, when you're trying to index a document with an invalid ID:Elastic.HTTP.post("/elastic_test/test/1 foo", body: %{test: true})
. (The ID of "1 foo" is not valid) - Added
index_exists?
toDocument.API
so that you can call this function on the module that usesDocument.API
, rather than rolling your own version.
- Fixed a tiny issue with
Document.API
documentaiton.
- Added
Elastic.HTTP.head
for makingHEAD
requests. - Added
Elastic.Index.exists?
for checking if an index exists or not.
- Fix bug where
Elastic.Bulk.update
would throw an error.
- Added
Elastic.Bulk
for bulk operations. Currently only supportscreate
andupdate
. See documentation for more information. Document.API.index
andDocument.API.update
are no longer interchangeable.update
will now do a partial update to the document, rather than creating a new version of that document.
Added Elastic.HTTP.bulk
.
Handle econnrefused
and nxdomain
errors gracefully.
Added Elastic.Document.API.search_query
for better compatibility with scrivener_elastic
.
Document.API.count
has now been moved toDocument.API.raw_count
. Useraw_count
if you want to maintain the behaviour from 2.0.- Added
Elastic.Query
forScrivener
compatibility. See thescrivener_elastic
package for more information.
Document.API.search
has now been moved toDocument.API.raw_search
. Useraw_search
if you want to maintain the behaviour from 1.0.
- Initial release.