title: PreparedStatement executeUpdate on an OracleDataSource connection does not auto commit
body: <p>Call to preparedStatement.executeUpdate() returns successfully (with count of rows updated). But the DB does not reflect the update. Seeing this issue with ojdbc7.jar (tried both java 7 and java 8 SEs).</p>
  
  <pre><code>final String UPDATE_SQL = "UPDATE myPortfolio SET stock = ? WHERE key = ?";
      final String stock = 'SO';// pre ipo :)
      final long key = 12345l;
  
      try (Connection conn = pds.getConnection(); PreparedStatement proc = conn.prepareStatement(UPDATE_SQL)) {
          //conn.setAutoCommit(false); --&gt; this works
          conn.setAutoCommit(true); // this is the default...but making sure
          proc.setString(1, stock);
          proc.setLong(2, key);
          int rowcount = proc.executeUpdate();
          //conn.commit(); --&gt; this works
  
          logger.info("Updated {} rows. SQL = {}. stock = {}, key = {}, InboundKey = {}", rowcount, UPDATE_SQL, stock, key);
          // logs 1 row updated. But DB still shows stale data (old stock) for key 12345l.
      } catch (SQLException E) {
          throw new PersistenceException(E);
      }
  
      // Pool data source settings
      PoolDataSource        pds = PoolDataSourceFactory.getPoolDataSource();
      pds.setConnectionFactoryClassName("oracle.jdbc.pool.OracleDataSource");
      pds.setConnectionPoolName(cacheName);
      pds.setURL(dbUrl);
      pds.setUser(username);
      pds.setPassword(password);
  
      pds.setMinPoolSize(5);
      pds.setMaxPoolSize(10);
      pds.setInitialPoolSize(7);
      pds.setInactiveConnectionTimeout(10);
  </code></pre>