@Override
  public void setCatalog(String arg0) throws SQLException {
    if (getSqlDialect().equals(Constant.TABLE_DIALECT)) {
      if (APACHE_IOTDB.equals(arg0)) {
        return;
      }
      for (String str : IoTDBRelationalDatabaseMetadata.allIotdbTableSQLKeywords) {
        if (arg0.equalsIgnoreCase(str)) {
          arg0 = "\"" + arg0 + "\"";
        }
      }

      Statement stmt = this.createStatement();
      String sql = "USE " + arg0;
      boolean rs;
      try {
        rs = stmt.execute(sql);
      } catch (SQLException e) {
        stmt.close();
        logger.error("Use database error: {}", e.getMessage());
        throw e;
      }
    }
  }
ConnectionTimeout and SocketTimeout. Unit: ms. If not set, default value 0 will be used, which
means that there's no timeout in the client side.
iotdb-client/jdbc/src/main/java/org/apache/iotdb/jdbc/IoTDBConnection.java