-
Notifications
You must be signed in to change notification settings - Fork 113
erlcron 🕥 #228
Copy link
Copy link
Open
Labels
T1hTime Estimate 1 HourTime Estimate 1 HourdiscussShare your constructive thoughts on how to make progress with this issueShare your constructive thoughts on how to make progress with this issueelixirPull requests that update Elixir codePull requests that update Elixir codeenhancementNew feature or enhancement of existing functionalityNew feature or enhancement of existing functionalitytechnicalA technical issue that requires understanding of the code, infrastructure or dependenciesA technical issue that requires understanding of the code, infrastructure or dependencies
Metadata
Metadata
Assignees
Labels
T1hTime Estimate 1 HourTime Estimate 1 HourdiscussShare your constructive thoughts on how to make progress with this issueShare your constructive thoughts on how to make progress with this issueelixirPull requests that update Elixir codePull requests that update Elixir codeenhancementNew feature or enhancement of existing functionalityNew feature or enhancement of existing functionalitytechnicalA technical issue that requires understanding of the code, infrastructure or dependenciesA technical issue that requires understanding of the code, infrastructure or dependencies
Need to make time to explore this package: https://github.com/erlware/erlcron
Looks to include most of the use-cases we would need to run a "reminders" type app.
However, it is still subject to process/server failure ...
i.e. if the process dies your reminder dies with it. 💀
So ... maybe we need a hybrid approach:
event/reminderin aDSLthat can easily be understood by a human and converted toSQL.event/reminderto a distributedPostgres(or other reliable DB)event/reminderrecords into a process-basedcronwhen the server starts.newevent/reminderrecords are first inserted intoPostgresfor persistence/availabilityand then loaded into an
Erlangprocess.The open questions are:
A. How do we know that a reminder is only loaded on one server/instance to avoid duplication?
B. Does
erlcronunderstand time-zones? (it appears to, how can we test it to avoid bugs?)C. What happens to an
event/reminderthat is meant to trigger when the server/instance is offline?