exceptionfactory commented on code in PR #10693:
URL: https://github.com/apache/nifi/pull/10693#discussion_r2651855700


##########
nifi-extension-bundles/nifi-standard-services/nifi-dbcp-service-bundle/nifi-dbcp-service/src/main/java/org/apache/nifi/dbcp/DBCPConnectionPool.java:
##########
@@ -262,14 +262,21 @@ protected Driver getDriver(final String driverName, final 
String url) {
         }
 
         try {
-            return DriverManager.getDriver(url);
+            final Driver driver = DriverManager.getDriver(url);
+            // Ensure drivers that register themselves during class loading 
can be set as the registeredDriver.
+            // This ensures drivers that register themselves can be 
deregisterd when the componet is removed.
+            // These drivers should be loaded in the same InstanceClassloader 
that load this component
+            if (driver != registeredDriver
+                    && 
driver.getClass().getClassLoader().equals(getClass().getClassLoader())) {

Review Comment:
   Thanks for the additional background @bobpaulin.
   
   Adding any JAR to the `NIFI_HOME/lib` directory is an anti-pattern that is 
not supported, so I don't think having a check for that type of scenario is 
needed.
   
   With that in mind, it seems better to remove the ClassLoader check and 
proceed to deregister.



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