- As an ORCA pair adding a backwards-compatible change, we'd like to be able to rebuild Greenplum without code change so as to see our change in effect in the database.
- As a non-ORCA developer working on Greenplum Database, I'd like
./configure
to fail if my local ORCA version will cause a compilation failure.
Use semver to convey breaking changes:
- Let's start with Greenplum stating an "required version" of
2.9.1
- If Venky improved some implementation of stats (interface preserving), he bumps ORCA version from 2.9.1 to 2.10.0. Venky should be able to rebuild GPDB without changing it to effect his optimizer change. (Implied:
2.10.0
satsifies a "required version" of2.9.1
. - Jesse renaming all the Hungarian function names to Chinese function names should bump ORCA version from 2.9.1 to 3.0.0 . Greenplum should understand that
3.0.0
does not satisfy2.9.1
. Jesse also needs to change autoconf in Greenplum so that when Jimmy rebases, he gets aconfigure
failure, prompting him to "pull and rebuild ORCA".