Show HN: DBOS TypeScript – Lightweight Durable Execution Built on Postgres
11–20 of 51 posts
Re: Show HN: DBOS TypeScript – Lightweight Durable Execution Built on Postgres
#12Could you genericise the requirement in postgresql and provide a storage interface we could plug into? I think I have a use for this in Polykey ( https://GitHub.com/MatrixAI/Polykey ) but we use rocksdb (transactional key value embedded db).
Did you do literature research of Smalltalk?
Re: Show HN: DBOS TypeScript – Lightweight Durable Execution Built on Postgres
#13Re: Show HN: DBOS TypeScript – Lightweight Durable Execution Built on Postgres
#14Re: Show HN: DBOS TypeScript – Lightweight Durable Execution Built on Postgres
#15Earlier quoted context omitted.
The state can be stored in any Postgres instance, either locally or in any cloud. For code, here's the bare minimum code example for a workflow: class Example { @DBOS.step() static async step_one() { ... } @DBOS.step() static async step_two() { ... } @DBOS.workflow() static async workflow() { await Example.step_one() await Example.step_two() } } The steps can be any TypeScript function. Then we have a bunch more exam…
Are there any constraints around which functions can be turned into steps? I assume their state (arguments?) need to be serializable? Also, what happens with versioning? What if I want to deploy new code?
For versioning, each workflow is tagged with the code version that ran it, and we recommend recovering workflows on an executor running the same code version as what the workflow started on. Docs for self hosting: https://docs.dbos.dev/typescript/tutorials/development/self-.... In our hosted service (DBOS Cloud) this is all done automatically.
Re: Show HN: DBOS TypeScript – Lightweight Durable Execution Built on Postgres
#16https://supabase.com/blog/durable-workflows-in-postgres-dbos https://news.ycombinator.com/item?id=42379974
Re: Show HN: DBOS TypeScript – Lightweight Durable Execution Built on Postgres
#17Could you genericise the requirement in postgresql and provide a storage interface we could plug into? I think I have a use for this in Polykey ( https://GitHub.com/MatrixAI/Polykey ) but we use rocksdb (transactional key value embedded db).
Re: Show HN: DBOS TypeScript – Lightweight Durable Execution Built on Postgres
#18Hello! I'm a co-founder at DBOS here and I'm happy to answer any questions :)
Re: Show HN: DBOS TypeScript – Lightweight Durable Execution Built on Postgres
#19Hello! I'm a co-founder at DBOS here and I'm happy to answer any questions :)
Re: Show HN: DBOS TypeScript – Lightweight Durable Execution Built on Postgres
#20Hello! I'm a co-founder at DBOS here and I'm happy to answer any questions :)
About workflow recovery: if I'm running multiple instance of my app that uses DBOS and they all crash, how do you divide the work of retrying pending workflows?