Hi team,

It's great to see such active discussions! Just a friendly reminder that
our project name has been changed to Apache Cloudberry. So when referring
to the project, please feel free to use `Apache Cloudberry` or `Cloudberry`
going forward. Let's avoid using "Cloudberry Database" in the future.

Thanks!

Best,
Dianjin Wang


On Wed, Dec 11, 2024 at 12:15 PM Zhang Mingli <avamin...@apache.org> wrote:

> Hi All,
>
> I appreciate the ongoing discussion regarding the versioning strategy for
> Cloudberry Database.
> I wanted to share my perspective on why I strongly believe we should adopt
> semantic versioning (major.minor.patch) instead of the “year.release.patch”
> format seen in Clickhouse.
>
> 1. Alignment with Proven Standards: Cloudberry Database is built on the
> solid foundations of Postgres and Greenplum, both of which utilize semantic
> versioning. By following this established format, we align ourselves with
> best practices and reinforce our commitment to quality and consistency.
>
> 2. Avoiding Compatibility Issues: Our codebase includes numerous
> compatibility checks tied to the current versioning style. Switching to a
> different system could introduce a whirlwind of unnecessary troubles, not
> just for us but for every database and extension built upon Cloudberry. We
> must avoid the chaos that could arise from such a change.
>
> 3. Complications with Kernel Upgrades: As we prepare for our upgrade to
> the PostgreSQL kernel version (currently 14.4), changing our versioning
> style could complicate this process significantly. We would be juggling
> multiple versioning schemes, which could lead to a cascade of issues.
> Maintaining our current format will help streamline future upgrades.
>
> 4. Clarity in Communication: Semantic versioning provides clear
> communication about the nature of each release. Major changes indicate
> breaking changes, while minor updates signal new features without risk.
> This clarity is invaluable for our users, helping them navigate updates
> with confidence.
>
> 5. Predictability and Trust: Predictability is crucial for our users. When
> they know what to expect with each version, they can plan their upgrades
> without fear of unexpected issues. This predictability helps build trust
> within our community and demonstrates our commitment to best practices.
>
> 6. Future-Proofing Cloudberry: As we grow and evolve, semantic versioning
> offers a robust framework that can scale with us. It allows us to introduce
> new features, deprecate old ones, and maintain a clear upgrade path for our
> users.
>
> I believe that by adopting semantic versioning, we can solidify our
> project’s foundation and enhance the overall experience for our users.
> I look forward to hearing your thoughts.
>
> About frequency of our Cloudberry Database releases.
> I agree with the sentiment that we should not release very often.
> Stability is crucial for a database, and prioritizing a stable release
> schedule will ultimately benefit our users.
>
>
> Best regards,
> Zhang Mingli
>
> On 2024/12/09 06:26:13 Max Yang wrote:
> > Hi All,
> >
> > We need to consider when to release Cloudberry 2.0, and how often to
> > release it, which involves the following considerations:
> > The version number consists of three parts: < major >. < minor >. < patch
> > >, namely x.y.z.
> >
> > In the Greenplum release, the bump of major to major version means that
> > metadata and data are no longer compatible. Users need to upgrade or
> import
> > and export data that needs to be displayed. The general release frequency
> > is several years in Greenplum.
> > And bump of minor generally includes some feature releases, but it will
> not
> > cause data incompatibility.
> > Bump of patch is usually a bug fix.
> >
> > We need to consider release candence, especially for major release. After
> > the general version is released, there is a support lifecycle. Therefore,
> > when engineers submit code, they need to submit code to different
> branches
> > at the same time (such as 5X_STABLE and 6X_STABLE in Greenplum). If there
> > are too many versions released, users need to upgrade frequently, which
> is
> > another cost. This is also why we need to control the cadence of major
> > version releases.
> > In the previous roadmap discussion email thread, we mentioned a
> PostgreSQL
> > kernel upgrade in the near future. The planned upgrade to PostgreSQL 15.x
> > will bring a lot of metadata changes to the PostgreSQL kernel upgrade. In
> > Greenplum, major version release was also with the PostgreSQL kernel
> > upgrade. Is it a suitable time to wait until the PG 15.x or PG 16.x
> kernel
> > upgrade is stable? Welcome to discuss
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@cloudberry.apache.org
> For additional commands, e-mail: dev-h...@cloudberry.apache.org
>
>

Reply via email to