commons-dbcp git commit: [DBCP-519] Add some toString() methods for debugging (never printing passwords): Synchronize toString() for mutable objects.

2018-08-16 Thread ggregory
Repository: commons-dbcp
Updated Branches:
  refs/heads/master 04e3fe1d2 -> 3fe15786c


[DBCP-519] Add some toString() methods for debugging (never printing
passwords): Synchronize toString() for mutable objects.

Project: http://git-wip-us.apache.org/repos/asf/commons-dbcp/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-dbcp/commit/3fe15786
Tree: http://git-wip-us.apache.org/repos/asf/commons-dbcp/tree/3fe15786
Diff: http://git-wip-us.apache.org/repos/asf/commons-dbcp/diff/3fe15786

Branch: refs/heads/master
Commit: 3fe15786c11fdcf1808aacc05b8b15d61f7ce23e
Parents: 04e3fe1
Author: Gary Gregory 
Authored: Thu Aug 16 15:41:42 2018 -0600
Committer: Gary Gregory 
Committed: Thu Aug 16 15:41:42 2018 -0600

--
 src/main/java/org/apache/commons/dbcp2/DelegatingConnection.java | 2 +-
 .../org/apache/commons/dbcp2/DelegatingPreparedStatement.java| 2 +-
 src/main/java/org/apache/commons/dbcp2/DelegatingResultSet.java  | 4 ++--
 src/main/java/org/apache/commons/dbcp2/DelegatingStatement.java  | 2 +-
 src/main/java/org/apache/commons/dbcp2/PoolingConnection.java| 2 +-
 .../org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java  | 2 +-
 .../apache/commons/dbcp2/cpdsadapter/PooledConnectionImpl.java   | 2 +-
 .../apache/commons/dbcp2/datasources/CPDSConnectionFactory.java  | 2 +-
 .../apache/commons/dbcp2/datasources/InstanceKeyDataSource.java  | 2 +-
 9 files changed, 10 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/commons-dbcp/blob/3fe15786/src/main/java/org/apache/commons/dbcp2/DelegatingConnection.java
--
diff --git a/src/main/java/org/apache/commons/dbcp2/DelegatingConnection.java 
b/src/main/java/org/apache/commons/dbcp2/DelegatingConnection.java
index a94b665..546e6a8 100644
--- a/src/main/java/org/apache/commons/dbcp2/DelegatingConnection.java
+++ b/src/main/java/org/apache/commons/dbcp2/DelegatingConnection.java
@@ -88,7 +88,7 @@ public class DelegatingConnection 
extends AbandonedTrace i
  * Returns a string representation of the metadata associated with the 
innermost delegate connection.
  */
 @Override
-public String toString() {
+public synchronized String toString() {
 String s = null;
 
 final Connection c = this.getInnermostDelegateInternal();

http://git-wip-us.apache.org/repos/asf/commons-dbcp/blob/3fe15786/src/main/java/org/apache/commons/dbcp2/DelegatingPreparedStatement.java
--
diff --git 
a/src/main/java/org/apache/commons/dbcp2/DelegatingPreparedStatement.java 
b/src/main/java/org/apache/commons/dbcp2/DelegatingPreparedStatement.java
index 5d38e03..048687c 100644
--- a/src/main/java/org/apache/commons/dbcp2/DelegatingPreparedStatement.java
+++ b/src/main/java/org/apache/commons/dbcp2/DelegatingPreparedStatement.java
@@ -688,7 +688,7 @@ public class DelegatingPreparedStatement extends 
DelegatingStatement implements
  */
 @SuppressWarnings("resource")
 @Override
-public String toString() {
+public synchronized String toString() {
 final Statement statement = getDelegate();
 return statement == null ? "NULL" : statement.toString();
 }

http://git-wip-us.apache.org/repos/asf/commons-dbcp/blob/3fe15786/src/main/java/org/apache/commons/dbcp2/DelegatingResultSet.java
--
diff --git a/src/main/java/org/apache/commons/dbcp2/DelegatingResultSet.java 
b/src/main/java/org/apache/commons/dbcp2/DelegatingResultSet.java
index cac9133..3d1483c 100644
--- a/src/main/java/org/apache/commons/dbcp2/DelegatingResultSet.java
+++ b/src/main/java/org/apache/commons/dbcp2/DelegatingResultSet.java
@@ -1242,8 +1242,8 @@ public final class DelegatingResultSet extends 
AbandonedTrace implements ResultS
 }
 
 @Override
-public String toString() {
-return super.toString() + "[_res=" + resultSet + ", _stmt=" + 
statement + ", _conn=" + connection + "]";
+public synchronized String toString() {
+return super.toString() + "[resultSet=" + resultSet + ", statement=" + 
statement + ", connection=" + connection + "]";
 }
 
 @Override

http://git-wip-us.apache.org/repos/asf/commons-dbcp/blob/3fe15786/src/main/java/org/apache/commons/dbcp2/DelegatingStatement.java
--
diff --git a/src/main/java/org/apache/commons/dbcp2/DelegatingStatement.java 
b/src/main/java/org/apache/commons/dbcp2/DelegatingStatement.java
index 3df926b..8a1725f 100644
--- a/src/main/java/org/apache/commons/dbcp2/DelegatingStatement.java
+++ b/src/main/java/org/apache/commons/dbcp2/DelegatingStatement.java
@@ -790,7 +790,7 @@ public class DelegatingStatement extends AbandonedTrace 
implements 

commons-dbcp git commit: [DBCP-519] Add some toString() methods for debugging (never printing passwords): Remove user names from toString() output per Phil's suugestion.

2018-08-16 Thread ggregory
Repository: commons-dbcp
Updated Branches:
  refs/heads/master 749e5b391 -> 04e3fe1d2


[DBCP-519] Add some toString() methods for debugging (never printing
passwords): Remove user names from toString() output per Phil's
suugestion.

Project: http://git-wip-us.apache.org/repos/asf/commons-dbcp/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-dbcp/commit/04e3fe1d
Tree: http://git-wip-us.apache.org/repos/asf/commons-dbcp/tree/04e3fe1d
Diff: http://git-wip-us.apache.org/repos/asf/commons-dbcp/diff/04e3fe1d

Branch: refs/heads/master
Commit: 04e3fe1d2cfd176784f164413010d87a01f1e5c2
Parents: 749e5b3
Author: Gary Gregory 
Authored: Thu Aug 16 15:03:25 2018 -0600
Committer: Gary Gregory 
Committed: Thu Aug 16 15:03:25 2018 -0600

--
 .../dbcp2/cpdsadapter/DriverAdapterCPDS.java|  6 +--
 .../datasources/CPDSConnectionFactory.java  |  2 -
 .../datasources/PerUserPoolDataSource.java  | 41 
 3 files changed, 2 insertions(+), 47 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/commons-dbcp/blob/04e3fe1d/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
--
diff --git 
a/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java 
b/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
index 58aafcc..add181e 100644
--- a/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
+++ b/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
@@ -735,7 +735,7 @@ public class DriverAdapterCPDS implements 
ConnectionPoolDataSource, Referenceabl
 }
 
 /**
- * Does not print the userPassword field nor the password in the 
connectionProperties.
+ * Does not print the userName and userPassword field nor the 'user' or 
'password' in the connectionProperties.
  * 
  * @since 2.6.0
  */
@@ -745,10 +745,8 @@ public class DriverAdapterCPDS implements 
ConnectionPoolDataSource, Referenceabl
 builder.append("[description=");
 builder.append(description);
 builder.append(", url=");
-// TODO What if the connection string contains a 'password' query 
parameter but that connection string is not in a legal URL format?
+// TODO What if the connection string contains a 'user' or 'password' 
query parameter but that connection string is not in a legal URL format?
 builder.append(url);
-builder.append(", userName=");
-builder.append(userName);
 builder.append(", driver=");
 builder.append(driver);
 builder.append(", loginTimeout=");

http://git-wip-us.apache.org/repos/asf/commons-dbcp/blob/04e3fe1d/src/main/java/org/apache/commons/dbcp2/datasources/CPDSConnectionFactory.java
--
diff --git 
a/src/main/java/org/apache/commons/dbcp2/datasources/CPDSConnectionFactory.java 
b/src/main/java/org/apache/commons/dbcp2/datasources/CPDSConnectionFactory.java
index ef6e5f7..a6253f0 100644
--- 
a/src/main/java/org/apache/commons/dbcp2/datasources/CPDSConnectionFactory.java
+++ 
b/src/main/java/org/apache/commons/dbcp2/datasources/CPDSConnectionFactory.java
@@ -411,8 +411,6 @@ class CPDSConnectionFactory
 builder.append(rollbackAfterValidation);
 builder.append(", pool=");
 builder.append(pool);
-builder.append(", userName=");
-builder.append(userName);
 builder.append(", maxConnLifetimeMillis=");
 builder.append(maxConnLifetimeMillis);
 builder.append(", validatingSet=");

http://git-wip-us.apache.org/repos/asf/commons-dbcp/blob/04e3fe1d/src/main/java/org/apache/commons/dbcp2/datasources/PerUserPoolDataSource.java
--
diff --git 
a/src/main/java/org/apache/commons/dbcp2/datasources/PerUserPoolDataSource.java 
b/src/main/java/org/apache/commons/dbcp2/datasources/PerUserPoolDataSource.java
index 289617b..1087b37 100644
--- 
a/src/main/java/org/apache/commons/dbcp2/datasources/PerUserPoolDataSource.java
+++ 
b/src/main/java/org/apache/commons/dbcp2/datasources/PerUserPoolDataSource.java
@@ -1173,45 +1173,4 @@ public class PerUserPoolDataSource extends 
InstanceKeyDataSource {
 con.setReadOnly(defaultReadOnly.booleanValue());
 }
 }
-
-@Override
-protected void toStringFields(StringBuilder builder) {
-super.toStringFields(builder);
-builder.append(", perUserBlockWhenExhausted=");
-builder.append(perUserBlockWhenExhausted);
-builder.append(", perUserEvictionPolicyClassName=");
-builder.append(perUserEvictionPolicyClassName);
-builder.append(", perUserLifo=");
-builder.append(perUserLifo);
-builder.append(", 

commons-dbcp git commit: [DBCP-519] Add some toString() methods for debugging (never printing passwords)

2018-08-16 Thread ggregory
Repository: commons-dbcp
Updated Branches:
  refs/heads/master 5bac43f7b -> 16c46bdb4


[DBCP-519] Add some toString() methods for debugging (never printing
passwords)

Project: http://git-wip-us.apache.org/repos/asf/commons-dbcp/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-dbcp/commit/16c46bdb
Tree: http://git-wip-us.apache.org/repos/asf/commons-dbcp/tree/16c46bdb
Diff: http://git-wip-us.apache.org/repos/asf/commons-dbcp/diff/16c46bdb

Branch: refs/heads/master
Commit: 16c46bdb4330287fa64cbb2b71014c76852e5c8b
Parents: 5bac43f
Author: Gary Gregory 
Authored: Thu Aug 16 13:09:46 2018 -0600
Committer: Gary Gregory 
Committed: Thu Aug 16 13:09:46 2018 -0600

--
 .../apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java  | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/commons-dbcp/blob/16c46bdb/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
--
diff --git 
a/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java 
b/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
index db97efe..eb0d472 100644
--- a/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
+++ b/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
@@ -764,7 +764,13 @@ public class DriverAdapterCPDS implements 
ConnectionPoolDataSource, Referenceabl
 builder.append(", getConnectionCalled=");
 builder.append(getConnectionCalled);
 builder.append(", connectionProperties=");
-builder.append(((Properties) 
connectionProperties.clone()).remove("password"));
+Properties tmpProps = connectionProperties;
+final String pwdKey = "password";
+if (connectionProperties.contains(pwdKey)) {
+tmpProps = (Properties) connectionProperties.clone();
+tmpProps.remove(pwdKey);
+}
+builder.append(tmpProps);
 builder.append(", accessToUnderlyingConnectionAllowed=");
 builder.append(accessToUnderlyingConnectionAllowed);
 builder.append("]");



commons-dbcp git commit: [DBCP-519] Add some toString() methods for debugging (never printing passwords)

2018-08-16 Thread ggregory
Repository: commons-dbcp
Updated Branches:
  refs/heads/master 7b893aed7 -> 5bac43f7b


[DBCP-519] Add some toString() methods for debugging (never printing
passwords)

Project: http://git-wip-us.apache.org/repos/asf/commons-dbcp/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-dbcp/commit/5bac43f7
Tree: http://git-wip-us.apache.org/repos/asf/commons-dbcp/tree/5bac43f7
Diff: http://git-wip-us.apache.org/repos/asf/commons-dbcp/diff/5bac43f7

Branch: refs/heads/master
Commit: 5bac43f7b775c9c876af614e745f80ccb495f01f
Parents: 7b893ae
Author: Gary Gregory 
Authored: Thu Aug 16 12:59:41 2018 -0600
Committer: Gary Gregory 
Committed: Thu Aug 16 12:59:41 2018 -0600

--
 src/changes/changes.xml |  3 +
 .../dbcp2/cpdsadapter/DriverAdapterCPDS.java| 40 +++
 .../dbcp2/cpdsadapter/PooledConnectionImpl.java | 23 +++
 .../datasources/CPDSConnectionFactory.java  | 26 +++
 .../datasources/InstanceKeyDataSource.java  | 72 
 .../datasources/PerUserPoolDataSource.java  | 41 +++
 .../dbcp2/datasources/SharedPoolDataSource.java |  7 ++
 .../commons/dbcp2/datasources/UserPassKey.java  |  7 +-
 8 files changed, 216 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/commons-dbcp/blob/5bac43f7/src/changes/changes.xml
--
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 27717b1..8d69d58 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -76,6 +76,9 @@ The  type attribute can be add,update,fix,remove.
   
 Allow DBCP to work with old Java 6/JDBC drivers without throwing 
AbstractMethodError.
   
+  
+Add some toString() methods for debugging (never printing passwords.)
+  
 
 
   

http://git-wip-us.apache.org/repos/asf/commons-dbcp/blob/5bac43f7/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
--
diff --git 
a/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java 
b/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
index 0844c9b..db97efe 100644
--- a/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
+++ b/src/main/java/org/apache/commons/dbcp2/cpdsadapter/DriverAdapterCPDS.java
@@ -730,4 +730,44 @@ public class DriverAdapterCPDS implements 
ConnectionPoolDataSource, Referenceabl
 }
 }
 }
+
+/**
+ * Does not print the userPassword field nor the password in the 
connectionProperties.
+ * 
+ * @since 2.6.0
+ */
+@Override
+public String toString() {
+StringBuilder builder = new StringBuilder(super.toString());
+builder.append("[description=");
+builder.append(description);
+builder.append(", url=");
+builder.append(url);
+builder.append(", userName=");
+builder.append(userName);
+builder.append(", driver=");
+builder.append(driver);
+builder.append(", loginTimeout=");
+builder.append(loginTimeout);
+builder.append(", poolPreparedStatements=");
+builder.append(poolPreparedStatements);
+builder.append(", maxIdle=");
+builder.append(maxIdle);
+builder.append(", timeBetweenEvictionRunsMillis=");
+builder.append(timeBetweenEvictionRunsMillis);
+builder.append(", numTestsPerEvictionRun=");
+builder.append(numTestsPerEvictionRun);
+builder.append(", minEvictableIdleTimeMillis=");
+builder.append(minEvictableIdleTimeMillis);
+builder.append(", maxPreparedStatements=");
+builder.append(maxPreparedStatements);
+builder.append(", getConnectionCalled=");
+builder.append(getConnectionCalled);
+builder.append(", connectionProperties=");
+builder.append(((Properties) 
connectionProperties.clone()).remove("password"));
+builder.append(", accessToUnderlyingConnectionAllowed=");
+builder.append(accessToUnderlyingConnectionAllowed);
+builder.append("]");
+return builder.toString();
+}
 }

http://git-wip-us.apache.org/repos/asf/commons-dbcp/blob/5bac43f7/src/main/java/org/apache/commons/dbcp2/cpdsadapter/PooledConnectionImpl.java
--
diff --git 
a/src/main/java/org/apache/commons/dbcp2/cpdsadapter/PooledConnectionImpl.java 
b/src/main/java/org/apache/commons/dbcp2/cpdsadapter/PooledConnectionImpl.java
index 715c0de..604ad71 100644
--- 
a/src/main/java/org/apache/commons/dbcp2/cpdsadapter/PooledConnectionImpl.java
+++ 
b/src/main/java/org/apache/commons/dbcp2/cpdsadapter/PooledConnectionImpl.java
@@ -647,4 +647,27 @@ class