snazy opened a new pull request, #2180: URL: https://github.com/apache/polaris/pull/2180
Just the interfaces and value types needed for "Async & reliable tasks", the first three modules as described in `tasks/README.md`. The 3 different modules serve different "audiences": * API is for call sites that submit tasks via the `Tasks` interface. * SPI is for task/behavior implementations * Store is for persistence abstraction, only for tasks implementations The only entry point is the `org.apache.polaris.tasks.api.Tasks` interface with a function defining the behavior and provide a parameter object (if necessary), returning a `TaskSubmission`. Call sites _may_ subscribe to a `CompletionStage`, but the idea is that it's rather "fire and forget" and the task behavior does "everything that's needed". The allows that the task runs on on any node. There's no guarantee in any form that a tasks will run "locally" or any other specific node. Every Polaris node can handle task execution and perform failure/retry handling. Polaris nodes may use a "server" implementation or a "client" implementation or a "remote" implementation - that's defined upon deployment or by configuration (TBD). Implementations would be abstracted similarly: * Store implementation with NoSQL specifics, especially for the indexed/sorted lookups * Store implementation with JDBC specifics (can leverabe `BasePersistence`) * Tasks implementation for servers, clients and remote -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@polaris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org