Description:
The current Oracle Contributor Agreement (OCA) — both individual and corporate variants — requires contributors to assign joint copyright ownership of their contributions to Oracle. Section 2 of the individual OCA reads (paraphrasing the publicly available template): contributors assign Oracle joint ownership in all worldwide rights associated with the copyright in the contribution.
This is a materially different model from the license-only CLAs used by most major open source foundations. Those agreements grant the project a broad license to use the contribution but leave sole copyright ownership with the contributor.
The co-ownership model makes sense for Enterprise Edition and other commercial versions. Oracle dual-licenses MySQL under GPL and a commercial license, and holding joint copyright enables that. For contributors who want to improve MySQL Community Edition only — a GPL-licensed product they already use under GPL — there is no legal necessity for Oracle to hold joint copyright. A perpetual, irrevocable, sublicensable license to the contribution is sufficient to ship it under GPL.
The co-ownership requirement imposes a legal burden on contributors. It permanently limits what they can do with their own contributed code. This is a known contributor-experience friction point for MySQL relative to projects with license-only CLAs. It reduces participation from individuals and organizations whose legal teams will not approve copyright assignment.
How to repeat:
1. Find a bug or improvement in MySQL Community Edition you want to contribute.
2. Navigate to https://oca.opensource.oracle.com to sign the OCA.
3. Read Section 2: joint copyright ownership is assigned to Oracle as a condition of contribution.
4. Consult your organization's legal counsel. Most will decline to sign an agreement that assigns copyright co-ownership to a third party, even for GPL-licensed work.
5. Contribution stops here — not due to technical friction, but legal.
Suggested fix:
Introduce a "Community Edition Contributor Agreement" that:
1. Applies only to contributions targeting MySQL Community Edition (GPL-licensed distribution).
2. Grants Oracle a perpetual, irrevocable, worldwide, royalty-free, sublicensable license to use, reproduce, modify, and distribute the contribution under the GPL — but does NOT assign joint copyright ownership to Oracle.
3. Retains sole copyright ownership with the contributor.
4. Explicitly states the contribution may not be included in Oracle MySQL Commercial/Enterprise distributions without a separate agreement.
This is the standard license-grant model used by many. It is sufficient for GPL distribution, reduces barriers to community participation, and preserves Oracle's dual-licensing model for commercial distributions. The existing OCA could remain unchanged and continue to apply to contributors who wish their work to appear in commercial MySQL editions.