Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ELK - No mapping found #125

Open
fabry00 opened this issue Apr 10, 2018 · 13 comments
Open

ELK - No mapping found #125

fabry00 opened this issue Apr 10, 2018 · 13 comments

Comments

@fabry00
Copy link

fabry00 commented Apr 10, 2018

I'm trying to use ELK as storage.
I've created the index:

PUT eventstore
{
 "settings" : {
   "index" : {
     "number_of_shards" : 2, 
     "number_of_replicas" : 1
    }
  }
}

But now I got the follow error:

eventstore:store:elasticsearch No mapping found for [commitStamp] in order to sort on

How can I configure ELK?
Ca you update the documentation?

thaks

@adrai
Copy link
Contributor

adrai commented Apr 10, 2018

@gerbenmeyer can you help?

@gerbenmeyer
Copy link
Contributor

As far as I recall, you should not create the index yourself, as it is auto-created. Super long time ago though that I worked on this :)

@gssumesh
Copy link

I am facing same issue. Had to create the index because initially on startup it complained index eventstore doesn't exist. So if you create index we end up getting this error. It could be because of new version of Elasticsearch and the way it changed behaviour. I was using 7.0.1 in docker.

@nanov
Copy link
Contributor

nanov commented May 16, 2019

Just my two cents, by looking at the driver it seems to be written for older versions of Elasticsearch ( i would say 2.x ) so even if you overcome this issue more issues are to be expected ( usage of types for example ).

May I ask what is the motivation behind using elasticsearch as eventstore?

@gssumesh
Copy link

@nanov you are right. It could break because now ES doesn't support type field in index. For me personally, was trying out options other than Redis to try and test locally with different eventstore. Less relevant to issue but to your question:
Which other from supported eventstore you recommend as good for event storage? I mean is it DynamoDB or Redis e.t.c

@bikerp
Copy link

bikerp commented May 22, 2019

I'm facing the same issue (using 7.0.1 in docker)

eventstore:store:elasticsearch no such index [eventstore] +0ms

I had to manually create an index. But then I got this error:

eventstore:store:elasticsearch No mapping found for [revision] in order to sort on +0ms
eventstore:store:elasticsearch No mapping found for [commitStamp] in order to sort on +9ms

@bikerp
Copy link

bikerp commented May 24, 2019

May I ask what is the motivation behind using elasticsearch as eventstore?

@nanov Currently I use DynamoDB as event store. I'm wondering if there might be issues related to events replay. Since the DynamoDB is key/value database how do you solve the replay of all events?

@nanov
Copy link
Contributor

nanov commented May 26, 2019

@bikerp I'm not sure about the DynamoDB implementation, maybe @developmentalmadness has some insights.

As of the Elasticsearch implementation, theres some work that needs to be done in order to make it compatible with elasticsearch 7.X ( or 6.X for that matter ). I'm not sure it is worth looking into it, as, in my opinion, elasticsearch is totally not suitable to serve as an eventstore.

@bikerp
Copy link

bikerp commented May 26, 2019

@nanov Thanks for the reply. Could you be more specific why elasticsearch is not suitable as eventstore?

@nanov
Copy link
Contributor

nanov commented May 26, 2019

Well elasticsearch isn't exactly a database, it has some issues with error handling and it isn't recommended as a main database in any use case. When indexing new documents ( ie writing ), they aren't available for search instantly ( unless you use the wait_for flag, which makes writes slow ) and generally it is designed for other purposes ( well, full-text search ).

Having that said, having your eventstore in something more reliable and suitable ( as in eventsourcing this is the only source of truth ) and readmodels in elasticsearch is a totally valid use case.

@bikerp
Copy link

bikerp commented May 26, 2019

@nanov Thanks for the explanation.

@developmentalmadness
Copy link
Contributor

Haven't worked on it in a couple years but I don't think DynamoDB has snapshots implemented. That would be a major drawback unless your model had limited lifetime as ours did when I implemented it.

@developmentalmadness
Copy link
Contributor

Should have checked first before I replied... Looks like snapshots are implemented but our usage didn't need snapshots. Dynamo should be able to handle the usage pattern but I left the company using this 8 months after we put it into production so I don't have much long term insights into any issues with it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants