[PDI-12947] one connection pool created per step

Could we synchronize around this if block instead of on the method signature?  If the DriverManager.getConnection call blocks on a timeout, etc, this could turn into a problem when all we want to ensure is that the creation only happens once.