code: @Override
      public void psSetString(PreparedStatement pstmtImpl, int i, String x) throws SQLException {
          int length = (x == null ? 0 : x.getBytes().length);
  
          if (tc.isDebugEnabled()) {
              Tr.debug(this, tc, "string length: " + length);
          }
  
          if (length > 4000) {
              if (tc.isDebugEnabled())
                  Tr.debug(this, tc, "Oracle setString length > 4000 bytes workaround.");
              /*
               * length in setCharacterStream is number of character in
               * stream
               */
              pstmtImpl.setCharacterStream(i, new StringReader(x), x.length());
          } else {
              pstmtImpl.setString(i, x);
          }
      }
docs: - allow for special handling of Oracle prepared statement setString