Giter Site home page Giter Site logo

Writing to EventStore is taking so much time, sometimes it doesn't work, and events don't reach directly to Application endpoint. about aggregates.net HOT 8 CLOSED

AbdoDabbas avatar AbdoDabbas commented on May 29, 2024
Writing to EventStore is taking so much time, sometimes it doesn't work, and events don't reach directly to Application endpoint.

from aggregates.net.

Comments (8)

charlessolar avatar charlessolar commented on May 29, 2024 1

Oh yes I absolutely agree if you are pausing the debugger in an app you'll need to set the timeouts very long.

Agg.net doesn't handle connecting to the event store itself but the logic is simple using the event store api.
You'll also need to set the timeouts on the server settings as well

from aggregates.net.

charlessolar avatar charlessolar commented on May 29, 2024

There's a few things you can check -

  • Events are saved when the message processing is ending - you can place a breakpoint on message handling and pause every command to make sure the events are being written

  • verify the event projections in the eventstore UI are correct. They are setup automatically but you'll want to see 2 different projections with different sets of events they handle

  • after receiving events at the application - verify the persistent subscription shows X events of X processed. Meaning they were all processed and ACKd correctly

from aggregates.net.

AbdoDabbas avatar AbdoDabbas commented on May 29, 2024

So for point 1:
I think you mean to take a look at the EventStore -> StreamBrowser and make sure the models I triggered in the Apply are there, if that's the case, yes I checked and they're there and also I see a stream named after the application endpoint and inside it the events I triggered in the domain.

Point2:
I'll check.

Point3:
Sorry but where to check this? when I put break point in the application handler I receive the events (all of them again and again) and I do return without doing any action inside the handler at all, do I need to to any thing to ACK correctly?

from aggregates.net.

charlessolar avatar charlessolar commented on May 29, 2024

No you dont have to ACK them Agg.Net does that. You should just verify that under persistent subscriptions in the eventstore UI it shows that you processed all your events correctly.

That would be the only reason why you'd receive the events more than once - if the events were not successfully processed that is

from aggregates.net.

charlessolar avatar charlessolar commented on May 29, 2024

@AbdoDabbas Figure out the issue?

from aggregates.net.

AbdoDabbas avatar AbdoDabbas commented on May 29, 2024

from aggregates.net.

AbdoDabbas avatar AbdoDabbas commented on May 29, 2024

I left the project for a while and came back to it.
I figured out why sometimes the events don't reach the Application endpoint:
Connections for Persistent Subscriptions are lost if the console debugged using VisualStudio..
This isdue I opened on EventStore repo.
Is there a way to change the resubscribsion behaviour on without modifying the lib code?

from aggregates.net.

AbdoDabbas avatar AbdoDabbas commented on May 29, 2024

Hi @charlessolar,
Regarding the issue of setting timeout, any advice ?!

from aggregates.net.

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.