echonesis opened a new pull request, #11793:
URL: https://github.com/apache/ozone/pull/11793

   ## What changes were proposed in this pull request?
   **ScmBlockLocationProtocol** currently serves two different purposes:
   - Its fully qualified class name is used as the historical Hadoop RPC 
protocol identity.
   - Its methods define the internal Java interface used by SCM clients and 
implementations.
   
   The actual Hadoop RPC protocol is **ScmBlockLocationProtocolPB**, which 
extends the generated Protobuf blocking interface and provides the RPC protocol 
name, version, and Kerberos metadata. Keeping the internal Java methods in 
**ScmBlockLocationProtocol** incorrectly makes changes to an internal interface 
appear to be changes to the RPC protocol.
   
   This pull request separates these responsibilities:
   - Keeps **ScmBlockLocationProtocol** as an empty final class so that its 
historical FQCN remains available as the RPC identity.
   - Moves the internal Java methods to the new 
**ScmBlockLocationInternalInterface**.
   - Updates implementations, clients, translators, tracing proxies, and 
callers to use the new internal interface.
   - Adds a focused test confirming that the RPC identity class is separate 
from the internal Java interface, alongside the existing test for the 
historical protocol name, version, and Kerberos metadata.
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-17147
   
   ## How was this patch tested?
   
   Local Tests
   ```
   mvn -pl :hdds-server-framework test \
     -Dtest=TestScmBlockLocationProtocolPB \
     -DskipShade -DskipRecon -DskipDocs
   
   # Secure-mode authentication and SCM service authorization passed:
   mvn -pl :ozone-integration-test -am test \
     -Dtest=TestSecureOzoneCluster#testSecureScmAndOmStartupAndAccessControl \
     -Dsurefire.failIfNoSpecifiedTests=false \
     -DskipShade -DskipRecon -DskipDocs \
     -Dmdep.analyze.skip=true
   
   # SCM HA proxy and failover coverage passed:
   mvn -pl :ozone-integration-test -am test \
     -Dtest=TestFailoverWithSCMHA \
     -Dsurefire.failIfNoSpecifiedTests=false \
     -DskipShade -DskipRecon -DskipDocs \
     -Dmdep.analyze.skip=true
   ```
   
   GitHub Actions CI: 
https://github.com/echonesis/ozone/actions/runs/39745104232
   
   Generated-by: Codex (GPT-6)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to