code: private String convertPattern(final String pattern, boolean datanucleusFormat) {
      String wStr;
      if (datanucleusFormat) {
        wStr = "*";
      } else {
        wStr = ".*";
      }
      return pattern
          .replaceAll("([^\\\\])%", "$1" + wStr).replaceAll("\\\\%", "%").replaceAll("^%", wStr)
          .replaceAll("([^\\\\])_", "$1.").replaceAll("\\\\_", "_").replaceAll("^_", ".");
    }
docs: Convert a pattern containing JDBC catalog search wildcards into
  Java regex patterns.
  
  @param pattern input which may contain '%' or '_' wildcard characters, or
  these characters escaped using {@link #getSearchStringEscape()}.
  @return replace %/_ with regex search characters, also handle escaped
  characters.
  
  The datanucleus module expects the wildchar as '*'. The columns search on the
  other hand is done locally inside the hive code and that requires the regex wildchar
  format '.*'  This is driven by the datanucleusFormat flag.