-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/66064/
-----------------------------------------------------------
Review request for atlas.
Summary (updated)
-----------------
ATLAS-2478 Elasticsearch support broken with JanusGraph 0.2.0
Bugs: ATLAS-2478
https://issues.apache.org/jira/browse/ATLAS-2478
Repository: atlas
Description (updated)
-------
This patch fixes the Elasticsearch support for JanusGraph 0.2.0 and updates
documentation.
Included with this patch is an update to the berkley-elasticsearch profile to
automatically download and include elasticsearch as a side application much
like solr is. Updates to the start/stop/conf scripts are included as well.
NOTE: This patch includes a **BACKWARDS INCOMPATIBLE** change to
/atlas/common/src/main/java/org/apache/atlas/repository/Constants.java. There
are six constants that are incorrectly named with a '.' (dot). This is not
supported in Elasticsearch 5 and beyond when defining a mapping **UNLESS** the
field names can be collectively thought of as an object. In the case of the
fields defined in the Constants.java file, 'type' is defined as a string field,
and 'type.name' is also defined as a string field. Elasticsearch sees this as
an error, since it cannot convert type to an object. The fix included simply
changes the field names from using a '.' (dot) to an '_' (underscore).
**Query**: There is a way we can simplify integration/unit tests for the
in-memory graph store by using a maven plugin that will download and run an
elasticsearch node. This is nothing more than a maven change, and change to the
atlas-application.properties to switch to elasticsearch from solr. I did not
implement this, but am curious if this change would be desired. If so, this can
be done with a separate ticket.
Testing (updated)
-------
We currently use this fix with our Atlas setup in a fork of the Atlas code, and
have found no issues with it. Additionally, with the update to the
berkley-elasticsearch profile, I have extensively tested that profile to make
sure that management of Elasticsearch functioned correctly.
Thanks,
Pierre Padovani