-
Notifications
You must be signed in to change notification settings - Fork 450
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
Hook capability for event changes and deletions #1092
Conversation
I don't think this will work.
My suggestion: Write a program that reads the filesystem storage folder directly and sends messages to RabbitMQ (as an example) for all new and deleted items since it was last run. Start the program via storage->hook. Additionally run it on startup and at time intervals to catch external changes and crashes. |
Honestly, manually or external program changes should be omitted because if we will consider touching files outside of the service, what will be the point of having the radicale. So I can write a program which will be the replacement of caldav service. Because of this reason, my hook implementation is just covering the changes that are triggered by the requests made to radicale. Currently, I'm testing the service stability on my software. Around 30k people are using right now and planning to tune the performance for 5M people and also thinking to add clustering capability or piling/grouping by hash and make the service reachable by a reverse proxy head because one service will not be enough for all those people and radicale should be scalable somehow. You are right, I've not implemented the hook for moving items. PS: Nobody needed to approve this pull request. They can wait until I make it stabile after heavy usage or if they want, they can completely drop it. Returning the improvements on the code to the source is my responsibility. That's why we have this PR. |
@freakmaxi : this changes a lot, is this still valid? |
Hey, Yes it is valid and working and help us to get the "change" notifications immediately in our backend services. Thanks |
In this case please rebase to Radicale 3 "latest" |
This can be a bit tricky but I'll try next week. Or if you don't have time to wait, you can fork from my repo and merge with the source to solve the conflicts |
No hurry here as being a new feature and if then integrated in 3.2.x |
I told next week but plans are changed on my side. I've done it this week. it is currently ready. you can take a look |
Is |
nope 1.1.0 and up is okay. |
can you please update your PR? |
workflow check triggered but not successful, please investigate, details see above. |
retry please |
still not happy, next issue found... |
it'll be okay this time. re-trigger please... |
finally looks good, merged into new v3.2-devel branch |
Implemented the none and RabbitMQ hook capability for events