SbloodyS commented on PR #18594:
URL: 
https://github.com/apache/dolphinscheduler/pull/18594#issuecomment-5434107127

   `StorageOperatorFactory` is a public SPI loaded through `ServiceLoader`. 
This PR changes the return type of `getStorageOperate()` from:
   
   `org.apache.dolphinscheduler.plugin.storage.api.StorageType`
   
   to:
   
   `org.apache.dolphinscheduler.common.enums.StorageType`
   
   Although the enum constants are similar, the fully qualified return type is 
part of the JVM method descriptor. An existing third-party storage plugin 
compiled against the previous storage API does not implement the new method 
descriptor. Loading or invoking that plugin after upgrading can therefore fail 
with `NoClassDefFoundError` or `AbstractMethodError`.
   
   Deleting `org.apache.dolphinscheduler.plugin.storage.api.StorageType` also 
directly breaks plugins that import or reference that public type.
   
   This is a breaking SPI change and should not be introduced as a transparent 
duplicate-code cleanup. I'll close this PR for now.


-- 
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]

Reply via email to