'Parallel Safety' in CBDB style parallel plan
- Dominant language
- C
- Stars
- 1.4k
- Forks
- 247
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 39
Description
### Cloudberry Database version
_No response_
### What happened
According to https://www.postgresql.org/docs/14/parallel-safety.html
> The planner classifies operations involved in a query as either parallel safe, parallel restricted, or parallel unsafe. A parallel safe operation is one that does not conflict with the use of parallel query. A parallel restricted operation is one that cannot be performed in a parallel worker, but that can be performed in the leader while parallel query is in use.
However, in our CBDB style parallel, there is no leader process at all.
The `parallel restricted` concept should be reconsidered.
### What you think should happen instead
_No response_
### How to reproduce
NA
### Operating System
NA
### Anything else
_No response_
### Are you willing to submit PR?
- [ ] Yes, I am willing to submit a PR!
### Code of Conduct
- [X] I agree to follow this project's [Code of Conduct](https://cloudberrydb.org/community/coc).
Contributor guide
Research direction
Start by reading PostgreSQL 14's parallel-safety documentation and comparing its leader/worker assumptions with the CBDB-style parallel execution described here. Done requires a decided treatment of the parallel-restricted concept and a corresponding documented or implemented change, but this issue names no files or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- postgresql
- Domain
- databases, distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100