Giter Site home page Giter Site logo

Comments (3)

slashdotdash avatar slashdotdash commented on May 22, 2024

The order of events in a stream is determined by the stream_version column in the stream_events table. You can run the following SQL query for a given stream id to get ordered events. Stream id 0 is the global “all events” stream.

A Commanded event handler is guaranteed to receive events in the order they appear in the stream. An Ecto projector is just a specialised Commanded event handler.

If you can create a code sample to reproduce the issue you are seeing I will take a look.

from commanded-ecto-projections.

larskluge avatar larskluge commented on May 22, 2024

Thank you for this @slashdotdash ! It's good to know the guarantee.

Not sure which stream the projector runs on, but either way, joined w/ stream_events and ordered by stream_version, it still is the correct order:

image

Will dig a bit more and if that does not help will try to create some code to reproduce.

from commanded-ecto-projections.

larskluge avatar larskluge commented on May 22, 2024

Ok, this must have been my fault. I can't reproduce and its gone. Rebuilt the projection from scratch, first time exploded again, second time runs smoothly now, probably all the way through to the end.

Reason was probably some unclean state while developing the projector or some unclean state was produced when shutting down the development Elixir process while projecting (CTRL+\) and upon continue it exploded then..

However, this is not a bug in this project. Closing this issue. Thanks for your help!

from commanded-ecto-projections.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.