[
https://issues.apache.org/jira/browse/HBASE-29738?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rahul Agarkar reassigned HBASE-29738:
-------------------------------------
Assignee: Dev Hingu
> [PROPOSAL] Migrating HBase to JPMS
> ----------------------------------
>
> Key: HBASE-29738
> URL: https://issues.apache.org/jira/browse/HBASE-29738
> Project: HBase
> Issue Type: Brainstorming
> Reporter: Dev Hingu
> Assignee: Dev Hingu
> Priority: Major
>
> *Context*
> The goal of this task is to discuss and see the opinion about the migration
> of the HBase codebase to the *Java Platform Module System (JPMS)* introduced
> in Java 9.
> *Motivation*
> Currently, HBase runs entirely on the classpath. Migrating to the module path
> will provide:
> # *Strong Encapsulation:* Better hiding of internal APIs to prevent access
> of Internal APIs to public usages.
> # *Explicit dependenies:* JPMS forces to define dependencies explicitely in
> module-info.java, detecting missing dependencies in compile time rather than
> run time.
> # *Modernization:* Aligning with the broader Java ecosystem which is moving
> towards strict modularity.
> *Proposal*
> I am attaching a [proposal
> doc|https://docs.google.com/document/d/1h7NxFDSCL5mxu7WWRnzUwAF-G4yRXhWflM-H_OHC4D4/edit?usp=sharing]
> that talks about benefits, drawbacks and challenges for migration.
> Our starting point for the whole migration is hbase-client and I've also
> estimated efforts and challenges for migrating hbase-client to JPMS.
> Please review the attached document. I look forward to the community's
> feedback.
> The scope of this ticket is to outline efforts, design and direction of the
> migration task.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)