-
Notifications
You must be signed in to change notification settings - Fork 1
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
initial implementation #1
base: master
Are you sure you want to change the base?
Conversation
Changes Unknown when pulling 5042095 on implementation into ** on master**. |
Changes Unknown when pulling 5cea7e9 on implementation into ** on master**. |
Changes Unknown when pulling e0a7fba on implementation into ** on master**. |
Changes Unknown when pulling 13a179b on implementation into ** on master**. |
Changes Unknown when pulling 6cadd12 on implementation into ** on master**. |
Changes Unknown when pulling cf12dac on implementation into ** on master**. |
Changes Unknown when pulling 33d2c7b on implementation into ** on master**. |
Changes Unknown when pulling 05ba0e8 on implementation into ** on master**. |
ping @codeliner ready for review |
Changes Unknown when pulling e296d52 on implementation into ** on master**. |
ping @codeliner |
case 405: | ||
throw new NotAllowed(); | ||
default: | ||
throw new RuntimeException('Unknown error occurred'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What happens if event-store-http-api is (temporarily) not available? Can we catch that situation and throw a NotAvailable exception that can be caught for retry?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same question for all API communication of course
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure, let me check.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
k
|
||
public function createQuery(): Query | ||
{ | ||
throw new \BadMethodCallException(__METHOD__ . ' not implemented'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will this be possible in future versions?
I'm asking because the use case is very interesting. If service A publishes its event stream via http api, service B could consume it using http-lug-event-store with a projection
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That would be nice, indeed. But I am not yet sure on how this can be implemented.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe we should rethink projections one more time. I plan an experiment once the new arangoDB event store is ready (with the native php extension developed by @sandrokeil and @martin-schilling). You can add stream processing capabilities to arango similar to the mongodb 3.6 stream watch feature.
The streaming API provides a way to start at a specific position in the stream and consume messages from that position forward (maybe we can use http/2 to establish a permanent connection). If a new message is written to the stream it is pushed to the consumer as long as the consumer watches the stream.
The consumer on the other side uses a local store to remember current stream position.
Maybe server and consumer need to run within an event loop. With react/http supporting PSR-7 now this becomes a very interesting field to explore.
great work like usual ;) |
No description provided.