Hi Drill devs, There are couple of ongoing projects - Resource Manager and the Drill Metastore - that are relatively large in scope. Intermediate PRs will be created for these (for example, there's one open for the metastore [1]. Another one for the RM [2]. These don't currently break existing functionality, so they have been opened against master branch.
The question is, for future PRs, would it make sense to create a separate Drill 2.0 branch ? There are pros and cons. Separate branch would allow development on these features to proceed at a faster pace without disrupting others. However, in Drill we typically have only created a separate branch close to the release, not up-front. It simplifies testing and maintenance to have a unified master branch. Another option is feature specific branch. What do people think about the 3 options: a) Merge intermediate PRs into Apache master as long as they don't break existing functionality. In some cases, temporary config options may be used to enable new functionality for unit testing. b) Create a Drill-2.0 branch which will be work-in-progress and be periodically sync-ed with master branch. Code reviews will be done against this branch. c) Have a feature specific branch - e.g for RM, for Metastore etc. such that collaborators can do peer reviews and merge intermediate commits. These branches will also need to be periodically sync-ed with the master branch. Please share your choice of one of these options and any additional thoughts. [1] https://github.com/apache/drill/pull/1646 [2] https://github.com/apache/drill/pull/1652