FYI, I have changes (and will PR them) that enable PIO to work with ES 6
and are backwards-compatible with earlier ES versions.
The downside, and the reason this should go in a non-patch release is that
ES 6 necessitates changes to the metadata structure, and this breaks
existing PIO apps.
This is because ES 6 no longer allows creation of indices with multiple
types (see
https://www.elastic.co/blog/index-type-parent-child-join-now-future-in-elasticsearch
)

Alex

On Thu, Sep 20, 2018 at 10:49 AM Praveen Bhasker <neevarp.f...@gmail.com>
wrote:

> Hi Donald,
>
> That worked. Thanks!
>
> - Praveen
>
> On Thu, Sep 20, 2018 at 11:39 AM Donald Szeto <don...@apache.org> wrote:
>
>> Hi Praveen,
>>
>> It looks like you are using Elasticsearch 6. I think there are some
>> breaking changes with ES6 API compared to ES5, and PredictionIO does not
>> officially support ES6 yet.
>>
>> Regards,
>> Donald
>>
>> On Thu, Sep 20, 2018 at 7:06 AM Praveen Bhasker <neevarp.f...@gmail.com>
>> wrote:
>>
>>> When ever I do pio status I get the following error
>>>
>>> [INFO] [Management$] Inspecting PredictionIO...
>>> [INFO] [Management$] PredictionIO 0.13.0 is installed at 
>>> /Users/prvns/tools/PredictionIO-0.13.0
>>> [INFO] [Management$] Inspecting Apache Spark...
>>> [INFO] [Management$] Apache Spark is installed at 
>>> /Users/prvns/tools/PredictionIO-0.13.0/vendors/spark-2.3.1-bin-hadoop2.7
>>> [INFO] [Management$] Apache Spark 2.3.1 detected (meets minimum requirement 
>>> of 1.6.3)
>>> [INFO] [Management$] Inspecting storage backend connections...
>>> [INFO] [Storage$] Verifying Meta Data Backend (Source: ELASTICSEARCH)...
>>> [ERROR] [Management$] Unable to connect to all storage backends 
>>> successfully.
>>> The following shows the error message from the storage backend.
>>>
>>> PUT http://localhost:9200/pio_meta/_mapping/engine_instances: HTTP/1.1 400 
>>> Bad Request
>>> {"error":{"root_cause":[{"type":"parse_exception","reason":"Failed to parse 
>>> content to map"}],"type":"parse_exception","reason":"Failed to parse 
>>> content to 
>>> map","caused_by":{"type":"json_parse_exception","reason":"Duplicate field 
>>> 'status'\n at [Source: 
>>> org.elasticsearch.common.compress.DeflateCompressor$1@6b496f00; line: 1, 
>>> column: 462]"}},"status":400} 
>>> (org.apache.predictionio.shaded.org.elasticsearch.client.ResponseException)
>>>
>>> Dumping configuration of initialized storage backend sources.
>>> Please make sure they are correct.
>>>
>>> Source Name: ELASTICSEARCH; Type: elasticsearch; Configuration: HOME -> 
>>> /usr/local/Cellar/elasticsearch/6.2.4/, HOSTS -> localhost, PORTS -> 9200, 
>>> SCHEMES -> http, TYPE -> elasticsearch
>>>
>>> My pio-env.sh looks like
>>>
>>> SPARK_HOME=$PIO_HOME/vendors/spark-2.3.1-bin-hadoop2.7
>>> POSTGRES_JDBC_DRIVER=$PIO_HOME/lib/postgresql-42.0.0.jar
>>> MYSQL_JDBC_DRIVER=$PIO_HOME/lib/mysql-connector-java-5.1.41.jar
>>> PIO_FS_BASEDIR=$HOME/.pio_store
>>> PIO_FS_ENGINESDIR=$PIO_FS_BASEDIR/engines
>>> PIO_FS_TMPDIR=$PIO_FS_BASEDIR/tmp
>>> PIO_STORAGE_REPOSITORIES_METADATA_NAME=pio_meta
>>> PIO_STORAGE_REPOSITORIES_METADATA_SOURCE=ELASTICSEARCH
>>> PIO_STORAGE_REPOSITORIES_EVENTDATA_NAME=pio_event
>>> PIO_STORAGE_REPOSITORIES_EVENTDATA_SOURCE=ELASTICSEARCH
>>> PIO_STORAGE_REPOSITORIES_MODELDATA_NAME=pio_model
>>> PIO_STORAGE_REPOSITORIES_MODELDATA_SOURCE=ELASTICSEARCH
>>> PIO_STORAGE_SOURCES_ELASTICSEARCH_TYPE=elasticsearch
>>> PIO_STORAGE_SOURCES_ELASTICSEARCH_HOSTS=localhost
>>> PIO_STORAGE_SOURCES_ELASTICSEARCH_PORTS=9200
>>> PIO_STORAGE_SOURCES_ELASTICSEARCH_SCHEMES=http
>>> PIO_STORAGE_SOURCES_ELASTICSEARCH_HOME=/usr/local/Cellar/elasticsearch/6.2.4/
>>>
>>> Why is this not working?
>>>
>>

Reply via email to