<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hello, thank you for comments.<div class="">See full diff is at the end of the letter.<br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On 11 Sep 2018, at 01:06, Alex Khatskevich <<a href="mailto:avkhatskevich@tarantool.org" class="">avkhatskevich@tarantool.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class="">
  
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" class="">
  
  <div text="#000000" bgcolor="#FFFFFF" class="">
    1. See some comments below.<br class="">
    2. Please, send the full patch diff when done (not just an
    incremental diff as you did).<br class="">
    Patch seems ok in overall.<br class="">
    <br class="">
    <div class="moz-cite-prefix">On 09.09.2018 17:57, Nikita Tatunov
      wrote:<br class="">
    </div>
    <blockquote type="cite" cite="mid:E3BCC6A6-A137-4887-BD78-844A3F228441@tarantool.org" class="">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" class="">
      <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
        space; line-break: after-white-space;" class="">
        <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
          space; line-break: after-white-space;" class="">Hello, please
          consider corrected version of the patch.</div>
        <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
          space; line-break: after-white-space;" class="">Diff with the
          previous version at the end.<br class="">
          <div class=""><br class="">
            <blockquote type="cite" class="">
              <div class="">On 17 Aug 2018, at 11:25, Alex Khatskevich
                <<a href="mailto:avkhatskevich@tarantool.org" class="" moz-do-not-send="true">avkhatskevich@tarantool.org</a>>
                wrote:</div>
              <br class="Apple-interchange-newline">
              <div class=""><br style="caret-color: rgb(0, 0, 0);
                  font-family: Helvetica; font-size: 12px; font-style:
                  normal; font-variant-caps: normal; font-weight:
                  normal; letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
                <br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">On 16.08.2018 20:00,
                  N.Tatunov wrote:</span><br style="caret-color: rgb(0,
                  0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">GLOB is a legacy extension for LIKE
                  from SQLite. As we want our SQL to<br class="">
                  be close to ANSI SQL & LIKE to depend on
                  collations, we do not want to<br class="">
                  support it. This patch totally removes it from
                  Tarantool along with any<br class="">
                  mentions of it.<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">1.We delete it because it
                  is not working properly, and instead of fixing it we</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">want to replace it with
                  more general regexp. Delete other unnecessary thoughts</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">from this message.</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">2. Do not use "we", "our"
                  in commit messages.</span><br style="caret-color:
                  rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">As discussed above it’s not going to be changed.</div>
          </div>
        </div>
      </div>
    </blockquote>
    Ok.<br class="">
    <blockquote type="cite" cite="mid:E3BCC6A6-A137-4887-BD78-844A3F228441@tarantool.org" class="">
      <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
        space; line-break: after-white-space;" class="">
        <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
          space; line-break: after-white-space;" class="">
          <div class=""><br class="">
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class=""> static int<br class="">
                   sql_utf8_pattern_compare(const char *pattern,<br class="">
                   <span class="Apple-tab-span" style="white-space: pre;">       </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>const char
                  *string,<br class="">
                  -<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>const struct
                  compareInfo *pInfo,<br class="">
                  -<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>UChar32
                  matchOther)<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>const int
                  *is_like_ci,<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">Pass this parameter by
                  value.</span><br style="caret-color: rgb(0, 0, 0);
                  font-family: Helvetica; font-size: 12px; font-style:
                  normal; font-variant-caps: normal; font-weight:
                  normal; letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">Fixed.</div>
            <br class="">
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">+<span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>UChar32
                  match_other)<br class="">
                   {<br class="">
                   <span class="Apple-tab-span" style="white-space: pre;">       </span>/*
                  Next pattern and input string chars */<br class="">
                   <span class="Apple-tab-span" style="white-space: pre;">       </span>UChar32
                  c, c2;<br class="">
                  -<span class="Apple-tab-span" style="white-space: pre;">    </span>/*
                  "?" or "_" */<br class="">
                  -<span class="Apple-tab-span" style="white-space: pre;">    </span>UChar32
                  matchOne = pInfo->matchOne;<br class="">
                  -<span class="Apple-tab-span" style="white-space: pre;">    </span>/*
                  "*" or "%" */<br class="">
                  -<span class="Apple-tab-span" style="white-space: pre;">    </span>UChar32
                  matchAll = pInfo->matchAll;<br class="">
                  -<span class="Apple-tab-span" style="white-space: pre;">    </span>/*
                  True if uppercase==lowercase */<br class="">
                  -<span class="Apple-tab-span" style="white-space: pre;">    </span>UChar32
                  noCase = pInfo->noCase;<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span>/*
                  "_" */<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span>UChar32
                  match_one = '_';<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span>/*
                  "%" */<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span>UChar32
                  match_all = '%';<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">This variables consumes
                  stack. Can they be moved to defines?</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">If it will break smth,
                  make them const.</span><br style="caret-color: rgb(0,
                  0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">moved them to defines.</div>
            <br class="">
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class=""><br class="">
                   int<br class="">
                  -sqlite3_strlike(const char *zPattern, const char
                  *zStr, unsigned int esc)<br class="">
                  +sql_strlike_ci(const char *zPattern, const char
                  *zStr, unsigned int esc)<br class="">
                   {<br class="">
                  -<span class="Apple-tab-span" style="white-space: pre;">    </span>return
                  sql_utf8_pattern_compare(zPattern, zStr,
                  &likeInfoNorm, esc);<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span>return
                  sql_utf8_pattern_compare(zPattern, zStr,
                  &case_insensitive_like, esc);<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">Hardcode
                  `case_insensitive_like` value here.</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">Done.</div>
            <div class=""><br class="">
            </div>
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">+<span class="Apple-tab-span" style="white-space: pre;">  </span>/**<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-converted-space"> </span>* Limit the
                  length of the LIKE pattern to avoid problems<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-converted-space"> </span>* of deep
                  recursion and N*N behavior in<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">I thought that only globe
                  could require N*N time. Check delete the comment.</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">The reason is the recursion in
              sql_utf8_pattern_compare() which is still</div>
            <div class="">there.</div>
            <div class=""><br class="">
            </div>
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class=""><br class="">
                  -<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>    "ESCAPE
                  expression must be a single character",<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>    "ESCAPE
                  expression must be a"<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>    " single
                  character",<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">Do not split error
                  messages at the middle of a sentence. It makes errors
                  ungreppable.</span><br style="caret-color: rgb(0, 0,
                  0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">Make it <80 somehow
                  different.</span><br style="caret-color: rgb(0, 0, 0);
                  font-family: Helvetica; font-size: 12px; font-style:
                  normal; font-variant-caps: normal; font-weight:
                  normal; letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
                <br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">Have already been discussed in this thread.</div>
          </div>
        </div>
      </div>
    </blockquote>
    I suppose that we concluded to try to fit into 80 and split the
    string only<br class="">
    in case it is impossible.<br class=""></div></div></blockquote><div><br class=""></div><div>I don’t think so. Anyways, Alexander could you please give your thoughts?</div><br class=""><blockquote type="cite" class=""><div class=""><div text="#000000" bgcolor="#FFFFFF" class="">
    <blockquote type="cite" cite="mid:E3BCC6A6-A137-4887-BD78-844A3F228441@tarantool.org" class="">
      <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
        space; line-break: after-white-space;" class="">
        <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
          space; line-break: after-white-space;" class="">
          <div class="">
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">-<span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span>sqlite3_result_error(context,
                  "LIKE or GLOB pattern can only"<br class="">
                  -<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>    " contain
                  UTF-8 characters", -1);<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-tab-span" style="white-space: pre;">  </span>sqlite3_result_error(context,
                  "LIKE pattern can only contain"<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>    " UTF-8
                  characters", -1);<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">Do not split error
                  messages at the middle of a sentence. Make it <80
                  somehow different.</span><br style="caret-color:
                  rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">Have already been discussed in this thread.</div>
          </div>
        </div>
      </div>
    </blockquote>
    same<br class="">
    <blockquote type="cite" cite="mid:E3BCC6A6-A137-4887-BD78-844A3F228441@tarantool.org" class="">
      <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
        space; line-break: after-white-space;" class="">
        <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
          space; line-break: after-white-space;" class="">
          <div class="">
            <div class=""><br class="">
            </div>
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">+<span class="Apple-tab-span" style="white-space: pre;">  </span>int
                  *is_like_ci;<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span>if
                  (is_case_sensitive)<br class="">
                  +<span class="Apple-tab-span" style="white-space: pre;">    </span><span class="Apple-tab-span" style="white-space: pre;">  </span>is_like_ci
                  = (int *)&case_sensitive_like;<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">pass this var by value.</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">We need (void *) in sqlite3CreateFunc(), i don’t think
              it’s relevant to pass</div>
            <div class="">variable by value.</div>
          </div>
        </div>
      </div>
    </blockquote>
    Yes, sorry.<br class="">
    <blockquote type="cite" cite="mid:E3BCC6A6-A137-4887-BD78-844A3F228441@tarantool.org" class="">
      <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
        space; line-break: after-white-space;" class="">
        <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
          space; line-break: after-white-space;" class="">
          <div class=""><br class="">
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">diff --git
                  a/test/sql-tap/alter.test.lua
                  b/test/sql-tap/alter.test.lua<br class="">
                  index cfe2801..773bdeb 100755<br class="">
                  --- a/test/sql-tap/alter.test.lua<br class="">
                  +++ b/test/sql-tap/alter.test.lua<br class="">
                  @@ -230,9 +230,10 @@ test:do_execsql_test(<br class="">
                   test:do_execsql_test(<br class="">
                       "alter-5.1",<br class="">
                       [[<br class="">
                  +        PRAGMA case_sensitive_like = true;<br class="">
                           CREATE TABLE xyz(x PRIMARY KEY);<br class="">
                           ALTER TABLE xyz RENAME TO "xyz1234abc";<br class="">
                  -        SELECT "name" FROM "_space" WHERE "name" GLOB
                  'xyz*';<br class="">
                  +        SELECT "name" FROM "_space" WHERE "name" LIKE
                  'xyz%';<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">This test become
                  unreasonably complex.</span><br style="caret-color:
                  rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">Do just "select where
                  name = 'xyz1234abc'</span><br style="caret-color:
                  rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">Or at least delete
                  case_sensitive…</span></div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">Done.</div>
            <br class="">
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">     ]], {<br class="">
                           -- <alter-5.1><br class="">
                           "xyz1234abc"<br class="">
                  @@ -243,7 +244,8 @@ test:do_execsql_test(<br class="">
                       "alter-5.2",<br class="">
                       [[<br class="">
                           ALTER TABLE "xyz1234abc" RENAME TO xyzabc;<br class="">
                  -        SELECT "name" FROM "_space" WHERE "name" GLOB
                  'XYZ*';<br class="">
                  +        SELECT "name" FROM "_space" WHERE "name" LIKE
                  'XYZ%';<br class="">
                  +        PRAGMA case_sensitive_like = false;<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">This test become
                  unreasonably complex.</span><br style="caret-color:
                  rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">Do just "select where
                  name = â€˜xyz1234abc'</span><br style="caret-color:
                  rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">Done.</div>
            <div class=""><br class="">
            </div>
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">--- NOTE: This test needs refactoring
                  after deletion of GLOB &<br class="">
                  ---<span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>type
                  restrictions for LIKE. (See #3572)<br class="">
                  ---    {"LIKE", "like"},<br class="">
                  ---    {"GLOB", "glob"},<br class="">
                  +    {"LIKE", "like"},<br class="">
                       {"AND", "and"},<br class="">
                       {"OR", "or"},<br class="">
                       {"MATCH", "match"},<br class="">
                  @@ -98,12 +95,9 @@ operations = {<br class="">
                       {"+", "-"},<br class="">
                       {"<<", ">>", "&", "|"},<br class="">
                       {"<", "<=", ">", ">="},<br class="">
                  --- NOTE: This test needs refactoring after deletion
                  of GLOB &<br class="">
                  ---<span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>type
                  restrictions for LIKE. (See #3572)<br class="">
                   -- Another NOTE: MATCH & REGEXP aren't supported
                  in Tarantool &<br class="">
                  ---<span class="Apple-converted-space"> </span><span class="Apple-tab-span" style="white-space: pre;">   </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>are waiting
                  for their hour, don't confuse them<br class="">
                  ---<span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>being
                  commented with ticket above.<br class="">
                  -    {"=", "==", "!=", "<>"}, --"LIKE", "GLOB"},
                  --"MATCH", "REGEXP"},<br class="">
                  +--<span class="Apple-converted-space"> </span><span class="Apple-tab-span" style="white-space: pre;">   </span><span class="Apple-tab-span" style="white-space: pre;">  </span><span class="Apple-converted-space"> </span>are waiting
                  for their hour.<br class="">
                  +    {"=", "==", "!=", "<>", "LIKE"}, --"MATCH",
                  "REGEXP"},<br class="">
                       {"AND"},<br class="">
                       {"OR"},<br class="">
                   }<br class="">
                  @@ -128,7 +122,7 @@ end<br class="">
                   -- EVIDENCE-OF: R-15514-65163 SQLite understands the
                  following binary<br class="">
                   -- operators, in order from highest to lowest
                  precedence: || * / % + -<br class="">
                   -- << >> & | < <= > >= =
                  == != <> IS IS<br class="">
                  --- NOT IN LIKE GLOB MATCH REGEXP AND OR<br class="">
                  +-- NOT IN LIKE MATCH REGEXP AND OR<br class="">
                   --<br class="">
                   -- EVIDENCE-OF: R-38759-38789 Operators IS and IS NOT
                  have the same<br class="">
                   -- precedence as =.<br class="">
                  @@ -467,18 +461,63 @@ literals = {<br class="">
                   for _, op in ipairs(oplist) do<br class="">
                       for n1, rhs in ipairs(literals) do<br class="">
                           for n2, lhs in ipairs(literals) do<br class="">
                  -            local t = test:execsql(string.format("
                  SELECT typeof(%s %s %s) ", lhs, op, rhs))[1]<br class="">
                  -            test:do_test(<br class="">
                  -                string.format("e_expr-7.%s.%s.%s",
                  opname[op], n1, n2),<br class="">
                  -                function()<br class="">
                  -                    --print("\n op "..op.." t "..t)<br class="">
                  -                    return (((op == "||") and ((t ==
                  "text") or<br class="">
                  -                            (t == "null"))) or<br class="">
                  -                            ((op ~= "||") and (((t ==
                  "integer") or<br class="">
                  -                                    (t == "real")) or<br class="">
                  -                                    (t == "null"))))
                  and 1 or 0<br class="">
                  -                end, 1)<br class="">
                  +            if op ~= "LIKE" then<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">1. Why do not just delete
                  like from `oplist`?</span><br style="caret-color:
                  rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">2. We were discussing
                  this place with you and Georgy, and decided that you
                  do</span><br style="caret-color: rgb(0, 0, 0);
                  font-family: Helvetica; font-size: 12px; font-style:
                  normal; font-variant-caps: normal; font-weight:
                  normal; letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">not touch this for loop
                  at all.</span><br style="caret-color: rgb(0, 0, 0);
                  font-family: Helvetica; font-size: 12px; font-style:
                  normal; font-variant-caps: normal; font-weight:
                  normal; letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">Ok. Commented LIKE in `oplist` (it’s still a binary
              operator who knows, maybe we will revive it).</div>
            <div class=""><br class="">
            </div>
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">-local function glob(args)<br class="">
                  -    return 1<br class="">
                  -end<br class="">
                   -box.internal.sql_create_function("GLOB", glob)<br class="">
                  -box.internal.sql_create_function("MATCH", glob)<br class="">
                  -box.internal.sql_create_function("REGEXP", glob)<br class="">
                  +-- NOTE: GLOB is removed from Tarantool, thus it'll
                  be needed to<br class="">
                  +--       refactor these calls. They don't work right
                  now since<br class="">
                  +--          we don't support MATHC & REGEXP.<br class="">
                  +-- local function glob(args)<br class="">
                  +--     return 1<br class="">
                  +-- end<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">This test do not test the
                  glob function. Delete this comment.</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">Done.</div>
            <br class="">
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">+<br class="">
                  +-- box.internal.sql_create_function("MATCH", glob)<br class="">
                  +-- box.internal.sql_create_function("REGEXP", glob)<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">You was lucky that
                  commenting those lines do not break the tests.
                  (because there is a similar</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">code above)</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">Return it back.</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">Done.</div>
            <div class=""><br class="">
            </div>
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">@@ -2274,15 +2312,23 @@
                  test:do_execsql_test(<br class="">
                           -- </e_expr-16.1.7><br class="">
                       })<br class="">
                   --- EVIDENCE-OF: R-52087-12043 The GLOB operator is
                  similar to LIKE but<br class="">
                  --- uses the Unix file globbing syntax for its
                  wildcards.<br class="">
                  ---<br class="">
                  --- EVIDENCE-OF: R-09813-17279 Also, GLOB is case
                  sensitive, unlike LIKE.<br class="">
                  +-- EVIDENCE-OF: R-52087-12043 LIKE doesn't use Unix
                  file globbing<br class="">
                  +-- syntax for its wildcards.<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">Those test was designed
                  especially for the glob function.</span><br style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">There are similar tests
                  for like above.</span><br style="caret-color: rgb(0,
                  0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">You should delete it
                  instead of renaming.</span><br style="caret-color:
                  rgb(0, 0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">Ok, Deleted.</div>
            <br class="">
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class=""> --- EVIDENCE-OF: R-39616-20555 Both
                  GLOB and LIKE may be preceded by the<br class="">
                  +-- EVIDENCE-OF: R-39616-20555 LIKE may be preceded by
                  the<br class="">
                   -- NOT keyword to invert the sense of the test.<br class="">
                   --<br class="">
                   test:do_execsql_test(<br class="">
                  +    "e_expr-17.2.0",<br class="">
                  +    [[<br class="">
                  +        SELECT 'abcxyz' NOT LIKE 'ABC%'<br class="">
                  +    ]], {<br class="">
                  +        -- <e_expr-17.2.0><br class="">
                  +        1<br class="">
                  +        -- </e_expr-17.2.0><br class="">
                  +    })<br class="">
                  +<br class="">
                  +test:do_execsql_test(<br class="">
                       "e_expr-17.2.1",<br class="">
                       [[<br class="">
                  -        SELECT 'abcxyz' NOT GLOB 'ABC*'<br class="">
                  +        SELECT 'abcxyz' NOT LIKE 'abc%'<br class="">
                       ]], {<br class="">
                           -- <e_expr-17.2.1><br class="">
                  -        1<br class="">
                  +        0<br class="">
                           -- </e_expr-17.2.1><br class="">
                       })<br class="">
                     test:do_execsql_test(<br class="">
                       "e_expr-17.2.2",<br class="">
                       [[<br class="">
                  -        SELECT 'abcxyz' NOT GLOB 'abc*'<br class="">
                  +        PRAGMA case_sensitive_like = 0<br class="">
                       ]], {<br class="">
                           -- <e_expr-17.2.2><br class="">
                  -        0<br class="">
                  -        -- </e_expr-17.2.2><br class="">
                  +<br class="">
                  +        -- <e_expr-17.2.2><br class="">
                       })<br class="">
                     test:do_execsql_test(<br class="">
                  @@ -2405,10 +2461,11 @@ test:do_execsql_test(<br class="">
                   -- MUST_WORK_TEST uses access to nullvalue... (sql
                  parameters) and built in functions<br class="">
                   if 0>0 then<br class="">
                       db("nullvalue", "null")<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">do not change tests which
                  are not working.</span><br style="caret-color: rgb(0,
                  0, 0); font-family: Helvetica; font-size: 12px;
                  font-style: normal; font-variant-caps: normal;
                  font-weight: normal; letter-spacing: normal;
                  text-align: start; text-indent: 0px; text-transform:
                  none; white-space: normal; word-spacing: 0px;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">There is a chance chat
                  you do it wrong and you do not know about it.</span></div>
            </blockquote>
            <div class="">    </div>
            <div class="">Made it back.</div>
            <div class=""><br class="">
            </div>
            <blockquote type="cite" class="">
              <div class="">
                <blockquote type="cite" style="font-family: Helvetica;
                  font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; orphans: auto; text-align:
                  start; text-indent: 0px; text-transform: none;
                  white-space: normal; widows: auto; word-spacing: 0px;
                  -webkit-text-size-adjust: auto;
                  -webkit-text-stroke-width: 0px; text-decoration:
                  none;" class="">diff --git
                  a/test/sql-tap/like3.test.lua
                  b/test/sql-tap/like3.test.lua<br class="">
                  index 505d2fa..0bc71a0 100755<br class="">
                  --- a/test/sql-tap/like3.test.lua<br class="">
                  +++ b/test/sql-tap/like3.test.lua<br class="">
                  @@ -12,13 +12,13 @@ test:plan(7)<br class="">
                   --    May you find forgiveness for yourself and
                  forgive others.<br class="">
                   --    May you share freely, never taking more than
                  you give.<br class="">
                   --<br class="">
--------------------------------------------------------------------------<br class="">
+-----------------------------------------------------------------<br class="">
                   --<br class="">
                  --- This file implements regression tests for SQLite
                  library.  The<br class="">
                  --- focus of this file is testing the LIKE and GLOB
                  operators and<br class="">
                  --- in particular the optimizations that occur to help
                  those operators<br class="">
                  --- run faster and that those optimizations work
                  correctly when there<br class="">
                  --- are both strings and blobs being tested.<br class="">
                  +-- This file implements regression tests for SQLite
                  library. The<br class="">
                  +-- focus of this file is testing the LIKE operator
                  and<br class="">
                  +-- in particular the optimizations that occur to help
                  this<br class="">
                  +-- operator run faster and that those optimizations
                  work<br class="">
                  +-- correctly when there are both strings and blobs
                  being tested.<br class="">
                   --<br class="">
                   -- Ticket 05f43be8fdda9fbd948d374319b99b054140bc36
                  shows that the following<br class="">
                   -- SQL was not working correctly:<br class="">
                  @@ -70,10 +70,11 @@ test:do_execsql_test(<br class="">
                   test:do_execsql_test(<br class="">
                       "like3-2.0",<br class="">
                       [[<br class="">
                  +        PRAGMA case_sensitive_like = 1;<br class="">
                           CREATE TABLE t2(a PRIMARY KEY, b TEXT);<br class="">
                           INSERT INTO t2 SELECT a, b FROM t1;<br class="">
                           CREATE INDEX t2ba ON t2(b,a);<br class="">
                  -        SELECT a, b FROM t2 WHERE b GLOB 'ab*' ORDER
                  BY +a;<br class="">
                  +        SELECT a, b FROM t2 WHERE b LIKE 'ab%' ORDER
                  BY +a;<br class="">
                </blockquote>
                <span style="caret-color: rgb(0, 0, 0); font-family:
                  Helvetica; font-size: 12px; font-style: normal;
                  font-variant-caps: normal; font-weight: normal;
                  letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none; float: none; display:
                  inline !important;" class="">Those tests were
                  especially created for glob. Delete it instead of
                  renaming.</span><br style="caret-color: rgb(0, 0, 0);
                  font-family: Helvetica; font-size: 12px; font-style:
                  normal; font-variant-caps: normal; font-weight:
                  normal; letter-spacing: normal; text-align: start;
                  text-indent: 0px; text-transform: none; white-space:
                  normal; word-spacing: 0px; -webkit-text-stroke-width:
                  0px; text-decoration: none;" class="">
              </div>
            </blockquote>
            <div class=""><br class="">
            </div>
            <div class="">Done.</div>
          </div>
          <div dir="auto" style="word-wrap: break-word;
            -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class="">
          </div>
          <div dir="auto" style="word-wrap: break-word;
            -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Diff with the prev version of the patch:</div>
          <div dir="auto" style="word-wrap: break-word;
            -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class="">
          </div>
          <div dir="auto" style="word-wrap: break-word;
            -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">diff --git a/src/box/sql/func.c
              b/src/box/sql/func.c</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">index 177193e94..28b435ae3 100644</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- a/src/box/sql/func.c</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+++ b/src/box/sql/func.c</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -631,6 +631,12 @@ static const int
              case_insensitive_like = 1;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">  */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> static const int case_sensitive_like = 0;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+/**</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+ * Wildcards.</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+ */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+#define match_one '_'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+#define match_all '%'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> /**</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">  * Possible error returns from
              sql_utf8_pattern_compare().</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">  */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -672,15 +678,11 @@ static const int
              case_sensitive_like = 0;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> static int</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> sql_utf8_pattern_compare(const char *pattern,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                        </span>
              const char *string,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">                     </span>
              const int *is_like_ci,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+<span class="Apple-tab-span" style="white-space:pre">                     </span>
              const int is_like_ci,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                        </span>
              UChar32 match_other)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>/*
              Next pattern and input string chars */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>UChar32
              c, c2;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">     </span>/*
              "_" */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">     </span>UChar32
              match_one = '_';</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">     </span>/*
              "%" */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">     </span>UChar32
              match_all = '%';</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>/*
              One past the last escaped input char */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>const
              char *zEscaped = 0;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>const
              char *pattern_end = pattern + strlen(pattern);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -741,7 +743,7 @@
              sql_utf8_pattern_compare(const char *pattern,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                        </span>
              */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                        </span>int
              bMatch;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">                     </span>if
              (*is_like_ci)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+<span class="Apple-tab-span" style="white-space:pre">                     </span>if
              (is_like_ci)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                                </span>c
              = u_tolower(c);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                        </span>while
              (string < string_end){</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                                </span>/**</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -757,7 +759,7 @@
              sql_utf8_pattern_compare(const char *pattern,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                                </span>c2
              = Utf8Read(string, string_end);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                                </span>if
              (c2 == SQL_INVALID_UTF8_SYMBOL)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                                        </span>return
              SQL_NOMATCH;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">                             </span>if
              (!(*is_like_ci)) {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+<span class="Apple-tab-span" style="white-space:pre">                             </span>if
              (!is_like_ci) {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                                        </span>if
              (c2 != c)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                                                </span>continue;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                                </span>}
              else {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -786,7 +788,7 @@
              sql_utf8_pattern_compare(const char *pattern,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                        </span>return
              SQL_NOMATCH;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                </span>if
              (c == c2)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                        </span>continue;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">             </span>if
              (*is_like_ci) {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+<span class="Apple-tab-span" style="white-space:pre">             </span>if
              (is_like_ci) {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                        </span>/**</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                        </span>
              * Small optimisation. Reduce number of</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                        </span>
              * calls to u_tolower function. SQL</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -814,7 +816,7 @@
              sql_utf8_pattern_compare(const char *pattern,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> int</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> sql_strlike_cs(const char *zPattern, const char
              *zStr, unsigned int esc)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">     </span>return
              sql_utf8_pattern_compare(zPattern, zStr,
              &case_sensitive_like, esc);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+<span class="Apple-tab-span" style="white-space:pre">     </span>return
              sql_utf8_pattern_compare(zPattern, zStr,
              case_sensitive_like, esc);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> }</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> /**</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -824,7 +826,7 @@ sql_strlike_cs(const char
              *zPattern, const char *zStr, unsigned int esc)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> int</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> sql_strlike_ci(const char *zPattern, const char
              *zStr, unsigned int esc)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">     </span>return
              sql_utf8_pattern_compare(zPattern, zStr,
              &case_insensitive_like, esc);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+<span class="Apple-tab-span" style="white-space:pre">     </span>return
              sql_utf8_pattern_compare(zPattern, zStr,
              case_insensitive_like, esc);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> }</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> /**</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -907,7 +909,7 @@ likeFunc(sqlite3_context
              *context, int argc, sqlite3_value **argv)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>sqlite3_like_count++;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> #endif</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>int
              res;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">     </span>res
              = sql_utf8_pattern_compare(zB, zA, is_like_ci, escape);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+<span class="Apple-tab-span" style="white-space:pre">     </span>res
              = sql_utf8_pattern_compare(zB, zA, *is_like_ci, escape);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>if
              (res == SQL_INVALID_PATTERN) {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                </span>sqlite3_result_error(context,
              "LIKE pattern can only contain"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">                                </span>
                  " UTF-8 characters", -1);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">diff --git a/src/box/sql/whereexpr.c
              b/src/box/sql/whereexpr.c</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">index 947bd5d94..2d9fb6453 100644</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- a/src/box/sql/whereexpr.c</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+++ b/src/box/sql/whereexpr.c</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -218,6 +218,12 @@ operatorMask(int op)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>return
              c;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> }</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+/**</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+ * Wildcard characters.</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+ */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+#define match_one '_'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+#define match_all '%'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> #ifndef SQLITE_OMIT_LIKE_OPTIMIZATION</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> /**</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">  * Check to see if the given expression is a
              LIKE operator that</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -258,9 +264,6 @@ is_like(Parse *pParse,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>int
              c;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>/*
              Number of non-wildcard prefix characters */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>int
              cnt;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">     </span>/*
              Wildcard characters */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">     </span>char
              match_all = '%';</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-<span class="Apple-tab-span" style="white-space:pre">     </span>char
              match_one = '_';</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>/*
              Database connection */</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>sqlite3
              *db = pParse->db;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> <span class="Apple-tab-span" style="white-space:pre">        </span>sqlite3_value
              *pVal = 0;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">diff --git a/test/sql-tap/alter.test.lua
              b/test/sql-tap/alter.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">index 773bdebdb..98338c493 100755</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- a/test/sql-tap/alter.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+++ b/test/sql-tap/alter.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -230,10 +230,9 @@ test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     "alter-5.1",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        PRAGMA case_sensitive_like = true;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         CREATE TABLE xyz(x PRIMARY KEY);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         ALTER TABLE xyz RENAME TO "xyz1234abc";</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT "name" FROM "_space" WHERE "name"
              LIKE 'xyz%';</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        SELECT "name" FROM "_space" WHERE "name"
              = 'xyz1234abc';</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         -- <alter-5.1></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         "xyz1234abc"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -244,8 +243,7 @@ test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     "alter-5.2",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         ALTER TABLE "xyz1234abc" RENAME TO
              xyzabc;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT "name" FROM "_space" WHERE "name"
              LIKE 'XYZ%';</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        PRAGMA case_sensitive_like = false;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        SELECT "name" FROM "_space" WHERE "name"
              = 'XYZABC';</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         -- <alter-5.2></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         "XYZABC"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">diff --git a/test/sql-tap/e_expr.test.lua
              b/test/sql-tap/e_expr.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">index 162026845..0d69e8535 100755</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- a/test/sql-tap/e_expr.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+++ b/test/sql-tap/e_expr.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -1,6 +1,6 @@</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> #!/usr/bin/env tarantool</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> test = require("sqltester")</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:plan(11521)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+test:plan(10647)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> --!./tcltestrunner.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> -- 2010 July 16</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -77,7 +77,7 @@ local operations = {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {"<>", "ne1"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {"!=", "ne2"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {"IS", "is"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    {"LIKE", "like"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+--    {"LIKE", "like"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {"AND", "and"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {"OR", "or"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {"MATCH", "match"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -96,8 +96,9 @@ operations = {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {"<<", ">>", "&", "|"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {"<", "<=", ">", ">="},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> -- Another NOTE: MATCH & REGEXP aren't
              supported in Tarantool &</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- <span class="Apple-tab-span" style="white-space:pre">          </span>
              are waiting for their hour.</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    {"=", "==", "!=", "<>", "LIKE"},
              --"MATCH", "REGEXP"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+--               are waiting for their hour,
              don't confuse them</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+--               being commented with commenting
              of "LIKE".</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+    {"=", "==", "!=", "<>"}, --"LIKE"},
              --"MATCH", "REGEXP"},</div>
          </div>
        </div>
      </div>
    </blockquote>
    Delete Like. No one returns here.<br class=""></div></div></blockquote><div><br class=""></div><div>It’s a table of all of the operators thus I think it still worth leaving it there.</div><div>Who knows, it may be that someone will revive tests for LIKE.</div><br class=""><blockquote type="cite" class=""><div class=""><div text="#000000" bgcolor="#FFFFFF" class="">
    <blockquote type="cite" cite="mid:E3BCC6A6-A137-4887-BD78-844A3F228441@tarantool.org" class="">
      <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
        space; line-break: after-white-space;" class="">
        <div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode:
          space; line-break: after-white-space;" class="">
          <div dir="auto" style="word-wrap: break-word;
            -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {"AND"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {"OR"},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> }</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -461,67 +462,21 @@ literals = {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> for _, op in ipairs(oplist) do</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     for n1, rhs in ipairs(literals) do</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         for n2, lhs in ipairs(literals) do</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-            if op ~= "LIKE" then</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                local t =
              test:execsql(string.format(" SELECT typeof(%s %s %s) ",
              lhs, op, rhs))[1]</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                test:do_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                  
               string.format("e_expr-7.%s.%s.%s", opname[op], n1, n2),</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                    function()</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                        return (((op == "||")
              and ((t == "text") or</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                                (t == "null")))
              or</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                                ((op ~= "||")
              and (((t == "integer") or</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                                 (t == "real"))
              or</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                                 (t ==
              "null")))) and 1 or 0</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                    end, 1)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-            end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-local valid_patterns =</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    {"'abc'", "'hexadecimal'", "''", 123, -123,
              0,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    123.4, 0.0, -123.4, "X''", "X'0000'",
              "NULL"}</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-local invalid_patterns = {"X'ABCDEF'"}</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-for n1, rhs in ipairs(valid_patterns) do</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    for n2, lhs in ipairs(literals) do</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        local t = test:execsql(string.format("
              SELECT typeof(%s LIKE %s) ", lhs, rhs))[1]</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        test:do_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-            string.format("e_expr-7.%s.LIKE.%s",
              n1, n2),</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-            function()</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                return (t == "integer" or</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                        t == "real" or</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                        t == "null") and 1 or 0</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-            end, 1)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            local t =
              test:execsql(string.format(" SELECT typeof(%s %s %s) ",
              lhs, op, rhs))[1]</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            test:do_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+              
               string.format("e_expr-7.%s.%s.%s", opname[op], n1, n2),</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+                function()</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+                    --print("\n op "..op.." t
              "..t)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+                    return (((op == "||") and
              ((t == "text") or</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+                            (t == "null"))) or</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+                            ((op ~= "||") and
              (((t == "integer") or</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+                                    (t ==
              "real")) or</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+                                    (t ==
              "null")))) and 1 or 0</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+                end, 1)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-for n1, rhs in ipairs(invalid_patterns) do</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    for n2, lhs in ipairs(literals) do</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        local t = string.format(" SELECT
              typeof(%s LIKE %s) ", lhs, rhs)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        local test_name =
              string.format("e_expr-7.%s.LIKE.%s", n1 + 12, n2)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        if n2 ~= 13 then</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-            test:do_catchsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                test_name,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                t,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                    -- <test_name></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                    1, "LIKE pattern can only
              contain UTF-8 characters"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                    -- <test_name></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        else</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-            test:do_catchsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                test_name,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                t,</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                    -- <test_name></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                    0, {"null"}</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                    -- <test_name></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-                })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> ---------------------------------------------------------------------------</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> -- Test the IS and IS NOT operators.</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> --</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -1343,15 +1298,12 @@ test:execsql [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     CREATE TABLE tblname(cname PRIMARY KEY);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> ]]</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- NOTE: GLOB is removed from Tarantool, thus
              it'll be needed to</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">---       refactor these calls. They don't work
              right now since</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">---          we don't support MATHC & REGEXP.</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- local function glob(args)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">---     return 1</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+local function glob(args)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+    return 1</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- box.internal.sql_create_function("MATCH",
              glob)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- box.internal.sql_create_function("REGEXP",
              glob)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+box.internal.sql_create_function("MATCH", glob)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+box.internal.sql_create_function("REGEXP", glob)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> local test_cases12 ={</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {1, 123},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     {2, 123.4e05},</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -2312,96 +2264,14 @@ test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         -- </e_expr-16.1.7></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- EVIDENCE-OF: R-52087-12043 LIKE doesn't use
              Unix file globbing</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- syntax for its wildcards.</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">---</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "e_expr-17.1.0",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        PRAGMA case_sensitive_like = 1</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <e_expr-17.1.0></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <e_expr-17.1.0></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "e_expr-17.1.1",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT 'abcxyz' LIKE 'abc*'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <e_expr-17.1.1></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        0</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </e_expr-17.1.1></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "e_expr-17.1.2",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT 'abcxyz' LIKE 'abc%'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <e_expr-17.1.2></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        1</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </e_expr-17.1.2></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "e_expr-17.1.3",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT 'abcxyz' LIKE 'abc???'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <e_expr-17.1.3></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        0</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </e_expr-17.1.3></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "e_expr-17.1.4",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT 'abcxyz' LIKE 'abc___'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <e_expr-17.1.4></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        1</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </e_expr-17.1.4></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "e_expr-17.1.5",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT 'abcxyz' LIKE 'abc%'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <e_expr-17.1.5></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        1</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </e_expr-17.1.5></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "e_expr-17.1.6",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT 'ABCxyz' LIKE 'abc%'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <e_expr-17.1.6></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        0</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </e_expr-17.1.6></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "e_expr-17.1.7",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT 'abcxyz' LIKE 'ABC%'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <e_expr-17.1.7></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        0</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </e_expr-17.1.7></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> -- EVIDENCE-OF: R-39616-20555 LIKE may be
              preceded by the</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> -- NOT keyword to invert the sense of the test.</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> --</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     "e_expr-17.2.0",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT 'abcxyz' NOT LIKE 'ABC%'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        PRAGMA case_sensitive_like = 1;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        SELECT 'abcxyz' NOT LIKE 'ABC%';</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         -- <e_expr-17.2.0></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         1</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -2461,11 +2331,10 @@ test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> -- MUST_WORK_TEST uses access to nullvalue...
              (sql parameters) and built in functions</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> if 0>0 then</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     db("nullvalue", "null")</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         "e_expr-17.2.6",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-            SELECT 'abcxyz' NOT LIKE NULL</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            SELECT 'abcxyz' NOT GLOB NULL</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">             -- <e_expr-17.2.6></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">             "null"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -2475,13 +2344,33 @@ if 0>0 then</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         "e_expr-17.2.7",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-            SELECT NULL NOT LIKE 'ABC%'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            SELECT 'abcxyz' NOT LIKE NULL</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">             -- <e_expr-17.2.7></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">             "null"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">             -- </e_expr-17.2.7></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+    test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        "e_expr-17.2.8",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            SELECT NULL NOT GLOB 'abc*'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            -- <e_expr-17.2.8></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            "null"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            -- </e_expr-17.2.8></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+    test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        "e_expr-17.2.9",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            SELECT NULL NOT LIKE 'ABC%'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            -- <e_expr-17.2.9></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            "null"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+            -- </e_expr-17.2.9></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+        })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     db("nullvalue", "")</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> end</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">diff --git
              a/test/sql-tap/gh-3251-string-pattern-comparison.test.lua
              b/test/sql-tap/gh-3251-string-pattern-comparison.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">index 55943345f..a6d822ccd 100755</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">---
              a/test/sql-tap/gh-3251-string-pattern-comparison.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+++
              b/test/sql-tap/gh-3251-string-pattern-comparison.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -185,7 +185,7 @@ local valid_testcases = {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> -- Valid testcases.</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> for i, tested_string in ipairs(valid_testcases)
              do</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    test_name = prefix .. "8." .. tostring(i)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+    local test_name = prefix .. "8." ..
              tostring(i)</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     local test_itself = "SELECT 'abc' LIKE 'ab"
              .. tested_string .. "';"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     test:do_execsql_test(test_name, test_itself,
              {0})</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">diff --git a/test/sql-tap/like3.test.lua
              b/test/sql-tap/like3.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">index 0bc71a09c..8f4f79422 100755</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">--- a/test/sql-tap/like3.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">+++ b/test/sql-tap/like3.test.lua</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">@@ -67,70 +67,6 @@ test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">         -- </like3-1.2></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> </div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "like3-2.0",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        PRAGMA case_sensitive_like = 1;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        CREATE TABLE t2(a PRIMARY KEY, b TEXT);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        INSERT INTO t2 SELECT a, b FROM t1;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        CREATE INDEX t2ba ON t2(b,a);</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT a, b FROM t2 WHERE b LIKE 'ab%'
              ORDER BY +a;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <like3-2.0></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        1, "abc", 4, "abc"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </like3-2.0></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "like3-2.1",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT a, b FROM t2 WHERE +b LIKE 'ab%'
              ORDER BY +a;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <like3-2.1></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        1, "abc", 4, "abc"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </like3-2.1></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "like3-2.2",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT a, b FROM t2 WHERE b>=x'6162'
              AND b LIKE 'ab%'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <like3-2.2></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        4, "abc"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </like3-2.2></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "like3-2.3",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT a, b FROM t2 WHERE +b>=x'6162'
              AND +b LIKE 'ab%'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <like3-2.3></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        4, "abc"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </like3-2.3></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "like3-2.4",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT a, b FROM t2 WHERE b LIKE 'ab%'
              AND b>=x'6162'</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <like3-2.4></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        4, "abc"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </like3-2.4></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-test:do_execsql_test(</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    "like3-2.5",</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    [[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        SELECT a, b FROM t2 WHERE +b LIKE 'ab%'
              AND +b>=x'6162';</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        PRAGMA case_sensitive_like = 0;</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    ]], {</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- <like3-2.5></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        4, "abc"</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-        -- </like3-2.5></div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">-    })</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class=""> test:execsql([[</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     CREATE TABLE t3(x TEXT PRIMARY KEY COLLATE
              "unicode_ci");</div>
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">     INSERT INTO t3(x)
              VALUES('aaa'),('abc'),('abd'),('abe'),('acz');</div>
            <div class=""><br class="">
            </div>
          </div>
          <br class="">
          <div class="">
            <div dir="auto" style="word-wrap: break-word;
              -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
              <div style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">--</div>
              <div style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">WBR, Nikita Tatunov.</div>
              <div style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><a href="mailto:n.tatunov@tarantool.org" class="" moz-do-not-send="true">n.tatunov@tarantool.org</a></div>
            </div>
          </div>
          <br class="">
        </div>
      </div>
    </blockquote>
    <br class="">
  </div>

</div></blockquote><br class=""></div><div><div>diff --git a/extra/mkkeywordhash.c b/extra/mkkeywordhash.c</div><div>index 990c4199f..1fee3a7f2 100644</div><div>--- a/extra/mkkeywordhash.c</div><div>+++ b/extra/mkkeywordhash.c</div><div>@@ -159,7 +159,6 @@ static Keyword aKeywordTable[] = {</div><div>   { "FOR",                    "TK_FOR",         TRIGGER,          true  },</div><div>   { "FOREIGN",                "TK_FOREIGN",     FKEY,             true  },</div><div>   { "FROM",                   "TK_FROM",        ALWAYS,           true  },</div><div>-  { "GLOB",                   "TK_LIKE_KW",     ALWAYS,           false },</div><div>   { "GROUP",                  "TK_GROUP",       ALWAYS,           true  },</div><div>   { "HAVING",                 "TK_HAVING",      ALWAYS,           true  },</div><div>   { "IF",                     "TK_IF",          ALWAYS,           true  },</div><div>diff --git a/src/box/sql/analyze.c b/src/box/sql/analyze.c</div><div>index 5f73f026e..fc7588c3f 100644</div><div>--- a/src/box/sql/analyze.c</div><div>+++ b/src/box/sql/analyze.c</div><div>@@ -829,7 +829,7 @@ analyzeOneTable(Parse * pParse,<span class="Apple-tab-span" style="white-space:pre">      </span>/* Parser context */</div><div> <span class="Apple-tab-span" style="white-space:pre">           </span>return;</div><div> <span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>assert(pTab->tnum != 0);</div><div>-<span class="Apple-tab-span" style="white-space:pre"> </span>if (sqlite3_strlike("\\_%", pTab->def->name, '\\') == 0) {</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span>if (sql_strlike_ci("\\_%", pTab->def->name, '\\') == 0) {</div><div> <span class="Apple-tab-span" style="white-space:pre">              </span>/* Do not gather statistics on system tables */</div><div> <span class="Apple-tab-span" style="white-space:pre">                </span>return;</div><div> <span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div>@@ -1333,11 +1333,10 @@ analysis_loader(void *data, int argc, char **argv, char **unused)</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>/* Position ptr at the end of stat string. */</div><div> <span class="Apple-tab-span" style="white-space:pre">  </span>for (; *z == ' ' || (*z >= '0' && *z <= '9'); ++z);</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>while (z[0]) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">              </span>if (sqlite3_strglob("unordered*", z) == 0) {</div><div>+<span class="Apple-tab-span" style="white-space:pre">              </span>if (sql_strlike_cs("unordered%", z, '[') == 0)</div><div> <span class="Apple-tab-span" style="white-space:pre">                       </span>index->def->opts.stat->is_unordered = true;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                </span>} else if (sqlite3_strglob("noskipscan*", z) == 0) {</div><div>+<span class="Apple-tab-span" style="white-space:pre">              </span>else if (sql_strlike_cs("noskipscan%", z, '[') == 0)</div><div> <span class="Apple-tab-span" style="white-space:pre">                 </span>index->def->opts.stat->skip_scan_enabled = false;</div><div>-<span class="Apple-tab-span" style="white-space:pre">          </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">              </span>while (z[0] != 0 && z[0] != ' ')</div><div> <span class="Apple-tab-span" style="white-space:pre">                       </span>z++;</div><div> <span class="Apple-tab-span" style="white-space:pre">           </span>while (z[0] == ' ')</div><div>diff --git a/src/box/sql/func.c b/src/box/sql/func.c</div><div>index 66cae17b5..28b435ae3 100644</div><div>--- a/src/box/sql/func.c</div><div>+++ b/src/box/sql/func.c</div><div>@@ -607,41 +607,38 @@ total_changes(sqlite3_context * context, int NotUsed, sqlite3_value ** NotUsed2)</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>sqlite3_result_int(context, sqlite3_total_changes(db));</div><div> }</div><div> </div><div>-/*</div><div>- * A structure defining how to do GLOB-style comparisons.</div><div>- */</div><div>-struct compareInfo {</div><div>-<span class="Apple-tab-span" style="white-space:pre">        </span>u8 matchAll;<span class="Apple-tab-span" style="white-space:pre">                </span>/* "*" or "%" */</div><div>-<span class="Apple-tab-span" style="white-space:pre">        </span>u8 matchOne;<span class="Apple-tab-span" style="white-space:pre">                </span>/* "?" or "_" */</div><div>-<span class="Apple-tab-span" style="white-space:pre">        </span>u8 matchSet;<span class="Apple-tab-span" style="white-space:pre">                </span>/* "[" or 0 */</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span>u8 noCase;<span class="Apple-tab-span" style="white-space:pre">          </span>/* true to ignore case differences */</div><div>-};</div><div>-</div><div> /**</div><div>- * Providing there are symbols in string s this</div><div>- * macro returns UTF-8 code of character and</div><div>- * promotes pointer to the next symbol in the string.</div><div>- * Otherwise return code is SQL_END_OF_STRING.</div><div>+ * Providing there are symbols in string s this macro returns</div><div>+ * UTF-8 code of character and promotes pointer to the next</div><div>+ * symbol in the string. If s points to an invalid UTF-8 symbol</div><div>+ * return code is SQL_INVALID_UTF8_SYMBOL. If there're no symbols</div><div>+ * left in string s return code is SQL_END_OF_STRING.</div><div>  */</div><div> #define Utf8Read(s, e) ucnv_getNextUChar(pUtf8conv, &(s), (e), &(status))</div><div> </div><div> #define SQL_END_OF_STRING        0xffff</div><div> #define SQL_INVALID_UTF8_SYMBOL  0xfffd</div><div> </div><div>-static const struct compareInfo globInfo = { '*', '?', '[', 0 };</div><div>+/**</div><div>+ * If SQLITE_CASE_SENSITIVE_LIKE is not defined, then the LIKE</div><div>+ * operator is not case sensitive.</div><div>+ */</div><div>+static const int case_insensitive_like = 1;</div><div> </div><div>-/* The correct SQL-92 behavior is for the LIKE operator to ignore</div><div>- * case.  Thus  'a' LIKE 'A' would be true.</div><div>+/**</div><div>+ * If SQLITE_CASE_SENSITIVE_LIKE is defined, then the LIKE</div><div>+ * operator is case sensitive causing 'a' LIKE 'A' to be false.</div><div>  */</div><div>-static const struct compareInfo likeInfoNorm = { '%', '_', 0, 1 };</div><div>+static const int case_sensitive_like = 0;</div><div> </div><div>-/* If SQLITE_CASE_SENSITIVE_LIKE is defined, then the LIKE operator</div><div>- * is case sensitive causing 'a' LIKE 'A' to be false</div><div>+/**</div><div>+ * Wildcards.</div><div>  */</div><div>-static const struct compareInfo likeInfoAlt = { '%', '_', 0, 0 };</div><div>+#define match_one '_'</div><div>+#define match_all '%'</div><div> </div><div>-/*</div><div>- * Possible error returns from sql_utf8_pattern_compare()</div><div>+/**</div><div>+ * Possible error returns from sql_utf8_pattern_compare().</div><div>  */</div><div> #define SQL_MATCH                0</div><div> #define SQL_NOMATCH              1</div><div>@@ -650,138 +647,91 @@ static const struct compareInfo likeInfoAlt = { '%', '_', 0, 0 };</div><div> </div><div> /**</div><div>  * Compare two UTF-8 strings for equality where the first string</div><div>- * is a GLOB or LIKE expression.</div><div>- *</div><div>- * Globbing rules:</div><div>- *</div><div>- *      '*'       Matches any sequence of zero or more characters.</div><div>- *</div><div>- *      '?'       Matches exactly one character.</div><div>- *</div><div>- *     [...]      Matches one character from the enclosed list of</div><div>- *                characters.</div><div>- *</div><div>- *     [^...]     Matches one character not in the enclosed list.</div><div>- *</div><div>- * With the [...] and [^...] matching, a ']' character can be</div><div>- * included in the list by making it the first character after</div><div>- * '[' or '^'. A range of characters can be specified using '-'.</div><div>- * Example: "[a-z]" matches any single lower-case letter.</div><div>- * To match a '-', make it the last character in the list.</div><div>+ * is a LIKE expression.</div><div>  *</div><div>  * Like matching rules:</div><div>  *</div><div>- *      '%'       Matches any sequence of zero or more characters.</div><div>+ *      '%'       Matches any sequence of zero or more</div><div>+ *                characters.</div><div>  *</div><div>  *      '_'       Matches any one character.</div><div>  *</div><div>- *      Ec        Where E is the "esc" character and c is any other</div><div>- *                character, including '%', '_', and esc, match</div><div>- *                exactly c.</div><div>- *</div><div>- * The comments within this routine usually assume glob matching.</div><div>+ *      Ec        Where E is the "esc" character and c is any</div><div>+ *                other character, including '%', '_', and esc,</div><div>+ *                match exactly c.</div><div>  *</div><div>  * This routine is usually quick, but can be N**2 in the worst</div><div>  * case.</div><div>  *</div><div>  * @param pattern String containing comparison pattern.</div><div>  * @param string String being compared.</div><div>- * @param compareInfo Information about how to compare.</div><div>- * @param matchOther The escape char (LIKE) or '[' (GLOB).</div><div>+ * @param is_like_ci true if LIKE is case insensitive.</div><div>+ * @param match_other The escape char for LIKE.</div><div>  *</div><div>  * @retval SQL_MATCH:               Match.</div><div>  *<span class="Apple-tab-span" style="white-space:pre">  </span>   SQL_NOMATCH:             No match.</div><div>- *<span class="Apple-tab-span" style="white-space:pre">  </span>   SQL_NOWILDCARDMATCH:     No match in spite of having *</div><div>- *<span class="Apple-tab-span" style="white-space:pre">                          </span>    or % wildcards.</div><div>+ *<span class="Apple-tab-span" style="white-space:pre">     </span>   SQL_NOWILDCARDMATCH:     No match in spite of having %</div><div>+ *<span class="Apple-tab-span" style="white-space:pre">                          </span>    wildcard.</div><div>  *<span class="Apple-tab-span" style="white-space:pre">      </span>   SQL_INVALID_PATTERN:     Pattern contains invalid</div><div>  *<span class="Apple-tab-span" style="white-space:pre">                          </span>    symbol.</div><div>  */</div><div> static int</div><div> sql_utf8_pattern_compare(const char *pattern,</div><div> <span class="Apple-tab-span" style="white-space:pre">                 </span> const char *string,</div><div>-<span class="Apple-tab-span" style="white-space:pre">                        </span> const struct compareInfo *pInfo,</div><div>-<span class="Apple-tab-span" style="white-space:pre">                   </span> UChar32 matchOther)</div><div>+<span class="Apple-tab-span" style="white-space:pre">                        </span> const int is_like_ci,</div><div>+<span class="Apple-tab-span" style="white-space:pre">                      </span> UChar32 match_other)</div><div> {</div><div> <span class="Apple-tab-span" style="white-space:pre">    </span>/* Next pattern and input string chars */</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>UChar32 c, c2;</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>/* "?" or "_" */</div><div>-<span class="Apple-tab-span" style="white-space:pre">        </span>UChar32 matchOne = pInfo->matchOne;</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>/* "*" or "%" */</div><div>-<span class="Apple-tab-span" style="white-space:pre">        </span>UChar32 matchAll = pInfo->matchAll;</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>/* True if uppercase==lowercase */</div><div>-<span class="Apple-tab-span" style="white-space:pre">  </span>UChar32 noCase = pInfo->noCase;</div><div> <span class="Apple-tab-span" style="white-space:pre">     </span>/* One past the last escaped input char */</div><div> <span class="Apple-tab-span" style="white-space:pre">     </span>const char *zEscaped = 0;</div><div>-<span class="Apple-tab-span" style="white-space:pre">   </span>const char * pattern_end = pattern + strlen(pattern);</div><div>-<span class="Apple-tab-span" style="white-space:pre">       </span>const char * string_end = string + strlen(string);</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span>const char *pattern_end = pattern + strlen(pattern);</div><div>+<span class="Apple-tab-span" style="white-space:pre">        </span>const char *string_end = string + strlen(string);</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>UErrorCode status = U_ZERO_ERROR;</div><div> </div><div> <span class="Apple-tab-span" style="white-space:pre"> </span>while (pattern < pattern_end) {</div><div> <span class="Apple-tab-span" style="white-space:pre">             </span>c = Utf8Read(pattern, pattern_end);</div><div> <span class="Apple-tab-span" style="white-space:pre">            </span>if (c == SQL_INVALID_UTF8_SYMBOL)</div><div> <span class="Apple-tab-span" style="white-space:pre">                      </span>return SQL_INVALID_PATTERN;</div><div>-<span class="Apple-tab-span" style="white-space:pre">         </span>if (c == matchAll) {<span class="Apple-tab-span" style="white-space:pre">        </span>/* Match "*" */</div><div>-<span class="Apple-tab-span" style="white-space:pre">                   </span>/* Skip over multiple "*" characters in</div><div>-<span class="Apple-tab-span" style="white-space:pre">                   </span> * the pattern. If there are also "?"</div><div>+<span class="Apple-tab-span" style="white-space:pre">             </span>if (c == match_all) {</div><div>+<span class="Apple-tab-span" style="white-space:pre">                       </span>/**</div><div>+<span class="Apple-tab-span" style="white-space:pre">                 </span> * Skip over multiple "%" characters in</div><div>+<span class="Apple-tab-span" style="white-space:pre">                   </span> * the pattern. If there are also "_"</div><div> <span class="Apple-tab-span" style="white-space:pre">                        </span> * characters, skip those as well, but</div><div> <span class="Apple-tab-span" style="white-space:pre">                 </span> * consume a single character of the</div><div>-<span class="Apple-tab-span" style="white-space:pre">                        </span> * input string for each "?" skipped.</div><div>+<span class="Apple-tab-span" style="white-space:pre">                     </span> * input string for each "_" skipped.</div><div> <span class="Apple-tab-span" style="white-space:pre">                        </span> */</div><div> <span class="Apple-tab-span" style="white-space:pre">                    </span>while ((c = Utf8Read(pattern, pattern_end)) !=</div><div> <span class="Apple-tab-span" style="white-space:pre">                 </span>       SQL_END_OF_STRING) {</div><div> <span class="Apple-tab-span" style="white-space:pre">                             </span>if (c == SQL_INVALID_UTF8_SYMBOL)</div><div> <span class="Apple-tab-span" style="white-space:pre">                                      </span>return SQL_INVALID_PATTERN;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>if (c != matchAll && c != matchOne)</div><div>+<span class="Apple-tab-span" style="white-space:pre">                         </span>if (c != match_all && c != match_one)</div><div> <span class="Apple-tab-span" style="white-space:pre">                                  </span>break;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                              </span>if (c == matchOne &&</div><div>+<span class="Apple-tab-span" style="white-space:pre">                                </span>if (c == match_one &&</div><div> <span class="Apple-tab-span" style="white-space:pre">                          </span>    (c2 = Utf8Read(string, string_end)) ==</div><div> <span class="Apple-tab-span" style="white-space:pre">                           </span>    SQL_END_OF_STRING)</div><div> <span class="Apple-tab-span" style="white-space:pre">                                       </span>return SQL_NOWILDCARDMATCH;</div><div> <span class="Apple-tab-span" style="white-space:pre">                            </span>if (c2 == SQL_INVALID_UTF8_SYMBOL)</div><div> <span class="Apple-tab-span" style="white-space:pre">                                     </span>return SQL_NOMATCH;</div><div> <span class="Apple-tab-span" style="white-space:pre">                    </span>}</div><div>-<span class="Apple-tab-span" style="white-space:pre">                   </span>/*</div><div>-<span class="Apple-tab-span" style="white-space:pre">                  </span> * "*" at the end of the pattern matches.</div><div>+<span class="Apple-tab-span" style="white-space:pre">                 </span>/**</div><div>+<span class="Apple-tab-span" style="white-space:pre">                 </span> * "%" at the end of the pattern matches.</div><div> <span class="Apple-tab-span" style="white-space:pre">                    </span> */</div><div> <span class="Apple-tab-span" style="white-space:pre">                    </span>if (c == SQL_END_OF_STRING) {</div><div> <span class="Apple-tab-span" style="white-space:pre">                          </span>return SQL_MATCH;</div><div> <span class="Apple-tab-span" style="white-space:pre">                      </span>}</div><div>-<span class="Apple-tab-span" style="white-space:pre">                   </span>if (c == matchOther) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                              </span>if (pInfo->matchSet == 0) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                      </span>c = Utf8Read(pattern, pattern_end);</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                 </span>if (c == SQL_INVALID_UTF8_SYMBOL)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                           </span>return SQL_INVALID_PATTERN;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                 </span>if (c == SQL_END_OF_STRING)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                         </span>return SQL_NOWILDCARDMATCH;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>} else {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                    </span>/* "[...]" immediately</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                    </span> * follows the "*". We</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                    </span> * have to do a slow</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                        </span> * recursive search in</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                      </span> * this case, but it is</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                     </span> * an unusual case.</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                 </span> */</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                 </span>assert(matchOther < 0x80);</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                       </span>while (string < string_end) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                            </span>int bMatch =</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                </span>    sql_utf8_pattern_compare(</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                             </span>&pattern[-1],</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                           </span>string,</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                             </span>pInfo,</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                              </span>matchOther);</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                </span>if (bMatch != SQL_NOMATCH)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                  </span>return bMatch;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                              </span>c = Utf8Read(string, string_end);</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                           </span>if (c == SQL_INVALID_UTF8_SYMBOL)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                   </span>return SQL_NOMATCH;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                 </span>}</div><div>+<span class="Apple-tab-span" style="white-space:pre">                   </span>if (c == match_other) {</div><div>+<span class="Apple-tab-span" style="white-space:pre">                             </span>c = Utf8Read(pattern, pattern_end);</div><div>+<span class="Apple-tab-span" style="white-space:pre">                         </span>if (c == SQL_INVALID_UTF8_SYMBOL)</div><div>+<span class="Apple-tab-span" style="white-space:pre">                                   </span>return SQL_INVALID_PATTERN;</div><div>+<span class="Apple-tab-span" style="white-space:pre">                         </span>if (c == SQL_END_OF_STRING)</div><div> <span class="Apple-tab-span" style="white-space:pre">                                    </span>return SQL_NOWILDCARDMATCH;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">                      </span>}</div><div> </div><div>-<span class="Apple-tab-span" style="white-space:pre">                      </span>/* At this point variable c contains the</div><div>+<span class="Apple-tab-span" style="white-space:pre">                    </span>/**</div><div>+<span class="Apple-tab-span" style="white-space:pre">                 </span> * At this point variable c contains the</div><div> <span class="Apple-tab-span" style="white-space:pre">                       </span> * first character of the pattern string</div><div>-<span class="Apple-tab-span" style="white-space:pre">                    </span> * past the "*". Search in the input</div><div>+<span class="Apple-tab-span" style="white-space:pre">                      </span> * past the "%". Search in the input</div><div> <span class="Apple-tab-span" style="white-space:pre">                 </span> * string for the first matching</div><div> <span class="Apple-tab-span" style="white-space:pre">                       </span> * character and recursively continue the</div><div> <span class="Apple-tab-span" style="white-space:pre">                      </span> * match from that point.</div><div>@@ -793,7 +743,7 @@ sql_utf8_pattern_compare(const char *pattern,</div><div> <span class="Apple-tab-span" style="white-space:pre">                      </span> */</div><div> </div><div> <span class="Apple-tab-span" style="white-space:pre">                       </span>int bMatch;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                 </span>if (noCase)</div><div>+<span class="Apple-tab-span" style="white-space:pre">                 </span>if (is_like_ci)</div><div> <span class="Apple-tab-span" style="white-space:pre">                                </span>c = u_tolower(c);</div><div> <span class="Apple-tab-span" style="white-space:pre">                      </span>while (string < string_end){</div><div> <span class="Apple-tab-span" style="white-space:pre">                                </span>/**</div><div>@@ -809,7 +759,7 @@ sql_utf8_pattern_compare(const char *pattern,</div><div> <span class="Apple-tab-span" style="white-space:pre">                            </span>c2 = Utf8Read(string, string_end);</div><div> <span class="Apple-tab-span" style="white-space:pre">                             </span>if (c2 == SQL_INVALID_UTF8_SYMBOL)</div><div> <span class="Apple-tab-span" style="white-space:pre">                                     </span>return SQL_NOMATCH;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>if (!noCase) {</div><div>+<span class="Apple-tab-span" style="white-space:pre">                              </span>if (!is_like_ci) {</div><div> <span class="Apple-tab-span" style="white-space:pre">                                     </span>if (c2 != c)</div><div> <span class="Apple-tab-span" style="white-space:pre">                                           </span>continue;</div><div> <span class="Apple-tab-span" style="white-space:pre">                              </span>} else {</div><div>@@ -818,79 +768,27 @@ sql_utf8_pattern_compare(const char *pattern,</div><div> <span class="Apple-tab-span" style="white-space:pre">                             </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">                              </span>bMatch = sql_utf8_pattern_compare(pattern,</div><div> <span class="Apple-tab-span" style="white-space:pre">                                                             </span>  string,</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                              </span>  pInfo,</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                               </span>  matchOther);</div><div>+<span class="Apple-tab-span" style="white-space:pre">                                                         </span>  is_like_ci,</div><div>+<span class="Apple-tab-span" style="white-space:pre">                                                          </span>  match_other);</div><div> <span class="Apple-tab-span" style="white-space:pre">                           </span>if (bMatch != SQL_NOMATCH)</div><div> <span class="Apple-tab-span" style="white-space:pre">                                     </span>return bMatch;</div><div> <span class="Apple-tab-span" style="white-space:pre">                 </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">                      </span>return SQL_NOWILDCARDMATCH;</div><div> <span class="Apple-tab-span" style="white-space:pre">            </span>}</div><div>-<span class="Apple-tab-span" style="white-space:pre">           </span>if (c == matchOther) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                      </span>if (pInfo->matchSet == 0) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                              </span>c = Utf8Read(pattern, pattern_end);</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>if (c == SQL_INVALID_UTF8_SYMBOL)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                   </span>return SQL_INVALID_PATTERN;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>if (c == SQL_END_OF_STRING)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                 </span>return SQL_NOMATCH;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>zEscaped = pattern;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                 </span>} else {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                            </span>UChar32 prior_c = 0;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                </span>int seen = 0;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                               </span>int invert = 0;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                             </span>c = Utf8Read(string, string_end);</div><div>-<span class="Apple-tab-span" style="white-space:pre">                           </span>if (c == SQL_INVALID_UTF8_SYMBOL)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                   </span>return SQL_NOMATCH;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>if (string == string_end)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                   </span>return SQL_NOMATCH;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>c2 = Utf8Read(pattern, pattern_end);</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                </span>if (c2 == SQL_INVALID_UTF8_SYMBOL)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                  </span>return SQL_INVALID_PATTERN;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>if (c2 == '^') {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                    </span>invert = 1;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                 </span>c2 = Utf8Read(pattern, pattern_end);</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                        </span>if (c2 == SQL_INVALID_UTF8_SYMBOL)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                          </span>return SQL_INVALID_PATTERN;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>}</div><div>-<span class="Apple-tab-span" style="white-space:pre">                           </span>if (c2 == ']') {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                    </span>if (c == ']')</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                               </span>seen = 1;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                   </span>c2 = Utf8Read(pattern, pattern_end);</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                        </span>if (c2 == SQL_INVALID_UTF8_SYMBOL)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                          </span>return SQL_INVALID_PATTERN;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>}</div><div>-<span class="Apple-tab-span" style="white-space:pre">                           </span>while (c2 != SQL_END_OF_STRING && c2 != ']') {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                      </span>if (c2 == '-' && pattern[0] != ']'</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                  </span>    && pattern < pattern_end</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                   </span>    && prior_c > 0) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                          </span>c2 = Utf8Read(pattern, pattern_end);</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                </span>if (c2 == SQL_INVALID_UTF8_SYMBOL)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                  </span>return SQL_INVALID_PATTERN;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                         </span>if (c >= prior_c && c <= c2)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                  </span>seen = 1;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                           </span>prior_c = 0;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                        </span>} else {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                            </span>if (c == c2) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                                      </span>seen = 1;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                           </span>}</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                           </span>prior_c = c2;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                       </span>}</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                   </span>c2 = Utf8Read(pattern, pattern_end);</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                        </span>if (c2 == SQL_INVALID_UTF8_SYMBOL)</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                          </span>return SQL_INVALID_PATTERN;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>}</div><div>-<span class="Apple-tab-span" style="white-space:pre">                           </span>if (pattern == pattern_end ||</div><div>-<span class="Apple-tab-span" style="white-space:pre">                               </span>    (seen ^ invert) == 0) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                       </span>return SQL_NOMATCH;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                         </span>}</div><div>-<span class="Apple-tab-span" style="white-space:pre">                           </span>continue;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                   </span>}</div><div>+<span class="Apple-tab-span" style="white-space:pre">           </span>if (c == match_other) {</div><div>+<span class="Apple-tab-span" style="white-space:pre">                     </span>c = Utf8Read(pattern, pattern_end);</div><div>+<span class="Apple-tab-span" style="white-space:pre">                 </span>if (c == SQL_INVALID_UTF8_SYMBOL)</div><div>+<span class="Apple-tab-span" style="white-space:pre">                           </span>return SQL_INVALID_PATTERN;</div><div>+<span class="Apple-tab-span" style="white-space:pre">                 </span>if (c == SQL_END_OF_STRING)</div><div>+<span class="Apple-tab-span" style="white-space:pre">                         </span>return SQL_NOMATCH;</div><div>+<span class="Apple-tab-span" style="white-space:pre">                 </span>zEscaped = pattern;</div><div> <span class="Apple-tab-span" style="white-space:pre">            </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">              </span>c2 = Utf8Read(string, string_end);</div><div> <span class="Apple-tab-span" style="white-space:pre">             </span>if (c2 == SQL_INVALID_UTF8_SYMBOL)</div><div> <span class="Apple-tab-span" style="white-space:pre">                     </span>return SQL_NOMATCH;</div><div> <span class="Apple-tab-span" style="white-space:pre">            </span>if (c == c2)</div><div> <span class="Apple-tab-span" style="white-space:pre">                   </span>continue;</div><div>-<span class="Apple-tab-span" style="white-space:pre">           </span>if (noCase){</div><div>+<span class="Apple-tab-span" style="white-space:pre">                </span>if (is_like_ci) {</div><div> <span class="Apple-tab-span" style="white-space:pre">                      </span>/**</div><div> <span class="Apple-tab-span" style="white-space:pre">                    </span> * Small optimisation. Reduce number of</div><div> <span class="Apple-tab-span" style="white-space:pre">                        </span> * calls to u_tolower function. SQL</div><div>@@ -903,7 +801,7 @@ sql_utf8_pattern_compare(const char *pattern,</div><div> <span class="Apple-tab-span" style="white-space:pre">                    </span>    c == u_tolower(c2))</div><div> <span class="Apple-tab-span" style="white-space:pre">                              </span>continue;</div><div> <span class="Apple-tab-span" style="white-space:pre">              </span>}</div><div>-<span class="Apple-tab-span" style="white-space:pre">           </span>if (c == matchOne && pattern != zEscaped &&</div><div>+<span class="Apple-tab-span" style="white-space:pre">         </span>if (c == match_one && pattern != zEscaped &&</div><div> <span class="Apple-tab-span" style="white-space:pre">           </span>    c2 != SQL_END_OF_STRING)</div><div> <span class="Apple-tab-span" style="white-space:pre">                 </span>continue;</div><div> <span class="Apple-tab-span" style="white-space:pre">              </span>return SQL_NOMATCH;</div><div>@@ -911,55 +809,52 @@ sql_utf8_pattern_compare(const char *pattern,</div><div> <span class="Apple-tab-span" style="white-space:pre">  </span>return string == string_end ? SQL_MATCH : SQL_NOMATCH;</div><div> }</div><div> </div><div>-/*</div><div>- * The sqlite3_strglob() interface.  Return 0 on a match (like strcmp()) and</div><div>- * non-zero if there is no match.</div><div>+/**</div><div>+ * Compare two UTF-8 strings for equality using case sensitive</div><div>+ * sql_utf8_pattern_compare.</div><div>  */</div><div> int</div><div>-sqlite3_strglob(const char *zGlobPattern, const char *zString)</div><div>+sql_strlike_cs(const char *zPattern, const char *zStr, unsigned int esc)</div><div> {</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>return sql_utf8_pattern_compare(zGlobPattern, zString, &globInfo, '[');</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>return sql_utf8_pattern_compare(zPattern, zStr, case_sensitive_like, esc);</div><div> }</div><div> </div><div>-/*</div><div>- * The sqlite3_strlike() interface.  Return 0 on a match and non-zero for</div><div>- * a miss - like strcmp().</div><div>+/**</div><div>+ * Compare two UTF-8 strings for equality using case insensitive</div><div>+ * sql_utf8_pattern_compare.</div><div>  */</div><div> int</div><div>-sqlite3_strlike(const char *zPattern, const char *zStr, unsigned int esc)</div><div>+sql_strlike_ci(const char *zPattern, const char *zStr, unsigned int esc)</div><div> {</div><div>-<span class="Apple-tab-span" style="white-space:pre">       </span>return sql_utf8_pattern_compare(zPattern, zStr, &likeInfoNorm, esc);</div><div>+<span class="Apple-tab-span" style="white-space:pre">    </span>return sql_utf8_pattern_compare(zPattern, zStr, case_insensitive_like, esc);</div><div> }</div><div> </div><div>-/*</div><div>- * Count the number of times that the LIKE operator (or GLOB which is</div><div>- * just a variation of LIKE) gets called.  This is used for testing</div><div>- * only.</div><div>+/**</div><div>+ * Count the number of times that the LIKE operator gets called.</div><div>+ * This is used for testing only.</div><div>  */</div><div> #ifdef SQLITE_TEST</div><div> int sqlite3_like_count = 0;</div><div> #endif</div><div> </div><div>-/*</div><div>- * Implementation of the like() SQL function.  This function implements</div><div>- * the build-in LIKE operator.  The first argument to the function is the</div><div>- * pattern and the second argument is the string.  So, the SQL statements:</div><div>+/**</div><div>+ * Implementation of the like() SQL function. This function</div><div>+ * implements the built-in LIKE operator. The first argument to</div><div>+ * the function is the pattern and the second argument is the</div><div>+ * string. So, the SQL statements of the following type:</div><div>  *</div><div>  *       A LIKE B</div><div>  *</div><div>- * is implemented as like(B,A).</div><div>- *</div><div>- * This same function (with a different compareInfo structure) computes</div><div>- * the GLOB operator.</div><div>+ * are implemented as like(B,A).</div><div>  */</div><div> static void</div><div>-likeFunc(sqlite3_context * context, int argc, sqlite3_value ** argv)</div><div>+likeFunc(sqlite3_context *context, int argc, sqlite3_value **argv)</div><div> {</div><div> <span class="Apple-tab-span" style="white-space:pre">     </span>const char *zA, *zB;</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>u32 escape;</div><div> <span class="Apple-tab-span" style="white-space:pre">    </span>int nPat;</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>sqlite3 *db = sqlite3_context_db_handle(context);</div><div>-<span class="Apple-tab-span" style="white-space:pre">   </span>struct compareInfo *pInfo = sqlite3_user_data(context);</div><div>+<span class="Apple-tab-span" style="white-space:pre">     </span>int *is_like_ci = sqlite3_user_data(context);</div><div> </div><div> #ifdef SQLITE_LIKE_DOESNT_MATCH_BLOBS</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>if (sqlite3_value_type(argv[0]) == SQLITE_BLOB</div><div>@@ -974,8 +869,9 @@ likeFunc(sqlite3_context * context, int argc, sqlite3_value ** argv)</div><div> <span class="Apple-tab-span" style="white-space:pre">  </span>zB = (const char *) sqlite3_value_text(argv[0]);</div><div> <span class="Apple-tab-span" style="white-space:pre">       </span>zA = (const char *) sqlite3_value_text(argv[1]);</div><div> </div><div>-<span class="Apple-tab-span" style="white-space:pre">       </span>/* Limit the length of the LIKE or GLOB pattern to avoid</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span> * problems of deep recursion and N*N behavior in</div><div>+<span class="Apple-tab-span" style="white-space:pre">   </span>/**</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span> * Limit the length of the LIKE pattern to avoid problems</div><div>+<span class="Apple-tab-span" style="white-space:pre">   </span> * of deep recursion and N*N behavior in</div><div> <span class="Apple-tab-span" style="white-space:pre">       </span> * sql_utf8_pattern_compare().</div><div> <span class="Apple-tab-span" style="white-space:pre"> </span> */</div><div> <span class="Apple-tab-span" style="white-space:pre">    </span>nPat = sqlite3_value_bytes(argv[0]);</div><div>@@ -983,28 +879,29 @@ likeFunc(sqlite3_context * context, int argc, sqlite3_value ** argv)</div><div> <span class="Apple-tab-span" style="white-space:pre">  </span>testcase(nPat == db->aLimit[SQLITE_LIMIT_LIKE_PATTERN_LENGTH] + 1);</div><div> <span class="Apple-tab-span" style="white-space:pre"> </span>if (nPat > db->aLimit[SQLITE_LIMIT_LIKE_PATTERN_LENGTH]) {</div><div> <span class="Apple-tab-span" style="white-space:pre">               </span>sqlite3_result_error(context,</div><div>-<span class="Apple-tab-span" style="white-space:pre">                               </span>     "LIKE or GLOB pattern too complex", -1);</div><div>+<span class="Apple-tab-span" style="white-space:pre">                           </span>     "LIKE pattern is too complex", -1);</div><div> <span class="Apple-tab-span" style="white-space:pre">           </span>return;</div><div> <span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>/* Encoding did not change */</div><div> <span class="Apple-tab-span" style="white-space:pre">  </span>assert(zB == (const char *) sqlite3_value_text(argv[0]));</div><div> </div><div> <span class="Apple-tab-span" style="white-space:pre"> </span>if (argc == 3) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">            </span>/* The escape character string must consist of a single UTF-8 character.</div><div>-<span class="Apple-tab-span" style="white-space:pre">            </span> * Otherwise, return an error.</div><div>+<span class="Apple-tab-span" style="white-space:pre">              </span>/**</div><div>+<span class="Apple-tab-span" style="white-space:pre">         </span> * The escape character string must consist of a</div><div>+<span class="Apple-tab-span" style="white-space:pre">            </span> * single UTF-8 character. Otherwise, return an</div><div>+<span class="Apple-tab-span" style="white-space:pre">             </span> * error.</div><div> <span class="Apple-tab-span" style="white-space:pre">              </span> */</div><div> <span class="Apple-tab-span" style="white-space:pre">            </span>const unsigned char *zEsc = sqlite3_value_text(argv[2]);</div><div> <span class="Apple-tab-span" style="white-space:pre">               </span>if (zEsc == 0)</div><div> <span class="Apple-tab-span" style="white-space:pre">                 </span>return;</div><div> <span class="Apple-tab-span" style="white-space:pre">                </span>if (sqlite3Utf8CharLen((char *)zEsc, -1) != 1) {</div><div> <span class="Apple-tab-span" style="white-space:pre">                       </span>sqlite3_result_error(context,</div><div>-<span class="Apple-tab-span" style="white-space:pre">                                       </span>     "ESCAPE expression must be a single character",</div><div>+<span class="Apple-tab-span" style="white-space:pre">                                    </span>     "ESCAPE expression must be a"</div><div>+<span class="Apple-tab-span" style="white-space:pre">                                      </span>     " single character",</div><div> <span class="Apple-tab-span" style="white-space:pre">                                  </span>     -1);</div><div> <span class="Apple-tab-span" style="white-space:pre">                    </span>return;</div><div> <span class="Apple-tab-span" style="white-space:pre">                </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">              </span>escape = sqlite3Utf8Read(&zEsc);</div><div>-<span class="Apple-tab-span" style="white-space:pre">        </span>} else {</div><div>-<span class="Apple-tab-span" style="white-space:pre">            </span>escape = pInfo->matchSet;</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>if (!zA || !zB)</div><div> <span class="Apple-tab-span" style="white-space:pre">                </span>return;</div><div>@@ -1012,10 +909,10 @@ likeFunc(sqlite3_context * context, int argc, sqlite3_value ** argv)</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>sqlite3_like_count++;</div><div> #endif</div><div> <span class="Apple-tab-span" style="white-space:pre">       </span>int res;</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span>res = sql_utf8_pattern_compare(zB, zA, pInfo, escape);</div><div>+<span class="Apple-tab-span" style="white-space:pre">      </span>res = sql_utf8_pattern_compare(zB, zA, *is_like_ci, escape);</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>if (res == SQL_INVALID_PATTERN) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">           </span>sqlite3_result_error(context, "LIKE or GLOB pattern can only"</div><div>-<span class="Apple-tab-span" style="white-space:pre">                             </span>     " contain UTF-8 characters", -1);</div><div>+<span class="Apple-tab-span" style="white-space:pre">          </span>sqlite3_result_error(context, "LIKE pattern can only contain"</div><div>+<span class="Apple-tab-span" style="white-space:pre">                             </span>     " UTF-8 characters", -1);</div><div> <span class="Apple-tab-span" style="white-space:pre">             </span>return;</div><div> <span class="Apple-tab-span" style="white-space:pre">        </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>sqlite3_result_int(context, res == SQL_MATCH);</div><div>@@ -1811,64 +1708,54 @@ setLikeOptFlag(sqlite3 * db, const char *zName, u8 flagVal)</div><div> <span class="Apple-tab-span" style="white-space:pre">       </span>}</div><div> }</div><div> </div><div>-/*</div><div>- * Register the built-in LIKE and GLOB functions.  The caseSensitive</div><div>- * parameter determines whether or not the LIKE operator is case</div><div>- * sensitive.  GLOB is always case sensitive.</div><div>+/**</div><div>+ * Register the built-in LIKE function.</div><div>+ *</div><div>+ * @param db database structure.</div><div>+ * @param is_case_sensitive whether like should be case sensitive</div><div>+ * <span class="Apple-tab-span" style="white-space:pre">                   </span> or not.</div><div>+ *</div><div>+ * @retval none.</div><div>  */</div><div> void</div><div>-sqlite3RegisterLikeFunctions(sqlite3 * db, int caseSensitive)</div><div>+sqlite3RegisterLikeFunctions(sqlite3 *db, int is_case_sensitive)</div><div> {</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>struct compareInfo *pInfo;</div><div>-<span class="Apple-tab-span" style="white-space:pre">  </span>if (caseSensitive) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                </span>pInfo = (struct compareInfo *)&likeInfoAlt;</div><div>-<span class="Apple-tab-span" style="white-space:pre">     </span>} else {</div><div>-<span class="Apple-tab-span" style="white-space:pre">            </span>pInfo = (struct compareInfo *)&likeInfoNorm;</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span>}</div><div>-<span class="Apple-tab-span" style="white-space:pre">   </span>sqlite3CreateFunc(db, "LIKE", 2, 0, pInfo, likeFunc, 0, 0, 0);</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span>sqlite3CreateFunc(db, "LIKE", 3, 0, pInfo, likeFunc, 0, 0, 0);</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span>sqlite3CreateFunc(db, "GLOB", 2, 0, (struct compareInfo *)&globInfo, likeFunc, 0, 0, 0);</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>setLikeOptFlag(db, "GLOB", SQLITE_FUNC_LIKE | SQLITE_FUNC_CASE);</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span>int *is_like_ci;</div><div>+<span class="Apple-tab-span" style="white-space:pre">    </span>if (is_case_sensitive)</div><div>+<span class="Apple-tab-span" style="white-space:pre">              </span>is_like_ci = (int *)&case_sensitive_like;</div><div>+<span class="Apple-tab-span" style="white-space:pre">       </span>else</div><div>+<span class="Apple-tab-span" style="white-space:pre">                </span>is_like_ci = (int *)&case_insensitive_like;</div><div>+<span class="Apple-tab-span" style="white-space:pre">     </span>sqlite3CreateFunc(db, "LIKE", 2, 0, is_like_ci, likeFunc, 0, 0, 0);</div><div>+<span class="Apple-tab-span" style="white-space:pre">       </span>sqlite3CreateFunc(db, "LIKE", 3, 0, is_like_ci, likeFunc, 0, 0, 0);</div><div> <span class="Apple-tab-span" style="white-space:pre">  </span>setLikeOptFlag(db, "LIKE",</div><div>-<span class="Apple-tab-span" style="white-space:pre">                </span>       caseSensitive ? (SQLITE_FUNC_LIKE | SQLITE_FUNC_CASE) :</div><div>-<span class="Apple-tab-span" style="white-space:pre">               </span>       SQLITE_FUNC_LIKE);</div><div>+<span class="Apple-tab-span" style="white-space:pre">            </span>       is_case_sensitive ? (SQLITE_FUNC_LIKE |</div><div>+<span class="Apple-tab-span" style="white-space:pre">               </span>       SQLITE_FUNC_CASE) : SQLITE_FUNC_LIKE);</div><div> }</div><div> </div><div>-/*</div><div>- * pExpr points to an expression which implements a function.  If</div><div>- * it is appropriate to apply the LIKE optimization to that function</div><div>- * then set aWc[0] through aWc[2] to the wildcard characters and</div><div>- * return TRUE.  If the function is not a LIKE-style function then</div><div>- * return FALSE.</div><div>+/**</div><div>+ * Check if the function implements LIKE-style comparison & if it</div><div>+ * is appropriate to apply a LIKE query optimization.</div><div>+ *</div><div>+ * @param db database structure.</div><div>+ * @param pExpr pointer to a function-implementing expression.</div><div>+ * @param is_like_ci true if LIKE is case insensitive.</div><div>  *</div><div>- * *pIsNocase is set to true if uppercase and lowercase are equivalent for</div><div>- * the function (default for LIKE).  If the function makes the distinction</div><div>- * between uppercase and lowercase (as does GLOB) then *pIsNocase is set to</div><div>- * false.</div><div>+ * @retval 0 if it's appropriate to apply optimization.</div><div>+ *         1 if it's not.</div><div>  */</div><div> int</div><div>-sqlite3IsLikeFunction(sqlite3 * db, Expr * pExpr, int *pIsNocase, char *aWc)</div><div>+sql_is_like_func(sqlite3 *db, Expr *pExpr, int *is_like_ci)</div><div> {</div><div> <span class="Apple-tab-span" style="white-space:pre">     </span>FuncDef *pDef;</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>if (pExpr->op != TK_FUNCTION</div><div>-<span class="Apple-tab-span" style="white-space:pre">     </span>    || !pExpr->x.pList || pExpr->x.pList->nExpr != 2) {</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span>if (pExpr->op != TK_FUNCTION || !pExpr->x.pList ||</div><div>+<span class="Apple-tab-span" style="white-space:pre">    </span>    pExpr->x.pList->nExpr != 2)</div><div> <span class="Apple-tab-span" style="white-space:pre">                </span>return 0;</div><div>-<span class="Apple-tab-span" style="white-space:pre">   </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>assert(!ExprHasProperty(pExpr, EP_xIsSelect));</div><div> <span class="Apple-tab-span" style="white-space:pre"> </span>pDef = sqlite3FindFunction(db, pExpr->u.zToken, 2, 0);</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>if (NEVER(pDef == 0) || (pDef->funcFlags & SQLITE_FUNC_LIKE) == 0) {</div><div> <span class="Apple-tab-span" style="white-space:pre">            </span>return 0;</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>}</div><div>-</div><div>-<span class="Apple-tab-span" style="white-space:pre">   </span>/* The memcpy() statement assumes that the wildcard characters are</div><div>-<span class="Apple-tab-span" style="white-space:pre">  </span> * the first three statements in the compareInfo structure.  The</div><div>-<span class="Apple-tab-span" style="white-space:pre">       </span> * asserts() that follow verify that assumption</div><div>-<span class="Apple-tab-span" style="white-space:pre">     </span> */</div><div>-<span class="Apple-tab-span" style="white-space:pre"> </span>memcpy(aWc, pDef->pUserData, 3);</div><div>-<span class="Apple-tab-span" style="white-space:pre"> </span>assert((char *)&likeInfoAlt == (char *)&likeInfoAlt.matchAll);</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>assert(&((char *)&likeInfoAlt)[1] == (char *)&likeInfoAlt.matchOne);</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span>assert(&((char *)&likeInfoAlt)[2] == (char *)&likeInfoAlt.matchSet);</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span>*pIsNocase = (pDef->funcFlags & SQLITE_FUNC_CASE) == 0;</div><div>+<span class="Apple-tab-span" style="white-space:pre">      </span>*is_like_ci = (pDef->funcFlags & SQLITE_FUNC_CASE) == 0;</div><div> <span class="Apple-tab-span" style="white-space:pre">        </span>return 1;</div><div> }</div><div> </div><div>@@ -1962,16 +1849,14 @@ sqlite3RegisterBuiltinFunctions(void)</div><div> <span class="Apple-tab-span" style="white-space:pre">               </span>AGGREGATE(group_concat, 2, 0, 0, groupConcatStep,</div><div> <span class="Apple-tab-span" style="white-space:pre">                      </span>  groupConcatFinalize),</div><div> </div><div>-<span class="Apple-tab-span" style="white-space:pre">           </span>LIKEFUNC(glob, 2, &globInfo,</div><div>-<span class="Apple-tab-span" style="white-space:pre">                    </span> SQLITE_FUNC_LIKE | SQLITE_FUNC_CASE),</div><div> #ifdef SQLITE_CASE_SENSITIVE_LIKE</div><div>-<span class="Apple-tab-span" style="white-space:pre">                </span>LIKEFUNC(like, 2, &likeInfoAlt,</div><div>+<span class="Apple-tab-span" style="white-space:pre">         </span>LIKEFUNC(like, 2, &case_sensitive_like,</div><div> <span class="Apple-tab-span" style="white-space:pre">                    </span> SQLITE_FUNC_LIKE | SQLITE_FUNC_CASE),</div><div>-<span class="Apple-tab-span" style="white-space:pre">              </span>LIKEFUNC(like, 3, &likeInfoAlt,</div><div>+<span class="Apple-tab-span" style="white-space:pre">         </span>LIKEFUNC(like, 3, &case_sensitive_like,</div><div> <span class="Apple-tab-span" style="white-space:pre">                    </span> SQLITE_FUNC_LIKE | SQLITE_FUNC_CASE),</div><div> #else</div><div>-<span class="Apple-tab-span" style="white-space:pre">            </span>LIKEFUNC(like, 2, &likeInfoNorm, SQLITE_FUNC_LIKE),</div><div>-<span class="Apple-tab-span" style="white-space:pre">             </span>LIKEFUNC(like, 3, &likeInfoNorm, SQLITE_FUNC_LIKE),</div><div>+<span class="Apple-tab-span" style="white-space:pre">             </span>LIKEFUNC(like, 2, &case_insensitive_like, SQLITE_FUNC_LIKE),</div><div>+<span class="Apple-tab-span" style="white-space:pre">            </span>LIKEFUNC(like, 3, &case_insensitive_like, SQLITE_FUNC_LIKE),</div><div> #endif</div><div> #ifdef SQLITE_ENABLE_UNKNOWN_SQL_FUNCTION</div><div> <span class="Apple-tab-span" style="white-space:pre">              </span>FUNCTION(unknown, -1, 0, 0, unknownFunc),</div><div>diff --git a/src/box/sql/pragma.c b/src/box/sql/pragma.c</div><div>index 5fb29c75c..26a602b23 100644</div><div>--- a/src/box/sql/pragma.c</div><div>+++ b/src/box/sql/pragma.c</div><div>@@ -771,8 +771,10 @@ sqlite3Pragma(Parse * pParse, Token * pId,<span class="Apple-tab-span" style="white-space:pre">    </span>/* First part of [schema.]id field */</div><div> <span class="Apple-tab-span" style="white-space:pre">          </span>}</div><div> #endif</div><div> </div><div>-<span class="Apple-tab-span" style="white-space:pre">           </span>/* Reinstall the LIKE and GLOB functions.  The variant of LIKE *</div><div>-<span class="Apple-tab-span" style="white-space:pre">               </span> * used will be case sensitive or not depending on the RHS.</div><div>+<span class="Apple-tab-span" style="white-space:pre">         </span>/**</div><div>+<span class="Apple-tab-span" style="white-space:pre">         </span> * Reinstall the LIKE and functions. The variant</div><div>+<span class="Apple-tab-span" style="white-space:pre">            </span> * of LIKE * used will be case sensitive or not</div><div>+<span class="Apple-tab-span" style="white-space:pre">             </span> * depending on the RHS.</div><div> <span class="Apple-tab-span" style="white-space:pre">               </span> */</div><div> <span class="Apple-tab-span" style="white-space:pre">    </span>case PragTyp_CASE_SENSITIVE_LIKE:{</div><div> <span class="Apple-tab-span" style="white-space:pre">                     </span>if (zRight) {</div><div>diff --git a/src/box/sql/sqliteInt.h b/src/box/sql/sqliteInt.h</div><div>index e7a02dc1d..a805adf22 100644</div><div>--- a/src/box/sql/sqliteInt.h</div><div>+++ b/src/box/sql/sqliteInt.h</div><div>@@ -565,16 +565,15 @@ char *</div><div> sqlite3_vsnprintf(int, char *, const char *, va_list);</div><div> </div><div> int</div><div>-sqlite3_strlike(const char *zGlob, const char *zStr,</div><div>-<span class="Apple-tab-span" style="white-space:pre">           </span>unsigned int cEsc);</div><div>+sql_strlike_cs(const char *zLike, const char *zStr, unsigned int cEsc);</div><div>+</div><div>+int</div><div>+sql_strlike_ci(const char *zLike, const char *zStr, unsigned int cEsc);</div><div> </div><div> typedef void (*sqlite3_destructor_type) (void *);</div><div> #define SQLITE_STATIC      ((sqlite3_destructor_type)0)</div><div> #define SQLITE_TRANSIENT   ((sqlite3_destructor_type)-1)</div><div> </div><div>-int</div><div>-sqlite3_strglob(const char *zGlob, const char *zStr);</div><div>-</div><div> int</div><div> sqlite3_prepare(sqlite3 * db,<span class="Apple-tab-span" style="white-space:pre"> </span>/* Database handle */</div><div> <span class="Apple-tab-span" style="white-space:pre">          </span>const char *zSql,<span class="Apple-tab-span" style="white-space:pre">   </span>/* SQL statement, UTF-8 encoded */</div><div>@@ -701,9 +700,6 @@ struct on_conflict {</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>enum on_conflict_action optimized_action;</div><div> };</div><div> </div><div>-void *</div><div>-sqlite3_user_data(sqlite3_context *);</div><div>-</div><div> void</div><div> sqlite3_randomness(int N, void *P);</div><div> </div><div>@@ -2355,7 +2351,7 @@ struct Expr {</div><div> #define EP_Distinct  0x000010<span class="Apple-tab-span" style="white-space:pre">     </span>/* Aggregate function with DISTINCT keyword */</div><div> #define EP_VarSelect 0x000020<span class="Apple-tab-span" style="white-space:pre">    </span>/* pSelect is correlated, not constant */</div><div> #define EP_DblQuoted 0x000040<span class="Apple-tab-span" style="white-space:pre"> </span>/* token.z was originally in "..." */</div><div>-#define EP_InfixFunc 0x000080<span class="Apple-tab-span" style="white-space:pre">        </span>/* True for an infix function: LIKE, GLOB, etc */</div><div>+#define EP_InfixFunc 0x000080<span class="Apple-tab-span" style="white-space:pre">      </span>/* True for an infix function: LIKE, etc */</div><div> #define EP_Collate   0x000100<span class="Apple-tab-span" style="white-space:pre">  </span>/* Tree contains a TK_COLLATE operator */</div><div> #define EP_Generic   0x000200<span class="Apple-tab-span" style="white-space:pre">    </span>/* Ignore COLLATE or affinity on this tree */</div><div> #define EP_IntValue  0x000400<span class="Apple-tab-span" style="white-space:pre">        </span>/* Integer value contained in u.iValue */</div><div>@@ -4378,7 +4374,7 @@ index_column_count(const Index *);</div><div> bool</div><div> index_is_unique_not_null(const Index *);</div><div> void sqlite3RegisterLikeFunctions(sqlite3 *, int);</div><div>-int sqlite3IsLikeFunction(sqlite3 *, Expr *, int *, char *);</div><div>+int sql_is_like_func(sqlite3 *db, Expr *pExpr, int *is_case_insensitive);</div><div> void sqlite3SchemaClear(sqlite3 *);</div><div> Schema *sqlite3SchemaCreate(sqlite3 *);</div><div> int sqlite3CreateFunc(sqlite3 *, const char *, int, int, void *,</div><div>diff --git a/src/box/sql/sqliteLimit.h b/src/box/sql/sqliteLimit.h</div><div>index b88c9c6d3..e76353aff 100644</div><div>--- a/src/box/sql/sqliteLimit.h</div><div>+++ b/src/box/sql/sqliteLimit.h</div><div>@@ -164,8 +164,7 @@ enum {</div><div> #endif</div><div> </div><div> /*</div><div>- * Maximum length (in bytes) of the pattern in a LIKE or GLOB</div><div>- * operator.</div><div>+ * Maximum length (in bytes) of the pattern in a LIKE operator.</div><div>  */</div><div> #ifndef SQLITE_MAX_LIKE_PATTERN_LENGTH</div><div> #define SQLITE_MAX_LIKE_PATTERN_LENGTH 50000</div><div>diff --git a/src/box/sql/vdbe.c b/src/box/sql/vdbe.c</div><div>index 0c978142d..3f10f4d68 100644</div><div>--- a/src/box/sql/vdbe.c</div><div>+++ b/src/box/sql/vdbe.c</div><div>@@ -5521,7 +5521,7 @@ vdbe_return:</div><div> <span class="Apple-tab-span" style="white-space:pre"> </span>testcase( nVmStep>0);</div><div> <span class="Apple-tab-span" style="white-space:pre">       </span>p->aCounter[SQLITE_STMTSTATUS_VM_STEP] += (int)nVmStep;</div><div> <span class="Apple-tab-span" style="white-space:pre">     </span>assert(rc!=SQLITE_OK || nExtraDelete==0</div><div>-<span class="Apple-tab-span" style="white-space:pre">             </span>|| sqlite3_strlike("DELETE%",p->zSql,0)!=0</div><div>+<span class="Apple-tab-span" style="white-space:pre">             </span>|| sql_strlike_ci("DELETE%", p->zSql, 0) != 0</div><div> <span class="Apple-tab-span" style="white-space:pre">             </span>);</div><div> <span class="Apple-tab-span" style="white-space:pre">     </span>return rc;</div><div> </div><div>diff --git a/src/box/sql/wherecode.c b/src/box/sql/wherecode.c</div><div>index c35c25ac4..f864ea7fa 100644</div><div>--- a/src/box/sql/wherecode.c</div><div>+++ b/src/box/sql/wherecode.c</div><div>@@ -339,7 +339,7 @@ sqlite3WhereAddScanStatus(Vdbe * v,<span class="Apple-tab-span" style="white-space:pre">          </span>/* Vdbe to add scanstatus entry to */</div><div>  * automatically disabled.  In this way, terms get disabled if derived</div><div>  * virtual terms are tested first.  For example:</div><div>  *</div><div>- *      x GLOB 'abc*' AND x>='abc' AND x<'acd'</div><div>+ *      x LIKE 'abc%' AND x>='abc' AND x<'acd'</div><div>  *      \___________/     \______/     \_____/</div><div>  *         parent          child1       child2</div><div>  *</div><div>diff --git a/src/box/sql/whereexpr.c b/src/box/sql/whereexpr.c</div><div>index 612868695..2d9fb6453 100644</div><div>--- a/src/box/sql/whereexpr.c</div><div>+++ b/src/box/sql/whereexpr.c</div><div>@@ -218,38 +218,61 @@ operatorMask(int op)</div><div> <span class="Apple-tab-span" style="white-space:pre"> </span>return c;</div><div> }</div><div> </div><div>+/**</div><div>+ * Wildcard characters.</div><div>+ */</div><div>+#define match_one '_'</div><div>+#define match_all '%'</div><div>+</div><div> #ifndef SQLITE_OMIT_LIKE_OPTIMIZATION</div><div>-/*</div><div>- * Check to see if the given expression is a LIKE or GLOB operator that</div><div>- * can be optimized using inequality constraints.  Return TRUE if it is</div><div>- * so and false if not.</div><div>+/**</div><div>+ * Check to see if the given expression is a LIKE operator that</div><div>+ * can be optimized using inequality constraints.</div><div>  *</div><div>- * In order for the operator to be optimizible, the RHS must be a string</div><div>- * literal that does not begin with a wildcard.  The LHS must be a column</div><div>- * that may only be NULL, a string, or a BLOB, never a number. The</div><div>- * collating sequence for the column on the LHS must be appropriate for</div><div>- * the operator.</div><div>+ * In order for the operator to be optimizible, the RHS must be a</div><div>+ * string literal that does not begin with a wildcard. The LHS</div><div>+ * must be a column that may only be NULL, a string, or a BLOB,</div><div>+ * never a number. The collating sequence for the column on the</div><div>+ * LHS must be appropriate for the operator.</div><div>+ *</div><div>+ * @param pParse      Parsing and code generating context.</div><div>+ * @param pExpr       Test this expression.</div><div>+ * @param ppPrefix    Pointer to TK_STRING expression with</div><div>+ *<span class="Apple-tab-span" style="white-space:pre">              </span>      pattern prefix.</div><div>+ * @param pisComplete True if the only wildcard is '%' in the</div><div>+ * <span class="Apple-tab-span" style="white-space:pre">                </span>      last character.</div><div>+ * @param pnoCase     True if case insensitive.</div><div>+ *</div><div>+ * @retval True if the given expr is a LIKE operator & is</div><div>+ *<span class="Apple-tab-span" style="white-space:pre">      </span>   optimizable using inequality constraints.</div><div>+ * <span class="Apple-tab-span" style="white-space:pre">        </span>   False if not.</div><div>  */</div><div> static int</div><div>-isLikeOrGlob(Parse * pParse,<span class="Apple-tab-span" style="white-space:pre">    </span>/* Parsing and code generating context */</div><div>-<span class="Apple-tab-span" style="white-space:pre">   </span>     Expr * pExpr,<span class="Apple-tab-span" style="white-space:pre">        </span>/* Test this expression */</div><div>-<span class="Apple-tab-span" style="white-space:pre">  </span>     Expr ** ppPrefix,<span class="Apple-tab-span" style="white-space:pre">    </span>/* Pointer to TK_STRING expression with pattern prefix */</div><div>-<span class="Apple-tab-span" style="white-space:pre">   </span>     int *pisComplete,<span class="Apple-tab-span" style="white-space:pre">    </span>/* True if the only wildcard is % in the last character */</div><div>-<span class="Apple-tab-span" style="white-space:pre">  </span>     int *pnoCase<span class="Apple-tab-span" style="white-space:pre"> </span>/* True if uppercase is equivalent to lowercase */</div><div>-    )</div><div>+is_like(Parse *pParse,</div><div>+<span class="Apple-tab-span" style="white-space:pre">     </span>Expr *pExpr,</div><div>+<span class="Apple-tab-span" style="white-space:pre">        </span>Expr **ppPrefix,</div><div>+<span class="Apple-tab-span" style="white-space:pre">    </span>int *pisComplete,</div><div>+<span class="Apple-tab-span" style="white-space:pre">   </span>int *pnoCase)</div><div> {</div><div>-<span class="Apple-tab-span" style="white-space:pre"> </span>const char *z = 0;<span class="Apple-tab-span" style="white-space:pre">  </span>/* String on RHS of LIKE operator */</div><div>-<span class="Apple-tab-span" style="white-space:pre">        </span>Expr *pRight, *pLeft;<span class="Apple-tab-span" style="white-space:pre">       </span>/* Right and left size of LIKE operator */</div><div>-<span class="Apple-tab-span" style="white-space:pre">  </span>ExprList *pList;<span class="Apple-tab-span" style="white-space:pre">    </span>/* List of operands to the LIKE operator */</div><div>-<span class="Apple-tab-span" style="white-space:pre"> </span>int c;<span class="Apple-tab-span" style="white-space:pre">                      </span>/* One character in z[] */</div><div>-<span class="Apple-tab-span" style="white-space:pre">  </span>int cnt;<span class="Apple-tab-span" style="white-space:pre">            </span>/* Number of non-wildcard prefix characters */</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>char wc[3];<span class="Apple-tab-span" style="white-space:pre">         </span>/* Wildcard characters */</div><div>-<span class="Apple-tab-span" style="white-space:pre">   </span>sqlite3 *db = pParse->db;<span class="Apple-tab-span" style="white-space:pre">        </span>/* Database connection */</div><div>+<span class="Apple-tab-span" style="white-space:pre">   </span>/* String on RHS of LIKE operator */</div><div>+<span class="Apple-tab-span" style="white-space:pre">        </span>const char *z = 0;</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span>/* Right and left size of LIKE operator */</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span>Expr *pRight, *pLeft;</div><div>+<span class="Apple-tab-span" style="white-space:pre">       </span>/* List of operands to the LIKE operator */</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>ExprList *pList;</div><div>+<span class="Apple-tab-span" style="white-space:pre">    </span>/* One character in z[] */</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span>int c;</div><div>+<span class="Apple-tab-span" style="white-space:pre">      </span>/* Number of non-wildcard prefix characters */</div><div>+<span class="Apple-tab-span" style="white-space:pre">      </span>int cnt;</div><div>+<span class="Apple-tab-span" style="white-space:pre">    </span>/* Database connection */</div><div>+<span class="Apple-tab-span" style="white-space:pre">   </span>sqlite3 *db = pParse->db;</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>sqlite3_value *pVal = 0;</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span>int op;<span class="Apple-tab-span" style="white-space:pre">                     </span>/* Opcode of pRight */</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>int rc;<span class="Apple-tab-span" style="white-space:pre">                     </span>/* Result code to return */</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>/* Opcode of pRight */</div><div>+<span class="Apple-tab-span" style="white-space:pre">      </span>int op;</div><div>+<span class="Apple-tab-span" style="white-space:pre">     </span>/* Result code to return */</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>int rc;</div><div> </div><div>-<span class="Apple-tab-span" style="white-space:pre">        </span>if (!sqlite3IsLikeFunction(db, pExpr, pnoCase, wc)) {</div><div>+<span class="Apple-tab-span" style="white-space:pre">       </span>if (!sql_is_like_func(db, pExpr, pnoCase)) {</div><div> <span class="Apple-tab-span" style="white-space:pre">           </span>return 0;</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>pList = pExpr->x.pList;</div><div>@@ -257,8 +280,9 @@ isLikeOrGlob(Parse * pParse,<span class="Apple-tab-span" style="white-space:pre">   </span>/* Parsing and code generating context */</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>/* Value might be numeric */</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span>if (pLeft->op != TK_COLUMN ||</div><div> <span class="Apple-tab-span" style="white-space:pre">       </span>    sqlite3ExprAffinity(pLeft) != AFFINITY_TEXT) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">                </span>/* IMP: R-02065-49465 The left-hand side of the LIKE or GLOB operator must</div><div>-<span class="Apple-tab-span" style="white-space:pre">          </span> * be the name of an indexed column with TEXT affinity.</div><div>+<span class="Apple-tab-span" style="white-space:pre">             </span>/* IMP: R-02065-49465 The left-hand side of the</div><div>+<span class="Apple-tab-span" style="white-space:pre">             </span> * LIKE operator must be the name of an indexed</div><div>+<span class="Apple-tab-span" style="white-space:pre">             </span> * column with TEXT affinity.</div><div> <span class="Apple-tab-span" style="white-space:pre">          </span> */</div><div> <span class="Apple-tab-span" style="white-space:pre">            </span>return 0;</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>}</div><div>@@ -281,13 +305,11 @@ isLikeOrGlob(Parse * pParse,<span class="Apple-tab-span" style="white-space:pre">  </span>/* Parsing and code generating context */</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>if (z) {</div><div> <span class="Apple-tab-span" style="white-space:pre">               </span>cnt = 0;</div><div>-<span class="Apple-tab-span" style="white-space:pre">            </span>while ((c = z[cnt]) != 0 && c != wc[0] && c != wc[1]</div><div>-<span class="Apple-tab-span" style="white-space:pre">                </span>       && c != wc[2]) {</div><div>+<span class="Apple-tab-span" style="white-space:pre">              </span>while ((c = z[cnt]) != 0 && c != match_one && c != match_all)</div><div> <span class="Apple-tab-span" style="white-space:pre">                  </span>cnt++;</div><div>-<span class="Apple-tab-span" style="white-space:pre">              </span>}</div><div> <span class="Apple-tab-span" style="white-space:pre">              </span>if (cnt != 0 && 255 != (u8) z[cnt - 1]) {</div><div> <span class="Apple-tab-span" style="white-space:pre">                      </span>Expr *pPrefix;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                      </span>*pisComplete = c == wc[0] && z[cnt + 1] == 0;</div><div>+<span class="Apple-tab-span" style="white-space:pre">                       </span>*pisComplete = c == match_all && z[cnt + 1] == 0;</div><div> <span class="Apple-tab-span" style="white-space:pre">                      </span>pPrefix = sqlite3Expr(db, TK_STRING, z);</div><div> <span class="Apple-tab-span" style="white-space:pre">                       </span>if (pPrefix)</div><div> <span class="Apple-tab-span" style="white-space:pre">                           </span>pPrefix->u.zToken[cnt] = 0;</div><div>@@ -943,19 +965,32 @@ exprAnalyze(SrcList * pSrc,<span class="Apple-tab-span" style="white-space:pre">      </span>/* the FROM clause */</div><div> <span class="Apple-tab-span" style="white-space:pre">  </span>    int idxTerm<span class="Apple-tab-span" style="white-space:pre">           </span>/* Index of the term to be analyzed */</div><div>     )</div><div> {</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span>WhereInfo *pWInfo = pWC->pWInfo;<span class="Apple-tab-span" style="white-space:pre"> </span>/* WHERE clause processing context */</div><div>-<span class="Apple-tab-span" style="white-space:pre">       </span>WhereTerm *pTerm;<span class="Apple-tab-span" style="white-space:pre">   </span>/* The term to be analyzed */</div><div>-<span class="Apple-tab-span" style="white-space:pre">       </span>WhereMaskSet *pMaskSet;<span class="Apple-tab-span" style="white-space:pre">     </span>/* Set of table index masks */</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>Expr *pExpr;<span class="Apple-tab-span" style="white-space:pre">                </span>/* The expression to be analyzed */</div><div>-<span class="Apple-tab-span" style="white-space:pre"> </span>Bitmask prereqLeft;<span class="Apple-tab-span" style="white-space:pre"> </span>/* Prerequesites of the pExpr->pLeft */</div><div>-<span class="Apple-tab-span" style="white-space:pre">  </span>Bitmask prereqAll;<span class="Apple-tab-span" style="white-space:pre">  </span>/* Prerequesites of pExpr */</div><div>-<span class="Apple-tab-span" style="white-space:pre">        </span>Bitmask extraRight = 0;<span class="Apple-tab-span" style="white-space:pre">     </span>/* Extra dependencies on LEFT JOIN */</div><div>-<span class="Apple-tab-span" style="white-space:pre">       </span>Expr *pStr1 = 0;<span class="Apple-tab-span" style="white-space:pre">    </span>/* RHS of LIKE/GLOB operator */</div><div>-<span class="Apple-tab-span" style="white-space:pre">     </span>int isComplete = 0;<span class="Apple-tab-span" style="white-space:pre"> </span>/* RHS of LIKE/GLOB ends with wildcard */</div><div>-<span class="Apple-tab-span" style="white-space:pre">   </span>int noCase = 0;<span class="Apple-tab-span" style="white-space:pre">             </span>/* uppercase equivalent to lowercase */</div><div>-<span class="Apple-tab-span" style="white-space:pre">     </span>int op;<span class="Apple-tab-span" style="white-space:pre">                     </span>/* Top-level operator.  pExpr->op */</div><div>-<span class="Apple-tab-span" style="white-space:pre">        </span>Parse *pParse = pWInfo->pParse;<span class="Apple-tab-span" style="white-space:pre">  </span>/* Parsing context */</div><div>-<span class="Apple-tab-span" style="white-space:pre">       </span>sqlite3 *db = pParse->db;<span class="Apple-tab-span" style="white-space:pre">        </span>/* Database connection */</div><div>+<span class="Apple-tab-span" style="white-space:pre">   </span>/* WHERE clause processing context */</div><div>+<span class="Apple-tab-span" style="white-space:pre">       </span>WhereInfo *pWInfo = pWC->pWInfo;</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>/* The term to be analyzed */</div><div>+<span class="Apple-tab-span" style="white-space:pre">       </span>WhereTerm *pTerm;</div><div>+<span class="Apple-tab-span" style="white-space:pre">   </span>/* Set of table index masks */</div><div>+<span class="Apple-tab-span" style="white-space:pre">      </span>WhereMaskSet *pMaskSet;</div><div>+<span class="Apple-tab-span" style="white-space:pre">     </span>/* The expression to be analyzed */</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>Expr *pExpr;</div><div>+<span class="Apple-tab-span" style="white-space:pre">        </span>/* Prerequesites of the pExpr->pLeft */</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span>Bitmask prereqLeft;</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>/* Prerequesites of pExpr */</div><div>+<span class="Apple-tab-span" style="white-space:pre">        </span>Bitmask prereqAll;</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span>/* Extra dependencies on LEFT JOIN */</div><div>+<span class="Apple-tab-span" style="white-space:pre">       </span>Bitmask extraRight = 0;</div><div>+<span class="Apple-tab-span" style="white-space:pre">     </span>/* RHS of LIKE operator */</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span>Expr *pStr1 = 0;</div><div>+<span class="Apple-tab-span" style="white-space:pre">    </span>/* RHS of LIKE ends with wildcard */</div><div>+<span class="Apple-tab-span" style="white-space:pre">        </span>int isComplete = 0;</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>/* uppercase equivalent to lowercase */</div><div>+<span class="Apple-tab-span" style="white-space:pre">     </span>int noCase = 0;</div><div>+<span class="Apple-tab-span" style="white-space:pre">     </span>/* Top-level operator. pExpr->op */</div><div>+<span class="Apple-tab-span" style="white-space:pre">      </span>int op;</div><div>+<span class="Apple-tab-span" style="white-space:pre">     </span>/* Parsing context */</div><div>+<span class="Apple-tab-span" style="white-space:pre">       </span>Parse *pParse = pWInfo->pParse;</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span>/* Database connection */</div><div>+<span class="Apple-tab-span" style="white-space:pre">   </span>sqlite3 *db = pParse->db;</div><div> </div><div> <span class="Apple-tab-span" style="white-space:pre">      </span>if (db->mallocFailed) {</div><div> <span class="Apple-tab-span" style="white-space:pre">             </span>return;</div><div>@@ -1111,37 +1146,44 @@ exprAnalyze(SrcList * pSrc,<span class="Apple-tab-span" style="white-space:pre">   </span>/* the FROM clause */</div><div> #endif<span class="Apple-tab-span" style="white-space:pre">                            </span>/* SQLITE_OMIT_OR_OPTIMIZATION */</div><div> </div><div> #ifndef SQLITE_OMIT_LIKE_OPTIMIZATION</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span>/* Add constraints to reduce the search space on a LIKE or GLOB</div><div>+<span class="Apple-tab-span" style="white-space:pre">     </span>/**</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span> * Add constraints to reduce the search space on a LIKE</div><div> <span class="Apple-tab-span" style="white-space:pre">        </span> * operator.</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span> *</div><div>-<span class="Apple-tab-span" style="white-space:pre">  </span> * A like pattern of the form "x LIKE 'aBc%'" is changed into constraints</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span> * A like pattern of the form "x LIKE 'aBc%'" is changed</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span> * into constraints:</div><div> <span class="Apple-tab-span" style="white-space:pre">   </span> *</div><div> <span class="Apple-tab-span" style="white-space:pre">     </span> *          x>='ABC' AND x<'abd' AND x LIKE 'aBc%'</div><div> <span class="Apple-tab-span" style="white-space:pre">      </span> *</div><div>-<span class="Apple-tab-span" style="white-space:pre">  </span> * The last character of the prefix "abc" is incremented to form the</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span> * termination condition "abd".  If case is not significant (the default</div><div>-<span class="Apple-tab-span" style="white-space:pre">     </span> * for LIKE) then the lower-bound is made all uppercase and the upper-</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span> * bound is made all lowercase so that the bounds also work when comparing</div><div>-<span class="Apple-tab-span" style="white-space:pre">  </span> * BLOBs.</div><div>+<span class="Apple-tab-span" style="white-space:pre">   </span> * The last character of the prefix "abc" is incremented</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span> * to form the termination condition "abd". If case is</div><div>+<span class="Apple-tab-span" style="white-space:pre">    </span> * not significant (the default for LIKE) then the</div><div>+<span class="Apple-tab-span" style="white-space:pre">  </span> * lower-bound is made all uppercase and the upper-bound</div><div>+<span class="Apple-tab-span" style="white-space:pre">    </span> * is made all lowercase so that the bounds also work</div><div>+<span class="Apple-tab-span" style="white-space:pre">       </span> * when comparing BLOBs.</div><div> <span class="Apple-tab-span" style="white-space:pre">       </span> */</div><div> <span class="Apple-tab-span" style="white-space:pre">    </span>if (pWC->op == TK_AND</div><div>-<span class="Apple-tab-span" style="white-space:pre">    </span>    && isLikeOrGlob(pParse, pExpr, &pStr1, &isComplete, &noCase)</div><div>-<span class="Apple-tab-span" style="white-space:pre">      </span>    ) {</div><div>-<span class="Apple-tab-span" style="white-space:pre">           </span>Expr *pLeft;<span class="Apple-tab-span" style="white-space:pre">        </span>/* LHS of LIKE/GLOB operator */</div><div>-<span class="Apple-tab-span" style="white-space:pre">             </span>Expr *pStr2;<span class="Apple-tab-span" style="white-space:pre">        </span>/* Copy of pStr1 - RHS of LIKE/GLOB operator */</div><div>+<span class="Apple-tab-span" style="white-space:pre">     </span>    && is_like(pParse, pExpr, &pStr1, &isComplete, &noCase)) {</div><div>+<span class="Apple-tab-span" style="white-space:pre">                </span>/* LHS of LIKE operator */</div><div>+<span class="Apple-tab-span" style="white-space:pre">          </span>Expr *pLeft;</div><div>+<span class="Apple-tab-span" style="white-space:pre">                </span>/* Copy of pStr1 - RHS of LIKE operator */</div><div>+<span class="Apple-tab-span" style="white-space:pre">          </span>Expr *pStr2;</div><div> <span class="Apple-tab-span" style="white-space:pre">           </span>Expr *pNewExpr1;</div><div> <span class="Apple-tab-span" style="white-space:pre">               </span>Expr *pNewExpr2;</div><div> <span class="Apple-tab-span" style="white-space:pre">               </span>int idxNew1;</div><div> <span class="Apple-tab-span" style="white-space:pre">           </span>int idxNew2;</div><div>-<span class="Apple-tab-span" style="white-space:pre">                </span>const char *zCollSeqName;<span class="Apple-tab-span" style="white-space:pre">   </span>/* Name of collating sequence */</div><div>+<span class="Apple-tab-span" style="white-space:pre">            </span>/* Name of collating sequence */</div><div>+<span class="Apple-tab-span" style="white-space:pre">            </span>const char *zCollSeqName;</div><div> <span class="Apple-tab-span" style="white-space:pre">              </span>const u16 wtFlags = TERM_LIKEOPT | TERM_VIRTUAL | TERM_DYNAMIC;</div><div> </div><div> <span class="Apple-tab-span" style="white-space:pre">           </span>pLeft = pExpr->x.pList->a[1].pExpr;</div><div> <span class="Apple-tab-span" style="white-space:pre">              </span>pStr2 = sqlite3ExprDup(db, pStr1, 0);</div><div> </div><div>-<span class="Apple-tab-span" style="white-space:pre">          </span>/* Convert the lower bound to upper-case and the upper bound to</div><div>-<span class="Apple-tab-span" style="white-space:pre">             </span> * lower-case (upper-case is less than lower-case in ASCII) so that</div><div>-<span class="Apple-tab-span" style="white-space:pre">         </span> * the range constraints also work for BLOBs</div><div>+<span class="Apple-tab-span" style="white-space:pre">                </span>/**</div><div>+<span class="Apple-tab-span" style="white-space:pre">         </span> * Convert the lower bound to upper-case and the</div><div>+<span class="Apple-tab-span" style="white-space:pre">            </span> * upper bound to lower-case (upper-case is less</div><div>+<span class="Apple-tab-span" style="white-space:pre">            </span> * than lower-case in ASCII) so that the range</div><div>+<span class="Apple-tab-span" style="white-space:pre">              </span> * constraints also work for BLOBs</div><div> <span class="Apple-tab-span" style="white-space:pre">             </span> */</div><div> <span class="Apple-tab-span" style="white-space:pre">            </span>if (noCase && !pParse->db->mallocFailed) {</div><div> <span class="Apple-tab-span" style="white-space:pre">                       </span>int i;</div><div>diff --git a/test/sql-tap/alter.test.lua b/test/sql-tap/alter.test.lua</div><div>index cfe280121..98338c493 100755</div><div>--- a/test/sql-tap/alter.test.lua</div><div>+++ b/test/sql-tap/alter.test.lua</div><div>@@ -232,7 +232,7 @@ test:do_execsql_test(</div><div>     [[</div><div>         CREATE TABLE xyz(x PRIMARY KEY);</div><div>         ALTER TABLE xyz RENAME TO "xyz1234abc";</div><div>-        SELECT "name" FROM "_space" WHERE "name" GLOB 'xyz*';</div><div>+        SELECT "name" FROM "_space" WHERE "name" = 'xyz1234abc';</div><div>     ]], {</div><div>         -- <alter-5.1></div><div>         "xyz1234abc"</div><div>@@ -243,7 +243,7 @@ test:do_execsql_test(</div><div>     "alter-5.2",</div><div>     [[</div><div>         ALTER TABLE "xyz1234abc" RENAME TO xyzabc;</div><div>-        SELECT "name" FROM "_space" WHERE "name" GLOB 'XYZ*';</div><div>+        SELECT "name" FROM "_space" WHERE "name" = 'XYZABC';</div><div>     ]], {</div><div>         -- <alter-5.2></div><div>         "XYZABC"</div><div>diff --git a/test/sql-tap/analyze9.test.lua b/test/sql-tap/analyze9.test.lua</div><div>index 3b3d52f67..ec3e545d8 100755</div><div>--- a/test/sql-tap/analyze9.test.lua</div><div>+++ b/test/sql-tap/analyze9.test.lua</div><div>@@ -206,10 +206,10 @@ test:do_execsql_test(</div><div>         INSERT INTO t1 VALUES(81, 1, 'one-i');</div><div>         INSERT INTO t1 VALUES(91, 1, 'one-j');</div><div>         INSERT INTO t1 SELECT a+1,2,'two' || substr(c,4) FROM t1;</div><div>-        INSERT INTO t1 SELECT a+2,3,'three'||substr(c,4) FROM t1 WHERE c GLOB 'one-*';</div><div>-        INSERT INTO t1 SELECT a+3,4,'four'||substr(c,4) FROM t1 WHERE c GLOB 'one-*';</div><div>-        INSERT INTO t1 SELECT a+4,5,'five'||substr(c,4) FROM t1 WHERE c GLOB 'one-*';</div><div>-        INSERT INTO t1 SELECT a+5,6,'six'||substr(c,4) FROM t1 WHERE c GLOB 'one-*';<span class="Apple-tab-span" style="white-space:pre">     </span></div><div>+        INSERT INTO t1 SELECT a+2,3,'three'||substr(c,4) FROM t1 WHERE c LIKE 'one-%';</div><div>+        INSERT INTO t1 SELECT a+3,4,'four'||substr(c,4) FROM t1 WHERE c LIKE 'one-%';</div><div>+        INSERT INTO t1 SELECT a+4,5,'five'||substr(c,4) FROM t1 WHERE c LIKE 'one-%';</div><div>+        INSERT INTO t1 SELECT a+5,6,'six'||substr(c,4) FROM t1 WHERE c LIKE 'one-%';<span class="Apple-tab-span" style="white-space:pre">        </span></div><div>         CREATE INDEX t1b ON t1(b);</div><div>         ANALYZE;</div><div>         SELECT c FROM t1 WHERE b=3 AND a BETWEEN 30 AND 60;</div><div>diff --git a/test/sql-tap/e_expr.test.lua b/test/sql-tap/e_expr.test.lua</div><div>index 9780d2cf9..0d69e8535 100755</div><div>--- a/test/sql-tap/e_expr.test.lua</div><div>+++ b/test/sql-tap/e_expr.test.lua</div><div>@@ -1,6 +1,6 @@</div><div> #!/usr/bin/env tarantool</div><div> test = require("sqltester")</div><div>-test:plan(10665)</div><div>+test:plan(10647)</div><div> </div><div> --!./tcltestrunner.lua</div><div> -- 2010 July 16</div><div>@@ -77,10 +77,7 @@ local operations = {</div><div>     {"<>", "ne1"},</div><div>     {"!=", "ne2"},</div><div>     {"IS", "is"},</div><div>--- NOTE: This test needs refactoring after deletion of GLOB &</div><div>---<span class="Apple-tab-span" style="white-space:pre">     </span> type restrictions for LIKE. (See #3572)</div><div> --    {"LIKE", "like"},</div><div>---    {"GLOB", "glob"},</div><div>     {"AND", "and"},</div><div>     {"OR", "or"},</div><div>     {"MATCH", "match"},</div><div>@@ -98,12 +95,10 @@ operations = {</div><div>     {"+", "-"},</div><div>     {"<<", ">>", "&", "|"},</div><div>     {"<", "<=", ">", ">="},</div><div>--- NOTE: This test needs refactoring after deletion of GLOB &</div><div>---<span class="Apple-tab-span" style="white-space:pre">   </span> type restrictions for LIKE. (See #3572)</div><div> -- Another NOTE: MATCH & REGEXP aren't supported in Tarantool &</div><div>--- <span class="Apple-tab-span" style="white-space:pre">             </span> are waiting for their hour, don't confuse them</div><div>---<span class="Apple-tab-span" style="white-space:pre">           </span> being commented with ticket above.</div><div>-    {"=", "==", "!=", "<>"}, --"LIKE", "GLOB"}, --"MATCH", "REGEXP"},</div><div>+--               are waiting for their hour, don't confuse them</div><div>+--               being commented with commenting of "LIKE".</div><div>+    {"=", "==", "!=", "<>"}, --"LIKE"}, --"MATCH", "REGEXP"},</div><div>     {"AND"},</div><div>     {"OR"},</div><div> }</div><div>@@ -128,7 +123,7 @@ end</div><div> -- EVIDENCE-OF: R-15514-65163 SQLite understands the following binary</div><div> -- operators, in order from highest to lowest precedence: || * / % + -</div><div> -- << >> & | < <= > >= = == != <> IS IS</div><div>--- NOT IN LIKE GLOB MATCH REGEXP AND OR</div><div>+-- NOT IN LIKE MATCH REGEXP AND OR</div><div> --</div><div> -- EVIDENCE-OF: R-38759-38789 Operators IS and IS NOT have the same</div><div> -- precedence as =.</div><div>@@ -482,7 +477,6 @@ for _, op in ipairs(oplist) do</div><div>         end</div><div>     end</div><div> end</div><div>-</div><div> ---------------------------------------------------------------------------</div><div> -- Test the IS and IS NOT operators.</div><div> --</div><div>@@ -1303,11 +1297,11 @@ end</div><div> test:execsql [[</div><div>     CREATE TABLE tblname(cname PRIMARY KEY);</div><div> ]]</div><div>+</div><div> local function glob(args)</div><div>     return 1</div><div> end</div><div> </div><div>-box.internal.sql_create_function("GLOB", glob)</div><div> box.internal.sql_create_function("MATCH", glob)</div><div> box.internal.sql_create_function("REGEXP", glob)</div><div> local test_cases12 ={</div><div>@@ -1369,47 +1363,43 @@ local test_cases12 ={</div><div> </div><div>     {47, "EXPR1 LIKE EXPR2"},</div><div>     {48, "EXPR1 LIKE EXPR2 ESCAPE EXPR"},</div><div>-    {49, "EXPR1 GLOB EXPR2"},</div><div>-    {50, "EXPR1 GLOB EXPR2 ESCAPE EXPR"},</div><div>-    {51, "EXPR1 REGEXP EXPR2"},</div><div>-    {52, "EXPR1 REGEXP EXPR2 ESCAPE EXPR"},</div><div>-    {53, "EXPR1 MATCH EXPR2"},</div><div>-    {54, "EXPR1 MATCH EXPR2 ESCAPE EXPR"},</div><div>-    {55, "EXPR1 NOT LIKE EXPR2"},</div><div>-    {56, "EXPR1 NOT LIKE EXPR2 ESCAPE EXPR"},</div><div>-    {57, "EXPR1 NOT GLOB EXPR2"},</div><div>-    {58, "EXPR1 NOT GLOB EXPR2 ESCAPE EXPR"},</div><div>-    {59, "EXPR1 NOT REGEXP EXPR2"},</div><div>-    {60, "EXPR1 NOT REGEXP EXPR2 ESCAPE EXPR"},</div><div>-    {61, "EXPR1 NOT MATCH EXPR2"},</div><div>-    {62, "EXPR1 NOT MATCH EXPR2 ESCAPE EXPR"},</div><div>-</div><div>-    {63, "EXPR IS NULL"},</div><div>-    {64, "EXPR IS NOT NULL"},</div><div>-</div><div>-    {65, "EXPR NOT BETWEEN EXPR1 AND EXPR2"},</div><div>-    {66, "EXPR BETWEEN EXPR1 AND EXPR2"},</div><div>-</div><div>-    {67, "EXPR NOT IN (SELECT cname FROM tblname)"},</div><div>-    {68, "EXPR NOT IN (1)"},</div><div>-    {69, "EXPR NOT IN (1, 2, 3)"},</div><div>-    {70, "EXPR NOT IN tblname"},</div><div>-    {71, "EXPR IN (SELECT cname FROM tblname)"},</div><div>-    {72, "EXPR IN (1)"},</div><div>-    {73, "EXPR IN (1, 2, 3)"},</div><div>-    {74, "EXPR IN tblname"},</div><div>-</div><div>-    {75, "EXISTS (SELECT cname FROM tblname)"},</div><div>-    {76, "NOT EXISTS (SELECT cname FROM tblname)"},</div><div>-</div><div>-    {77, "CASE EXPR WHEN EXPR1 THEN EXPR2 ELSE EXPR END"},</div><div>-    {78, "CASE EXPR WHEN EXPR1 THEN EXPR2 END"},</div><div>-    {79, "CASE EXPR WHEN EXPR1 THEN EXPR2 WHEN EXPR THEN EXPR1 ELSE EXPR2 END"},</div><div>-    {80, "CASE EXPR WHEN EXPR1 THEN EXPR2 WHEN EXPR THEN EXPR1 END"},</div><div>-    {81, "CASE WHEN EXPR1 THEN EXPR2 ELSE EXPR END"},</div><div>-    {82, "CASE WHEN EXPR1 THEN EXPR2 END"},</div><div>-    {83, "CASE WHEN EXPR1 THEN EXPR2 WHEN EXPR THEN EXPR1 ELSE EXPR2 END"},</div><div>-    {84, "CASE WHEN EXPR1 THEN EXPR2 WHEN EXPR THEN EXPR1 END"},</div><div>+    {49, "EXPR1 REGEXP EXPR2"},</div><div>+    {50, "EXPR1 REGEXP EXPR2 ESCAPE EXPR"},</div><div>+    {51, "EXPR1 MATCH EXPR2"},</div><div>+    {52, "EXPR1 MATCH EXPR2 ESCAPE EXPR"},</div><div>+    {53, "EXPR1 NOT LIKE EXPR2"},</div><div>+    {54, "EXPR1 NOT LIKE EXPR2 ESCAPE EXPR"},</div><div>+    {55, "EXPR1 NOT REGEXP EXPR2"},</div><div>+    {56, "EXPR1 NOT REGEXP EXPR2 ESCAPE EXPR"},</div><div>+    {57, "EXPR1 NOT MATCH EXPR2"},</div><div>+    {58, "EXPR1 NOT MATCH EXPR2 ESCAPE EXPR"},</div><div>+</div><div>+    {59, "EXPR IS NULL"},</div><div>+    {60, "EXPR IS NOT NULL"},</div><div>+</div><div>+    {61, "EXPR NOT BETWEEN EXPR1 AND EXPR2"},</div><div>+    {62, "EXPR BETWEEN EXPR1 AND EXPR2"},</div><div>+</div><div>+    {63, "EXPR NOT IN (SELECT cname FROM tblname)"},</div><div>+    {64, "EXPR NOT IN (1)"},</div><div>+    {65, "EXPR NOT IN (1, 2, 3)"},</div><div>+    {66, "EXPR NOT IN tblname"},</div><div>+    {67, "EXPR IN (SELECT cname FROM tblname)"},</div><div>+    {68, "EXPR IN (1)"},</div><div>+    {69, "EXPR IN (1, 2, 3)"},</div><div>+    {70, "EXPR IN tblname"},</div><div>+</div><div>+    {71, "EXISTS (SELECT cname FROM tblname)"},</div><div>+    {72, "NOT EXISTS (SELECT cname FROM tblname)"},</div><div>+</div><div>+    {73, "CASE EXPR WHEN EXPR1 THEN EXPR2 ELSE EXPR END"},</div><div>+    {74, "CASE EXPR WHEN EXPR1 THEN EXPR2 END"},</div><div>+    {75, "CASE EXPR WHEN EXPR1 THEN EXPR2 WHEN EXPR THEN EXPR1 ELSE EXPR2 END"},</div><div>+    {76, "CASE EXPR WHEN EXPR1 THEN EXPR2 WHEN EXPR THEN EXPR1 END"},</div><div>+    {77, "CASE WHEN EXPR1 THEN EXPR2 ELSE EXPR END"},</div><div>+    {78, "CASE WHEN EXPR1 THEN EXPR2 END"},</div><div>+    {79, "CASE WHEN EXPR1 THEN EXPR2 WHEN EXPR THEN EXPR1 ELSE EXPR2 END"},</div><div>+    {80, "CASE WHEN EXPR1 THEN EXPR2 WHEN EXPR THEN EXPR1 END"},</div><div> }</div><div> </div><div> for _, val in ipairs(test_cases12) do</div><div>@@ -1802,7 +1792,7 @@ test:do_execsql_test(</div><div>     })</div><div> </div><div> ---------------------------------------------------------------------------</div><div>--- Test the statements related to the LIKE and GLOB operators.</div><div>+-- Test the statements related to the LIKE operator.</div><div> --</div><div> -- EVIDENCE-OF: R-16584-60189 The LIKE operator does a pattern matching</div><div> -- comparison.</div><div>@@ -2274,102 +2264,38 @@ test:do_execsql_test(</div><div>         -- </e_expr-16.1.7></div><div>     })</div><div> </div><div>--- EVIDENCE-OF: R-52087-12043 The GLOB operator is similar to LIKE but</div><div>--- uses the Unix file globbing syntax for its wildcards.</div><div>---</div><div>--- EVIDENCE-OF: R-09813-17279 Also, GLOB is case sensitive, unlike LIKE.</div><div>+-- EVIDENCE-OF: R-39616-20555 LIKE may be preceded by the</div><div>+-- NOT keyword to invert the sense of the test.</div><div> --</div><div> test:do_execsql_test(</div><div>-    "e_expr-17.1.1",</div><div>-    [[</div><div>-        SELECT 'abcxyz' GLOB 'abc%'</div><div>-    ]], {</div><div>-        -- <e_expr-17.1.1></div><div>-        0</div><div>-        -- </e_expr-17.1.1></div><div>-    })</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "e_expr-17.1.2",</div><div>-    [[</div><div>-        SELECT 'abcxyz' GLOB 'abc*'</div><div>-    ]], {</div><div>-        -- <e_expr-17.1.2></div><div>-        1</div><div>-        -- </e_expr-17.1.2></div><div>-    })</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "e_expr-17.1.3",</div><div>-    [[</div><div>-        SELECT 'abcxyz' GLOB 'abc___'</div><div>-    ]], {</div><div>-        -- <e_expr-17.1.3></div><div>-        0</div><div>-        -- </e_expr-17.1.3></div><div>-    })</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "e_expr-17.1.4",</div><div>-    [[</div><div>-        SELECT 'abcxyz' GLOB 'abc???'</div><div>-    ]], {</div><div>-        -- <e_expr-17.1.4></div><div>-        1</div><div>-        -- </e_expr-17.1.4></div><div>-    })</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "e_expr-17.1.5",</div><div>+    "e_expr-17.2.0",</div><div>     [[</div><div>-        SELECT 'abcxyz' GLOB 'abc*'</div><div>+        PRAGMA case_sensitive_like = 1;</div><div>+        SELECT 'abcxyz' NOT LIKE 'ABC%';</div><div>     ]], {</div><div>-        -- <e_expr-17.1.5></div><div>+        -- <e_expr-17.2.0></div><div>         1</div><div>-        -- </e_expr-17.1.5></div><div>-    })</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "e_expr-17.1.6",</div><div>-    [[</div><div>-        SELECT 'ABCxyz' GLOB 'abc*'</div><div>-    ]], {</div><div>-        -- <e_expr-17.1.6></div><div>-        0</div><div>-        -- </e_expr-17.1.6></div><div>-    })</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "e_expr-17.1.7",</div><div>-    [[</div><div>-        SELECT 'abcxyz' GLOB 'ABC*'</div><div>-    ]], {</div><div>-        -- <e_expr-17.1.7></div><div>-        0</div><div>-        -- </e_expr-17.1.7></div><div>+        -- </e_expr-17.2.0></div><div>     })</div><div> </div><div>--- EVIDENCE-OF: R-39616-20555 Both GLOB and LIKE may be preceded by the</div><div>--- NOT keyword to invert the sense of the test.</div><div>---</div><div> test:do_execsql_test(</div><div>     "e_expr-17.2.1",</div><div>     [[</div><div>-        SELECT 'abcxyz' NOT GLOB 'ABC*'</div><div>+        SELECT 'abcxyz' NOT LIKE 'abc%'</div><div>     ]], {</div><div>         -- <e_expr-17.2.1></div><div>-        1</div><div>+        0</div><div>         -- </e_expr-17.2.1></div><div>     })</div><div> </div><div> test:do_execsql_test(</div><div>     "e_expr-17.2.2",</div><div>     [[</div><div>-        SELECT 'abcxyz' NOT GLOB 'abc*'</div><div>+        PRAGMA case_sensitive_like = 0</div><div>     ]], {</div><div>         -- <e_expr-17.2.2></div><div>-        0</div><div>-        -- </e_expr-17.2.2></div><div>+</div><div>+        -- <e_expr-17.2.2></div><div>     })</div><div> </div><div> test:do_execsql_test(</div><div>@@ -2448,62 +2374,6 @@ if 0>0 then</div><div>     db("nullvalue", "")</div><div> end</div><div> </div><div>--- EVIDENCE-OF: R-39414-35489 The infix GLOB operator is implemented by</div><div>--- calling the function glob(Y,X) and can be modified by overriding that</div><div>--- function.</div><div>-</div><div>-local globargs = {}</div><div>-local function globfunc(...)</div><div>-    local args = {...}</div><div>-    for i, v in ipairs(args) do</div><div>-        table.insert(globargs, v)</div><div>-    end</div><div>-    return 1</div><div>-end</div><div>-box.internal.sql_create_function("GLOB", globfunc, 2)</div><div>---db("func", "glob", "-argcount", 2, "globfunc")</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "e_expr-17.3.1",</div><div>-    [[</div><div>-        SELECT 'abc' GLOB 'def'</div><div>-    ]], {</div><div>-        -- <e_expr-17.3.1></div><div>-        1</div><div>-        -- </e_expr-17.3.1></div><div>-    })</div><div>-</div><div>-test:do_test(</div><div>-    "e_expr-17.3.2",</div><div>-    function()</div><div>-        return globargs</div><div>-    end, {</div><div>-        -- <e_expr-17.3.2></div><div>-        "def", "abc"</div><div>-        -- </e_expr-17.3.2></div><div>-    })</div><div>-</div><div>-globargs = {  }</div><div>-test:do_execsql_test(</div><div>-    "e_expr-17.3.3",</div><div>-    [[</div><div>-        SELECT 'X' NOT GLOB 'Y'</div><div>-    ]], {</div><div>-        -- <e_expr-17.3.3></div><div>-        0</div><div>-        -- </e_expr-17.3.3></div><div>-    })</div><div>-</div><div>-test:do_test(</div><div>-    "e_expr-17.3.4",</div><div>-    function()</div><div>-        return globargs</div><div>-    end, {</div><div>-        -- <e_expr-17.3.4></div><div>-        "Y", "X"</div><div>-        -- </e_expr-17.3.4></div><div>-    })</div><div>-</div><div> --sqlite3("db", "test.db")</div><div> -- EVIDENCE-OF: R-41650-20872 No regexp() user function is defined by</div><div> -- default and so use of the REGEXP operator will normally result in an</div><div>diff --git a/test/sql-tap/gh-3251-string-pattern-comparison.test.lua b/test/sql-tap/gh-3251-string-pattern-comparison.test.lua</div><div>index addf0e36d..a6d822ccd 100755</div><div>--- a/test/sql-tap/gh-3251-string-pattern-comparison.test.lua</div><div>+++ b/test/sql-tap/gh-3251-string-pattern-comparison.test.lua</div><div>@@ -142,17 +142,17 @@ for i, tested_string in ipairs(invalid_testcases) do</div><div>     local test_name = prefix .. "2." .. tostring(i)</div><div>     local test_itself = "SELECT 'abc' LIKE 'ab" .. tested_string .. "';"</div><div>     test:do_catchsql_test(test_name, test_itself,</div><div>-                          {1, "LIKE or GLOB pattern can only contain UTF-8 characters"})</div><div>+                          {1, "LIKE pattern can only contain UTF-8 characters"})</div><div> </div><div>     test_name = prefix .. "3." .. tostring(i)</div><div>     test_itself = "SELECT 'abc' LIKE 'abc" .. tested_string .. "';"</div><div>     test:do_catchsql_test(test_name, test_itself,</div><div>-                          {1, "LIKE or GLOB pattern can only contain UTF-8 characters"})</div><div>+                          {1, "LIKE pattern can only contain UTF-8 characters"})</div><div> </div><div>     test_name = prefix .. "4." .. tostring(i)</div><div>     test_itself = "SELECT 'abc' LIKE 'ab" .. tested_string .. "c';"</div><div>     test:do_catchsql_test(test_name, test_itself,</div><div>-                          {1, "LIKE or GLOB pattern can only contain UTF-8 characters"})</div><div>+                          {1, "LIKE pattern can only contain UTF-8 characters"})</div><div> </div><div>     -- Just skipping if row value predicand contains invalid character.</div><div> </div><div>@@ -185,7 +185,7 @@ local valid_testcases = {</div><div> </div><div> -- Valid testcases.</div><div> for i, tested_string in ipairs(valid_testcases) do</div><div>-    test_name = prefix .. "8." .. tostring(i)</div><div>+    local test_name = prefix .. "8." .. tostring(i)</div><div>     local test_itself = "SELECT 'abc' LIKE 'ab" .. tested_string .. "';"</div><div>     test:do_execsql_test(test_name, test_itself, {0})</div><div> </div><div>diff --git a/test/sql-tap/like2.test.lua b/test/sql-tap/like2.test.lua</div><div>index abcac39fb..c6c81cb4d 100755</div><div>--- a/test/sql-tap/like2.test.lua</div><div>+++ b/test/sql-tap/like2.test.lua</div><div>@@ -12,11 +12,11 @@ test:plan(282)</div><div> --    May you find forgiveness for yourself and forgive others.</div><div> --    May you share freely, never taking more than you give.</div><div> --</div><div>--------------------------------------------------------------------------</div><div>--- This file implements regression tests for SQLite library.  The</div><div>--- focus of this file is testing the LIKE and GLOB operators and</div><div>--- in particular the optimizations that occur to help those operators</div><div>--- run faster.</div><div>+-----------------------------------------------------------------</div><div>+-- This file implements regression tests for SQLite library. The</div><div>+-- focus of this file is testing the LIKE operator and</div><div>+-- in particular the optimizations that occur to help this</div><div>+-- operator run faster.</div><div> --</div><div> -- $Id: like2.test,v 1.1 2008/05/26 18:33:41 drh Exp $</div><div> -- ["set","testdir",[["file","dirname",["argv0"]]]]</div><div>diff --git a/test/sql-tap/like3.test.lua b/test/sql-tap/like3.test.lua</div><div>index 505d2fabb..f5e517121 100755</div><div>--- a/test/sql-tap/like3.test.lua</div><div>+++ b/test/sql-tap/like3.test.lua</div><div>@@ -1,6 +1,6 @@</div><div> #!/usr/bin/env tarantool</div><div> test = require("sqltester")</div><div>-test:plan(7)</div><div>+test:plan(1)</div><div> </div><div> --!./tcltestrunner.lua</div><div> -- 2015-03-06</div><div>@@ -12,13 +12,13 @@ test:plan(7)</div><div> --    May you find forgiveness for yourself and forgive others.</div><div> --    May you share freely, never taking more than you give.</div><div> --</div><div>--------------------------------------------------------------------------</div><div>+-----------------------------------------------------------------</div><div> --</div><div>--- This file implements regression tests for SQLite library.  The</div><div>--- focus of this file is testing the LIKE and GLOB operators and</div><div>--- in particular the optimizations that occur to help those operators</div><div>--- run faster and that those optimizations work correctly when there</div><div>--- are both strings and blobs being tested.</div><div>+-- This file implements regression tests for SQLite library. The</div><div>+-- focus of this file is testing the LIKE operator and</div><div>+-- in particular the optimizations that occur to help this</div><div>+-- operator run faster and that those optimizations work</div><div>+-- correctly when there are both strings and blobs being tested.</div><div> --</div><div> -- Ticket 05f43be8fdda9fbd948d374319b99b054140bc36 shows that the following</div><div> -- SQL was not working correctly:</div><div>@@ -67,68 +67,6 @@ test:do_execsql_test(</div><div>         -- </like3-1.2></div><div>     })</div><div> </div><div>-test:do_execsql_test(</div><div>-    "like3-2.0",</div><div>-    [[</div><div>-        CREATE TABLE t2(a PRIMARY KEY, b TEXT);</div><div>-        INSERT INTO t2 SELECT a, b FROM t1;</div><div>-        CREATE INDEX t2ba ON t2(b,a);</div><div>-        SELECT a, b FROM t2 WHERE b GLOB 'ab*' ORDER BY +a;</div><div>-    ]], {</div><div>-        -- <like3-2.0></div><div>-        1, "abc", 4, "abc"</div><div>-        -- </like3-2.0></div><div>-    })</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "like3-2.1",</div><div>-    [[</div><div>-        SELECT a, b FROM t2 WHERE +b GLOB 'ab*' ORDER BY +a;</div><div>-    ]], {</div><div>-        -- <like3-2.1></div><div>-        1, "abc", 4, "abc"</div><div>-        -- </like3-2.1></div><div>-    })</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "like3-2.2",</div><div>-    [[</div><div>-        SELECT a, b FROM t2 WHERE b>=x'6162' AND b GLOB 'ab*'</div><div>-    ]], {</div><div>-        -- <like3-2.2></div><div>-        4, "abc"</div><div>-        -- </like3-2.2></div><div>-    })</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "like3-2.3",</div><div>-    [[</div><div>-        SELECT a, b FROM t2 WHERE +b>=x'6162' AND +b GLOB 'ab*'</div><div>-    ]], {</div><div>-        -- <like3-2.3></div><div>-        4, "abc"</div><div>-        -- </like3-2.3></div><div>-    })</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "like3-2.4",</div><div>-    [[</div><div>-        SELECT a, b FROM t2 WHERE b GLOB 'ab*' AND b>=x'6162'</div><div>-    ]], {</div><div>-        -- <like3-2.4></div><div>-        4, "abc"</div><div>-        -- </like3-2.4></div><div>-    })</div><div>-</div><div>-test:do_execsql_test(</div><div>-    "like3-2.5",</div><div>-    [[</div><div>-        SELECT a, b FROM t2 WHERE +b GLOB 'ab*' AND +b>=x'6162'</div><div>-    ]], {</div><div>-        -- <like3-2.5></div><div>-        4, "abc"</div><div>-        -- </like3-2.5></div><div>-    })</div><div> test:execsql([[</div><div>     CREATE TABLE t3(x TEXT PRIMARY KEY COLLATE "unicode_ci");</div><div>     INSERT INTO t3(x) VALUES('aaa'),('abc'),('abd'),('abe'),('acz');</div><div>diff --git a/test/sql-tap/tkt1537.test.lua b/test/sql-tap/tkt1537.test.lua</div><div>index caa428409..4b2d78c18 100755</div><div>--- a/test/sql-tap/tkt1537.test.lua</div><div>+++ b/test/sql-tap/tkt1537.test.lua</div><div>@@ -185,7 +185,7 @@ test:do_execsql_test(</div><div> test:do_execsql_test(</div><div>     "tkt1537-3.1",</div><div>     [[</div><div>-        SELECT * FROM t1 LEFT JOIN t2 ON b GLOB 'abc*' WHERE <a href="http://t1.id" class="">t1.id</a>=1;</div><div>+        SELECT * FROM t1 LEFT JOIN t2 ON b LIKE 'abc%' WHERE <a href="http://t1.id" class="">t1.id</a>=1;</div><div>     ]], {</div><div>         -- <tkt1537-3.1></div><div>         1, "", "", "", ""</div><div>@@ -195,7 +195,7 @@ test:do_execsql_test(</div><div> test:do_execsql_test(</div><div>     "tkt1537-3.2",</div><div>     [[</div><div>-        SELECT * FROM t2 LEFT JOIN t1 ON a1 GLOB 'abc*' WHERE <a href="http://t2.id" class="">t2.id</a>=3;</div><div>+        SELECT * FROM t2 LEFT JOIN t1 ON a1 LIKE 'abc%' WHERE <a href="http://t2.id" class="">t2.id</a>=3;</div><div>     ]], {</div><div>         -- <tkt1537-3.2></div><div>         3, 1, "", "", ""</div><div>diff --git a/test/sql-tap/triggerA.test.lua b/test/sql-tap/triggerA.test.lua</div><div>index da1add8e2..530e48830 100755</div><div>--- a/test/sql-tap/triggerA.test.lua</div><div>+++ b/test/sql-tap/triggerA.test.lua</div><div>@@ -76,7 +76,7 @@ test:do_test(</div><div>     "triggerA-1.3",</div><div>     function()</div><div>         return test:execsql [[</div><div>-            CREATE VIEW v2 AS SELECT x, y FROM t1 WHERE y GLOB '*e*';</div><div>+            CREATE VIEW v2 AS SELECT x, y FROM t1 WHERE y LIKE '%e%';</div><div>             SELECT * FROM v2 ORDER BY 1;</div><div>         ]]</div><div>     end, {</div><div>diff --git a/test/sql-tap/where3.test.lua b/test/sql-tap/where3.test.lua</div><div>index 45827373f..96761310c 100755</div><div>--- a/test/sql-tap/where3.test.lua</div><div>+++ b/test/sql-tap/where3.test.lua</div><div>@@ -404,7 +404,7 @@ if 0</div><div>             CREATE TABLE t401(p INTEGER PRIMARY KEY, q, r);</div><div>             CREATE TABLE t402(x INTEGER PRIMARY KEY, y, z);</div><div>             EXPLAIN QUERY PLAN</div><div>-            SELECT * FROM t400, t401, t402 WHERE t402.z GLOB 'abc*';</div><div>+            SELECT * FROM t400, t401, t402 WHERE t402.z LIKE 'abc%';</div><div>         ]], {</div><div>             -- <where3-4.0></div><div>             0, 0, 2, "SCAN TABLE T402", 0, 1, 0, "SCAN TABLE T400", 0, 2, 1, "SCAN TABLE T401"</div><div>@@ -415,7 +415,7 @@ if 0</div><div>         "where3-4.1",</div><div>         [[</div><div>             EXPLAIN QUERY PLAN</div><div>-            SELECT * FROM t400, t401, t402 WHERE t401.r GLOB 'abc*';</div><div>+            SELECT * FROM t400, t401, t402 WHERE t401.r LIKE 'abc%';</div><div>         ]], {</div><div>             -- <where3-4.1></div><div>             0, 0, 1, "SCAN TABLE T401", 0, 1, 0, "SCAN TABLE T400", 0, 2, 2, "SCAN TABLE T402"</div><div>@@ -426,7 +426,7 @@ if 0</div><div>         "where3-4.2",</div><div>         [[</div><div>             EXPLAIN QUERY PLAN</div><div>-            SELECT * FROM t400, t401, t402 WHERE t400.c GLOB 'abc*';</div><div>+            SELECT * FROM t400, t401, t402 WHERE t400.c LIKE 'abc%';</div><div>         ]], {</div><div>             -- <where3-4.2></div><div>             0, 0, 0, "SCAN TABLE T400", 0, 1, 1, "SCAN TABLE T401", 0, 2, 2, "SCAN TABLE T402"</div><div>diff --git a/test/sql-tap/where7.test.lua b/test/sql-tap/where7.test.lua</div><div>index 6691dd03b..27d25e671 100755</div><div>--- a/test/sql-tap/where7.test.lua</div><div>+++ b/test/sql-tap/where7.test.lua</div><div>@@ -448,12 +448,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=1070</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.2.1></div><div>@@ -467,12 +467,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=1070</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.2.2></div><div>@@ -487,11 +487,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>          OR b=220</div><div>          OR (d>=70.0 AND d<71.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.3.1></div><div>@@ -506,11 +506,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>          OR b=220</div><div>          OR (d>=70.0 AND d<71.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.3.2></div><div>@@ -525,7 +525,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=190</div><div>          OR ((a BETWEEN 49 AND 51) AND a!=50)</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>          OR b=407</div><div>   ]])</div><div>     end, {</div><div>@@ -541,7 +541,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=190</div><div>          OR ((a BETWEEN 49 AND 51) AND a!=50)</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>          OR b=407</div><div>   ]])</div><div>     end, {</div><div>@@ -555,7 +555,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+      WHERE (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR b=795</div><div>          OR b=1103</div><div>          OR b=583</div><div>@@ -571,7 +571,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+      WHERE (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR b=795</div><div>          OR b=1103</div><div>          OR b=583</div><div>@@ -589,7 +589,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=74</div><div>          OR a=50</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR ((a BETWEEN 16 AND 18) AND a!=17)</div><div>          OR c=21021</div><div>          OR ((a BETWEEN 82 AND 84) AND a!=83)</div><div>@@ -607,7 +607,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=74</div><div>          OR a=50</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR ((a BETWEEN 16 AND 18) AND a!=17)</div><div>          OR c=21021</div><div>          OR ((a BETWEEN 82 AND 84) AND a!=83)</div><div>@@ -746,7 +746,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR c=11011</div><div>          OR c=20020</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>@@ -763,7 +763,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR c=11011</div><div>          OR c=20020</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>@@ -781,7 +781,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>          OR (d>=83.0 AND d<84.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>          OR b=792</div><div>          OR a=97</div><div>          OR (d>=87.0 AND d<88.0 AND d IS NOT NULL)</div><div>@@ -804,7 +804,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>          OR (d>=83.0 AND d<84.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>          OR b=792</div><div>          OR a=97</div><div>          OR (d>=87.0 AND d<88.0 AND d IS NOT NULL)</div><div>@@ -827,11 +827,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 50 AND 52) AND a!=51)</div><div>          OR c=9009</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR b=539</div><div>          OR b=297</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR b=957</div><div>          OR f='xyzabcdef'</div><div>          OR b=619</div><div>@@ -849,11 +849,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 50 AND 52) AND a!=51)</div><div>          OR c=9009</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR b=539</div><div>          OR b=297</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR b=957</div><div>          OR f='xyzabcdef'</div><div>          OR b=619</div><div>@@ -931,7 +931,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=938</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.16.1></div><div>@@ -946,7 +946,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=938</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.16.2></div><div>@@ -963,12 +963,12 @@ test:do_test(</div><div>          OR f='zabcdefgh'</div><div>          OR b=308</div><div>          OR (d>=16.0 AND d<17.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 15 AND 17) AND a!=16)</div><div>          OR b=443</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>          OR f='uvwxyzabc'</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.17.1></div><div>@@ -985,12 +985,12 @@ test:do_test(</div><div>          OR f='zabcdefgh'</div><div>          OR b=308</div><div>          OR (d>=16.0 AND d<17.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 15 AND 17) AND a!=16)</div><div>          OR b=443</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>          OR f='uvwxyzabc'</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.17.2></div><div>@@ -1037,13 +1037,13 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>          OR a=46</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR a=73</div><div>          OR c=20020</div><div>          OR ((a BETWEEN 2 AND 4) AND a!=3)</div><div>          OR b=267</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.19.1></div><div>@@ -1058,13 +1058,13 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>          OR a=46</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR a=73</div><div>          OR c=20020</div><div>          OR ((a BETWEEN 2 AND 4) AND a!=3)</div><div>          OR b=267</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.19.2></div><div>@@ -1078,7 +1078,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 27 AND 29) AND a!=28)</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.20.1></div><div>@@ -1092,7 +1092,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 27 AND 29) AND a!=28)</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.20.2></div><div>@@ -1111,9 +1111,9 @@ test:do_test(</div><div>          OR ((a BETWEEN 87 AND 89) AND a!=88)</div><div>          OR f='bcdefghij'</div><div>          OR b=586</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR (d>=6.0 AND d<7.0 AND d IS NOT NULL)</div><div>          OR a=9</div><div>   ]])</div><div>@@ -1134,9 +1134,9 @@ test:do_test(</div><div>          OR ((a BETWEEN 87 AND 89) AND a!=88)</div><div>          OR f='bcdefghij'</div><div>          OR b=586</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR (d>=6.0 AND d<7.0 AND d IS NOT NULL)</div><div>          OR a=9</div><div>   ]])</div><div>@@ -1154,7 +1154,7 @@ test:do_test(</div><div>       WHERE b=399</div><div>          OR c=28028</div><div>          OR (d>=82.0 AND d<83.0 AND d IS NOT NULL)</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -1171,7 +1171,7 @@ test:do_test(</div><div>       WHERE b=399</div><div>          OR c=28028</div><div>          OR (d>=82.0 AND d<83.0 AND d IS NOT NULL)</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -1185,15 +1185,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>          OR c=14014</div><div>          OR c=33033</div><div>          OR a=89</div><div>          OR b=770</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR a=35</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>          OR b=253</div><div>          OR c=14014</div><div>   ]])</div><div>@@ -1208,15 +1208,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>          OR c=14014</div><div>          OR c=33033</div><div>          OR a=89</div><div>          OR b=770</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR a=35</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>          OR b=253</div><div>          OR c=14014</div><div>   ]])</div><div>@@ -1231,10 +1231,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>          OR b=330</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR a=16</div><div>   ]])</div><div>     end, {</div><div>@@ -1248,10 +1248,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>          OR b=330</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR a=16</div><div>   ]])</div><div>     end, {</div><div>@@ -1268,7 +1268,7 @@ test:do_test(</div><div>       WHERE c=5005</div><div>          OR (d>=2.0 AND d<3.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 36 AND 38) AND a!=37)</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.25.1></div><div>@@ -1284,7 +1284,7 @@ test:do_test(</div><div>       WHERE c=5005</div><div>          OR (d>=2.0 AND d<3.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 36 AND 38) AND a!=37)</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.25.2></div><div>@@ -1298,9 +1298,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=30.0 AND d<31.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR a=33</div><div>   ]])</div><div>     end, {</div><div>@@ -1315,9 +1315,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=30.0 AND d<31.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR a=33</div><div>   ]])</div><div>     end, {</div><div>@@ -1361,8 +1361,8 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE c=18018</div><div>          OR a=94</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR b=1012</div><div>          OR a=3</div><div>          OR d>1e10</div><div>@@ -1382,8 +1382,8 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE c=18018</div><div>          OR a=94</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR b=1012</div><div>          OR a=3</div><div>          OR d>1e10</div><div>@@ -1405,11 +1405,11 @@ test:do_test(</div><div>          OR c=11011</div><div>          OR b=297</div><div>          OR a=63</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>          OR a=76</div><div>          OR b=1026</div><div>          OR a=26</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR c=30030</div><div>   ]])</div><div>     end, {</div><div>@@ -1427,11 +1427,11 @@ test:do_test(</div><div>          OR c=11011</div><div>          OR b=297</div><div>          OR a=63</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>          OR a=76</div><div>          OR b=1026</div><div>          OR a=26</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR c=30030</div><div>   ]])</div><div>     end, {</div><div>@@ -1449,7 +1449,7 @@ test:do_test(</div><div>          OR b=1070</div><div>          OR a=59</div><div>          OR b=715</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.30.1></div><div>@@ -1466,7 +1466,7 @@ test:do_test(</div><div>          OR b=1070</div><div>          OR a=59</div><div>          OR b=715</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.30.2></div><div>@@ -1479,13 +1479,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=1056</div><div>          OR b=1012</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>          OR (d>=19.0 AND d<20.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.31.1></div><div>@@ -1498,13 +1498,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=1056</div><div>          OR b=1012</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>          OR (d>=19.0 AND d<20.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.31.2></div><div>@@ -1518,7 +1518,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE f='rstuvwxyz'</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR ((a BETWEEN 90 AND 92) AND a!=91)</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -1534,7 +1534,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE f='rstuvwxyz'</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR ((a BETWEEN 90 AND 92) AND a!=91)</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -1549,13 +1549,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+      WHERE (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR c=12012</div><div>          OR a=18</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.33.1></div><div>@@ -1568,13 +1568,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+      WHERE (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR c=12012</div><div>          OR a=18</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.33.2></div><div>@@ -1622,7 +1622,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>          OR c=33033</div><div>          OR b=11</div><div>-         OR (g='wvutsrq' AND f GLOB 'lmnop*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'lmnop%')</div><div>          OR ((a BETWEEN 7 AND 9) AND a!=8)</div><div>   ]])</div><div>     end, {</div><div>@@ -1643,7 +1643,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>          OR c=33033</div><div>          OR b=11</div><div>-         OR (g='wvutsrq' AND f GLOB 'lmnop*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'lmnop%')</div><div>          OR ((a BETWEEN 7 AND 9) AND a!=8)</div><div>   ]])</div><div>     end, {</div><div>@@ -1719,7 +1719,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=165</div><div>          OR b=201</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR a=32</div><div>   ]])</div><div>     end, {</div><div>@@ -1735,7 +1735,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=165</div><div>          OR b=201</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR a=32</div><div>   ]])</div><div>     end, {</div><div>@@ -1749,8 +1749,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.39.1></div><div>@@ -1763,8 +1763,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.39.2></div><div>@@ -1785,8 +1785,8 @@ test:do_test(</div><div>          OR a=18</div><div>          OR a=34</div><div>          OR b=132</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR c=18018</div><div>   ]])</div><div>     end, {</div><div>@@ -1808,8 +1808,8 @@ test:do_test(</div><div>          OR a=18</div><div>          OR a=34</div><div>          OR b=132</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR c=18018</div><div>   ]])</div><div>     end, {</div><div>@@ -1851,13 +1851,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+      WHERE (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>          OR (d>=14.0 AND d<15.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>          OR b=297</div><div>          OR b=113</div><div>          OR b=176</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR (d>=75.0 AND d<76.0 AND d IS NOT NULL)</div><div>          OR a=67</div><div>          OR c=26026</div><div>@@ -1873,13 +1873,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+      WHERE (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>          OR (d>=14.0 AND d<15.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>          OR b=297</div><div>          OR b=113</div><div>          OR b=176</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR (d>=75.0 AND d<76.0 AND d IS NOT NULL)</div><div>          OR a=67</div><div>          OR c=26026</div><div>@@ -1940,8 +1940,8 @@ test:do_test(</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>          OR b=487</div><div>          OR b=619</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.44.1></div><div>@@ -1959,8 +1959,8 @@ test:do_test(</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>          OR b=487</div><div>          OR b=619</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.44.2></div><div>@@ -1980,7 +1980,7 @@ test:do_test(</div><div>          OR c=17017</div><div>          OR a=82</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>          OR (d>=39.0 AND d<40.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -2002,7 +2002,7 @@ test:do_test(</div><div>          OR c=17017</div><div>          OR a=82</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>          OR (d>=39.0 AND d<40.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -2017,7 +2017,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR c=22022</div><div>   ]])</div><div>     end, {</div><div>@@ -2031,7 +2031,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR c=22022</div><div>   ]])</div><div>     end, {</div><div>@@ -2048,7 +2048,7 @@ test:do_test(</div><div>       WHERE c=7007</div><div>          OR b=91</div><div>          OR b=212</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR c=28028</div><div>          OR (d>=83.0 AND d<84.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -2066,7 +2066,7 @@ test:do_test(</div><div>       WHERE c=7007</div><div>          OR b=91</div><div>          OR b=212</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR c=28028</div><div>          OR (d>=83.0 AND d<84.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -2111,9 +2111,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR ((a BETWEEN 0 AND 2) AND a!=1)</div><div>          OR c=4004</div><div>          OR b=322</div><div>@@ -2131,9 +2131,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR ((a BETWEEN 0 AND 2) AND a!=1)</div><div>          OR c=4004</div><div>          OR b=322</div><div>@@ -2156,8 +2156,8 @@ test:do_test(</div><div>          OR a=46</div><div>          OR b=660</div><div>          OR (d>=41.0 AND d<42.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>          OR b=355</div><div>          OR a=93</div><div>          OR b=297</div><div>@@ -2178,8 +2178,8 @@ test:do_test(</div><div>          OR a=46</div><div>          OR b=660</div><div>          OR (d>=41.0 AND d<42.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>          OR b=355</div><div>          OR a=93</div><div>          OR b=297</div><div>@@ -2197,7 +2197,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=190</div><div>          OR a=62</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.51.1></div><div>@@ -2212,7 +2212,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=190</div><div>          OR a=62</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.51.2></div><div>@@ -2306,7 +2306,7 @@ test:do_test(</div><div>          OR b=256</div><div>          OR a=72</div><div>          OR c>=34035</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>          OR b=674</div><div>          OR a=22</div><div>   ]])</div><div>@@ -2328,7 +2328,7 @@ test:do_test(</div><div>          OR b=256</div><div>          OR a=72</div><div>          OR c>=34035</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>          OR b=674</div><div>          OR a=22</div><div>   ]])</div><div>@@ -2381,9 +2381,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.56.1></div><div>@@ -2396,9 +2396,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.56.2></div><div>@@ -2413,7 +2413,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=748</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>          OR b=630</div><div>   ]])</div><div>@@ -2430,7 +2430,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=748</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>          OR b=630</div><div>   ]])</div><div>@@ -2521,7 +2521,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=979</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.60.1></div><div>@@ -2536,7 +2536,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=979</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.60.2></div><div>@@ -2555,7 +2555,7 @@ test:do_test(</div><div>          OR b=726</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 50 AND 52) AND a!=51)</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>   ]])</div><div>     end, {</div><div>@@ -2575,7 +2575,7 @@ test:do_test(</div><div>          OR b=726</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 50 AND 52) AND a!=51)</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>   ]])</div><div>     end, {</div><div>@@ -2593,10 +2593,10 @@ test:do_test(</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>          OR b=924</div><div>          OR c=11011</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR b=231</div><div>          OR b=872</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.62.1></div><div>@@ -2613,10 +2613,10 @@ test:do_test(</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>          OR b=924</div><div>          OR c=11011</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR b=231</div><div>          OR b=872</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.62.2></div><div>@@ -2631,8 +2631,8 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=24</div><div>          OR b=473</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>          OR b=509</div><div>          OR b=924</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>@@ -2650,8 +2650,8 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=24</div><div>          OR b=473</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>          OR b=509</div><div>          OR b=924</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>@@ -2668,11 +2668,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=93.0 AND d<94.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR b=363</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>   ]])</div><div>@@ -2688,11 +2688,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=93.0 AND d<94.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR b=363</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>   ]])</div><div>@@ -2711,9 +2711,9 @@ test:do_test(</div><div>          OR e IS NULL</div><div>          OR b=495</div><div>          OR 1000000<b</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>          OR a=45</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR a=85</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -2732,9 +2732,9 @@ test:do_test(</div><div>          OR e IS NULL</div><div>          OR b=495</div><div>          OR 1000000<b</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>          OR a=45</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR a=85</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -2781,9 +2781,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE c>=34035</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR (d>=27.0 AND d<28.0 AND d IS NOT NULL)</div><div>          OR a=91</div><div>   ]])</div><div>@@ -2800,9 +2800,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE c>=34035</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR (d>=27.0 AND d<28.0 AND d IS NOT NULL)</div><div>          OR a=91</div><div>   ]])</div><div>@@ -2817,9 +2817,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR b=649</div><div>          OR b=231</div><div>          OR (d>=48.0 AND d<49.0 AND d IS NOT NULL)</div><div>@@ -2837,9 +2837,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR b=649</div><div>          OR b=231</div><div>          OR (d>=48.0 AND d<49.0 AND d IS NOT NULL)</div><div>@@ -2918,11 +2918,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=65</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR c=22022</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>          OR b=671</div><div>-         OR (g='onmlkji' AND f GLOB 'zabcd*')</div><div>+         OR (g='onmlkji' AND f LIKE 'zabcd%')</div><div>          OR a=91</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 47 AND 49) AND a!=48)</div><div>@@ -2941,11 +2941,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=65</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR c=22022</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>          OR b=671</div><div>-         OR (g='onmlkji' AND f GLOB 'zabcd*')</div><div>+         OR (g='onmlkji' AND f LIKE 'zabcd%')</div><div>          OR a=91</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 47 AND 49) AND a!=48)</div><div>@@ -2995,7 +2995,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>          OR a=14</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>          OR b=212</div><div>@@ -3014,7 +3014,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>          OR a=14</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>          OR b=212</div><div>@@ -3031,11 +3031,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR b=168</div><div>          OR b=25</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.74.1></div><div>@@ -3048,11 +3048,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR b=168</div><div>          OR b=25</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.74.2></div><div>@@ -3098,10 +3098,10 @@ test:do_test(</div><div>       WHERE c=31031</div><div>          OR (d>=100.0 AND d<101.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 87 AND 89) AND a!=88)</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR a=49</div><div>          OR (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'klmno*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.76.1></div><div>@@ -3117,10 +3117,10 @@ test:do_test(</div><div>       WHERE c=31031</div><div>          OR (d>=100.0 AND d<101.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 87 AND 89) AND a!=88)</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR a=49</div><div>          OR (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'klmno*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.76.2></div><div>@@ -3170,7 +3170,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=85.0 AND d<86.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR ((a BETWEEN 30 AND 32) AND a!=31)</div><div>          OR b=1089</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>@@ -3187,7 +3187,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=85.0 AND d<86.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR ((a BETWEEN 30 AND 32) AND a!=31)</div><div>          OR b=1089</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>@@ -3205,8 +3205,8 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=399</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR a=10</div><div>          OR b=1026</div><div>   ]])</div><div>@@ -3223,8 +3223,8 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=399</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR a=10</div><div>          OR b=1026</div><div>   ]])</div><div>@@ -3239,11 +3239,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'yzabc%')</div><div>          OR b=465</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.80.1></div><div>@@ -3256,11 +3256,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'yzabc%')</div><div>          OR b=465</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.80.2></div><div>@@ -3275,7 +3275,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=25</div><div>          OR b=792</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.81.1></div><div>@@ -3290,7 +3290,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=25</div><div>          OR b=792</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.81.2></div><div>@@ -3308,10 +3308,10 @@ test:do_test(</div><div>          OR a=13</div><div>          OR a=15</div><div>          OR ((a BETWEEN 6 AND 8) AND a!=7)</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR a=27</div><div>          OR ((a BETWEEN 98 AND 100) AND a!=99)</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR a=32</div><div>          OR a=39</div><div>   ]])</div><div>@@ -3331,10 +3331,10 @@ test:do_test(</div><div>          OR a=13</div><div>          OR a=15</div><div>          OR ((a BETWEEN 6 AND 8) AND a!=7)</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR a=27</div><div>          OR ((a BETWEEN 98 AND 100) AND a!=99)</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR a=32</div><div>          OR a=39</div><div>   ]])</div><div>@@ -3350,14 +3350,14 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE f='hijklmnop'</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 77 AND 79) AND a!=78)</div><div>          OR b=528</div><div>          OR c=30030</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.83.1></div><div>@@ -3371,14 +3371,14 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE f='hijklmnop'</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 77 AND 79) AND a!=78)</div><div>          OR b=528</div><div>          OR c=30030</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.83.2></div><div>@@ -3425,11 +3425,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR b=748</div><div>          OR b=696</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.85.1></div><div>@@ -3442,11 +3442,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR b=748</div><div>          OR b=696</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.85.2></div><div>@@ -3460,10 +3460,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 71 AND 73) AND a!=72)</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR a=87</div><div>          OR a=80</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR b=784</div><div>          OR a=49</div><div>          OR ((a BETWEEN 34 AND 36) AND a!=35)</div><div>@@ -3480,10 +3480,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 71 AND 73) AND a!=72)</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR a=87</div><div>          OR a=80</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR b=784</div><div>          OR a=49</div><div>          OR ((a BETWEEN 34 AND 36) AND a!=35)</div><div>@@ -3500,13 +3500,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 14 AND 16) AND a!=15)</div><div>-         OR (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>          OR c=1001</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR (d>=16.0 AND d<17.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR c=33033</div><div>   ]])</div><div>     end, {</div><div>@@ -3521,13 +3521,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 14 AND 16) AND a!=15)</div><div>-         OR (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>          OR c=1001</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR (d>=16.0 AND d<17.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR c=33033</div><div>   ]])</div><div>     end, {</div><div>@@ -3611,13 +3611,13 @@ test:do_test(</div><div>          OR b=553</div><div>          OR a=64</div><div>          OR (d>=93.0 AND d<94.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>          OR a=62</div><div>          OR b=1081</div><div>          OR b=770</div><div>          OR b=762</div><div>          OR b=803</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.90.1></div><div>@@ -3634,13 +3634,13 @@ test:do_test(</div><div>          OR b=553</div><div>          OR a=64</div><div>          OR (d>=93.0 AND d<94.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>          OR a=62</div><div>          OR b=1081</div><div>          OR b=770</div><div>          OR b=762</div><div>          OR b=803</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.90.2></div><div>@@ -3653,8 +3653,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'klmno*')</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'klmno%')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR c=17017</div><div>          OR b=168</div><div>          OR ((a BETWEEN 77 AND 79) AND a!=78)</div><div>@@ -3670,8 +3670,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'klmno*')</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'klmno%')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR c=17017</div><div>          OR b=168</div><div>          OR ((a BETWEEN 77 AND 79) AND a!=78)</div><div>@@ -3690,12 +3690,12 @@ test:do_test(</div><div>       WHERE c=34034</div><div>          OR (d>=68.0 AND d<69.0 AND d IS NOT NULL)</div><div>          OR a=44</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR c=31031</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR b=619</div><div>-         OR (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+         OR (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>          OR ((a BETWEEN 29 AND 31) AND a!=30)</div><div>   ]])</div><div>     end, {</div><div>@@ -3712,12 +3712,12 @@ test:do_test(</div><div>       WHERE c=34034</div><div>          OR (d>=68.0 AND d<69.0 AND d IS NOT NULL)</div><div>          OR a=44</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR c=31031</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR b=619</div><div>-         OR (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+         OR (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>          OR ((a BETWEEN 29 AND 31) AND a!=30)</div><div>   ]])</div><div>     end, {</div><div>@@ -3738,10 +3738,10 @@ test:do_test(</div><div>          OR (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>          OR b=110</div><div>          OR f='klmnopqrs'</div><div>-         OR (g='fedcbaz' AND f GLOB 'qrstu*')</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'qrstu%')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR b=674</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.93.1></div><div>@@ -3761,10 +3761,10 @@ test:do_test(</div><div>          OR (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>          OR b=110</div><div>          OR f='klmnopqrs'</div><div>-         OR (g='fedcbaz' AND f GLOB 'qrstu*')</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'qrstu%')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR b=674</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.93.2></div><div>@@ -3882,7 +3882,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=231</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.97.1></div><div>@@ -3896,7 +3896,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=231</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.97.2></div><div>@@ -4057,7 +4057,7 @@ test:do_test(</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>          OR b=630</div><div>          OR c=19019</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR a=24</div><div>          OR (d>=95.0 AND d<96.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 51 AND 53) AND a!=52)</div><div>@@ -4077,7 +4077,7 @@ test:do_test(</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>          OR b=630</div><div>          OR c=19019</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR a=24</div><div>          OR (d>=95.0 AND d<96.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 51 AND 53) AND a!=52)</div><div>@@ -4128,11 +4128,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE f='stuvwxyza'</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR ((a BETWEEN 1 AND 3) AND a!=2)</div><div>          OR b=1037</div><div>          OR f='zabcdefgh'</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.104.1></div><div>@@ -4146,11 +4146,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE f='stuvwxyza'</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR ((a BETWEEN 1 AND 3) AND a!=2)</div><div>          OR b=1037</div><div>          OR f='zabcdefgh'</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.104.2></div><div>@@ -4163,7 +4163,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>          OR ((a BETWEEN 30 AND 32) AND a!=31)</div><div>   ]])</div><div>@@ -4178,7 +4178,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>          OR ((a BETWEEN 30 AND 32) AND a!=31)</div><div>   ]])</div><div>@@ -4197,8 +4197,8 @@ test:do_test(</div><div>          OR b=190</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>          OR ((a BETWEEN 70 AND 72) AND a!=71)</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR b=704</div><div>   ]])</div><div>     end, {</div><div>@@ -4216,8 +4216,8 @@ test:do_test(</div><div>          OR b=190</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>          OR ((a BETWEEN 70 AND 72) AND a!=71)</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR b=704</div><div>   ]])</div><div>     end, {</div><div>@@ -4234,7 +4234,7 @@ test:do_test(</div><div>       WHERE b=88</div><div>          OR f='vwxyzabcd'</div><div>          OR f='fghijklmn'</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.107.1></div><div>@@ -4250,7 +4250,7 @@ test:do_test(</div><div>       WHERE b=88</div><div>          OR f='vwxyzabcd'</div><div>          OR f='fghijklmn'</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.107.2></div><div>@@ -4296,7 +4296,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 47 AND 49) AND a!=48)</div><div>          OR a=5</div><div>          OR b=179</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR a=69</div><div>   ]])</div><div>     end, {</div><div>@@ -4313,7 +4313,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 47 AND 49) AND a!=48)</div><div>          OR a=5</div><div>          OR b=179</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR a=69</div><div>   ]])</div><div>     end, {</div><div>@@ -4328,8 +4328,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=971</div><div>-         OR (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR b=828</div><div>          OR a=81</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>@@ -4350,8 +4350,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=971</div><div>-         OR (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR b=828</div><div>          OR a=81</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>@@ -4399,8 +4399,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.112.1></div><div>@@ -4413,8 +4413,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.112.2></div><div>@@ -4463,8 +4463,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR b=396</div><div>   ]])</div><div>     end, {</div><div>@@ -4478,8 +4478,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR b=396</div><div>   ]])</div><div>     end, {</div><div>@@ -4531,7 +4531,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 20 AND 22) AND a!=21)</div><div>          OR b=396</div><div>          OR b=630</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR c=3003</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -4552,7 +4552,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 20 AND 22) AND a!=21)</div><div>          OR b=396</div><div>          OR b=630</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR c=3003</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -4573,8 +4573,8 @@ test:do_test(</div><div>          OR b=957</div><div>          OR b=311</div><div>          OR b=143</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -4594,8 +4594,8 @@ test:do_test(</div><div>          OR b=957</div><div>          OR b=311</div><div>          OR b=143</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -4612,7 +4612,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 74 AND 76) AND a!=75)</div><div>          OR ((a BETWEEN 94 AND 96) AND a!=95)</div><div>          OR b=451</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.118.1></div><div>@@ -4628,7 +4628,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 74 AND 76) AND a!=75)</div><div>          OR ((a BETWEEN 94 AND 96) AND a!=95)</div><div>          OR b=451</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.118.2></div><div>@@ -4645,11 +4645,11 @@ test:do_test(</div><div>          OR b=451</div><div>          OR b=363</div><div>          OR b=330</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR ((a BETWEEN 52 AND 54) AND a!=53)</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 81 AND 83) AND a!=82)</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.119.1></div><div>@@ -4666,11 +4666,11 @@ test:do_test(</div><div>          OR b=451</div><div>          OR b=363</div><div>          OR b=330</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR ((a BETWEEN 52 AND 54) AND a!=53)</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 81 AND 83) AND a!=82)</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.119.2></div><div>@@ -4683,9 +4683,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR (d>=68.0 AND d<69.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR e IS NULL</div><div>          OR b=759</div><div>   ]])</div><div>@@ -4700,9 +4700,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR (d>=68.0 AND d<69.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR e IS NULL</div><div>          OR b=759</div><div>   ]])</div><div>@@ -4717,9 +4717,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+      WHERE (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR ((a BETWEEN 19 AND 21) AND a!=20)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.121.1></div><div>@@ -4732,9 +4732,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+      WHERE (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR ((a BETWEEN 19 AND 21) AND a!=20)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.121.2></div><div>@@ -4815,14 +4815,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>          OR b=421</div><div>          OR b=429</div><div>          OR b=498</div><div>          OR b=33</div><div>          OR b=198</div><div>          OR c=14014</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.124.1></div><div>@@ -4835,14 +4835,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>          OR b=421</div><div>          OR b=429</div><div>          OR b=498</div><div>          OR b=33</div><div>          OR b=198</div><div>          OR c=14014</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.124.2></div><div>@@ -4858,13 +4858,13 @@ test:do_test(</div><div>       WHERE b=47</div><div>          OR c=31031</div><div>          OR a=38</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR b=242</div><div>          OR (d>=70.0 AND d<71.0 AND d IS NOT NULL)</div><div>          OR b=352</div><div>          OR a=49</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.125.1></div><div>@@ -4880,13 +4880,13 @@ test:do_test(</div><div>       WHERE b=47</div><div>          OR c=31031</div><div>          OR a=38</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR b=242</div><div>          OR (d>=70.0 AND d<71.0 AND d IS NOT NULL)</div><div>          OR b=352</div><div>          OR a=49</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.125.2></div><div>@@ -4969,9 +4969,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR b=528</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.128.1></div><div>@@ -4984,9 +4984,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR b=528</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.128.2></div><div>@@ -5031,7 +5031,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=71.0 AND d<72.0 AND d IS NOT NULL)</div><div>          OR 1000000<b</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>          OR a=24</div><div>   ]])</div><div>@@ -5048,7 +5048,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=71.0 AND d<72.0 AND d IS NOT NULL)</div><div>          OR 1000000<b</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>          OR a=24</div><div>   ]])</div><div>@@ -5071,8 +5071,8 @@ test:do_test(</div><div>          OR a=14</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>          OR b=440</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>-         OR (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>+         OR (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.131.1></div><div>@@ -5093,8 +5093,8 @@ test:do_test(</div><div>          OR a=14</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>          OR b=440</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>-         OR (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>+         OR (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.131.2></div><div>@@ -5226,9 +5226,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=27</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR b=1045</div><div>          OR a=84</div><div>          OR f='qrstuvwxy'</div><div>@@ -5245,9 +5245,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=27</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR b=1045</div><div>          OR a=84</div><div>          OR f='qrstuvwxy'</div><div>@@ -5266,7 +5266,7 @@ test:do_test(</div><div>       WHERE b=704</div><div>          OR b=949</div><div>          OR (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR c=24024</div><div>          OR b=553</div><div>          OR a=18</div><div>@@ -5286,7 +5286,7 @@ test:do_test(</div><div>       WHERE b=704</div><div>          OR b=949</div><div>          OR (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR c=24024</div><div>          OR b=553</div><div>          OR a=18</div><div>@@ -5303,8 +5303,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+      WHERE (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR b=902</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>          OR b=25</div><div>@@ -5323,8 +5323,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+      WHERE (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR b=902</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>          OR b=25</div><div>@@ -5405,8 +5405,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+      WHERE (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR b=641</div><div>          OR ((a BETWEEN 36 AND 38) AND a!=37)</div><div>   ]])</div><div>@@ -5421,8 +5421,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+      WHERE (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR b=641</div><div>          OR ((a BETWEEN 36 AND 38) AND a!=37)</div><div>   ]])</div><div>@@ -5442,9 +5442,9 @@ test:do_test(</div><div>          OR ((a BETWEEN 44 AND 46) AND a!=45)</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>          OR b=11</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR a=52</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR a=13</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -5464,9 +5464,9 @@ test:do_test(</div><div>          OR ((a BETWEEN 44 AND 46) AND a!=45)</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>          OR b=11</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR a=52</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR a=13</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -5487,7 +5487,7 @@ test:do_test(</div><div>          OR b=1045</div><div>          OR (d>=24.0 AND d<25.0 AND d IS NOT NULL)</div><div>          OR f='uvwxyzabc'</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.143.1></div><div>@@ -5506,7 +5506,7 @@ test:do_test(</div><div>          OR b=1045</div><div>          OR (d>=24.0 AND d<25.0 AND d IS NOT NULL)</div><div>          OR f='uvwxyzabc'</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.143.2></div><div>@@ -5562,9 +5562,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=91</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR (d>=85.0 AND d<86.0 AND d IS NOT NULL)</div><div>          OR b=102</div><div>@@ -5584,9 +5584,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=91</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR (d>=85.0 AND d<86.0 AND d IS NOT NULL)</div><div>          OR b=102</div><div>@@ -5605,8 +5605,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR b=990</div><div>          OR a=52</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>@@ -5622,8 +5622,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR b=990</div><div>          OR a=52</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>@@ -5683,13 +5683,13 @@ test:do_test(</div><div>          OR b=421</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>          OR (d>=2.0 AND d<3.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>          OR (d>=24.0 AND d<25.0 AND d IS NOT NULL)</div><div>          OR c=22022</div><div>          OR b=825</div><div>          OR ((a BETWEEN 17 AND 19) AND a!=18)</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.148.1></div><div>@@ -5706,13 +5706,13 @@ test:do_test(</div><div>          OR b=421</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>          OR (d>=2.0 AND d<3.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>          OR (d>=24.0 AND d<25.0 AND d IS NOT NULL)</div><div>          OR c=22022</div><div>          OR b=825</div><div>          OR ((a BETWEEN 17 AND 19) AND a!=18)</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.148.2></div><div>@@ -5729,7 +5729,7 @@ test:do_test(</div><div>          OR b=484</div><div>          OR b=1026</div><div>          OR a=90</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR b=608</div><div>          OR a=32</div><div>   ]])</div><div>@@ -5748,7 +5748,7 @@ test:do_test(</div><div>          OR b=484</div><div>          OR b=1026</div><div>          OR a=90</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR b=608</div><div>          OR a=32</div><div>   ]])</div><div>@@ -5771,7 +5771,7 @@ test:do_test(</div><div>          OR a=55</div><div>          OR b=773</div><div>          OR b=319</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.150.1></div><div>@@ -5792,7 +5792,7 @@ test:do_test(</div><div>          OR a=55</div><div>          OR b=773</div><div>          OR b=319</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.150.2></div><div>@@ -5805,7 +5805,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR f='mnopqrstu'</div><div>          OR a=62</div><div>   ]])</div><div>@@ -5820,7 +5820,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR f='mnopqrstu'</div><div>          OR a=62</div><div>   ]])</div><div>@@ -5839,9 +5839,9 @@ test:do_test(</div><div>          OR b=1045</div><div>          OR (d>=40.0 AND d<41.0 AND d IS NOT NULL)</div><div>          OR c=13013</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR b=124</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.152.1></div><div>@@ -5858,9 +5858,9 @@ test:do_test(</div><div>          OR b=1045</div><div>          OR (d>=40.0 AND d<41.0 AND d IS NOT NULL)</div><div>          OR c=13013</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR b=124</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.152.2></div><div>@@ -5880,7 +5880,7 @@ test:do_test(</div><div>          OR b=421</div><div>          OR b=803</div><div>          OR c=4004</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.153.1></div><div>@@ -5900,7 +5900,7 @@ test:do_test(</div><div>          OR b=421</div><div>          OR b=803</div><div>          OR c=4004</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.153.2></div><div>@@ -5913,9 +5913,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+      WHERE (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR b=99</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.154.1></div><div>@@ -5928,9 +5928,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+      WHERE (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR b=99</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.154.2></div><div>@@ -5972,9 +5972,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=795</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR f='jklmnopqr'</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>          OR b=1056</div><div>   ]])</div><div>@@ -5990,9 +5990,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=795</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR f='jklmnopqr'</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>          OR b=1056</div><div>   ]])</div><div>@@ -6146,7 +6146,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=23</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR b=641</div><div>          OR b=352</div><div>          OR b=179</div><div>@@ -6166,7 +6166,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=23</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR b=641</div><div>          OR b=352</div><div>          OR b=179</div><div>@@ -6189,7 +6189,7 @@ test:do_test(</div><div>          OR b=1078</div><div>          OR ((a BETWEEN 11 AND 13) AND a!=12)</div><div>          OR c=12012</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>          OR b=319</div><div>          OR c=5005</div><div>          OR 1000000<b</div><div>@@ -6211,7 +6211,7 @@ test:do_test(</div><div>          OR b=1078</div><div>          OR ((a BETWEEN 11 AND 13) AND a!=12)</div><div>          OR c=12012</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>          OR b=319</div><div>          OR c=5005</div><div>          OR 1000000<b</div><div>@@ -6230,8 +6230,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE f='cdefghijk'</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR (d>=59.0 AND d<60.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -6246,8 +6246,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE f='cdefghijk'</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR (d>=59.0 AND d<60.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -6297,13 +6297,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>          OR b=891</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR b=484</div><div>          OR a=62</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.165.1></div><div>@@ -6316,13 +6316,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>          OR b=891</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR b=484</div><div>          OR a=62</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.165.2></div><div>@@ -6336,11 +6336,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=363</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR ((a BETWEEN 58 AND 60) AND a!=59)</div><div>          OR (d>=2.0 AND d<3.0 AND d IS NOT NULL)</div><div>          OR (d>=46.0 AND d<47.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR a=39</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -6356,11 +6356,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=363</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR ((a BETWEEN 58 AND 60) AND a!=59)</div><div>          OR (d>=2.0 AND d<3.0 AND d IS NOT NULL)</div><div>          OR (d>=46.0 AND d<47.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR a=39</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -6378,7 +6378,7 @@ test:do_test(</div><div>       WHERE c=30030</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>          OR b=850</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.167.1></div><div>@@ -6394,7 +6394,7 @@ test:do_test(</div><div>       WHERE c=30030</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>          OR b=850</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.167.2></div><div>@@ -6540,7 +6540,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=333</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR (d>=62.0 AND d<63.0 AND d IS NOT NULL)</div><div>          OR b=407</div><div>          OR a=5</div><div>@@ -6559,7 +6559,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=333</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR (d>=62.0 AND d<63.0 AND d IS NOT NULL)</div><div>          OR b=407</div><div>          OR a=5</div><div>@@ -6580,7 +6580,7 @@ test:do_test(</div><div>       WHERE b<0</div><div>          OR b=352</div><div>          OR b=517</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>          OR b=1012</div><div>          OR ((a BETWEEN 11 AND 13) AND a!=12)</div><div>@@ -6599,7 +6599,7 @@ test:do_test(</div><div>       WHERE b<0</div><div>          OR b=352</div><div>          OR b=517</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>          OR b=1012</div><div>          OR ((a BETWEEN 11 AND 13) AND a!=12)</div><div>@@ -6615,11 +6615,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR c<=10</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR a=32</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR d<0.0</div><div>   ]])</div><div>     end, {</div><div>@@ -6633,11 +6633,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR c<=10</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR a=32</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR d<0.0</div><div>   ]])</div><div>     end, {</div><div>@@ -6653,9 +6653,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 20 AND 22) AND a!=21)</div><div>          OR b=1045</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR a=26</div><div>-         OR (g='gfedcba' AND f GLOB 'opqrs*')</div><div>+         OR (g='gfedcba' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.175.1></div><div>@@ -6670,9 +6670,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 20 AND 22) AND a!=21)</div><div>          OR b=1045</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR a=26</div><div>-         OR (g='gfedcba' AND f GLOB 'opqrs*')</div><div>+         OR (g='gfedcba' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.175.2></div><div>@@ -6714,7 +6714,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=3.0 AND d<4.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>          OR c=32032</div><div>          OR b=289</div><div>          OR ((a BETWEEN 17 AND 19) AND a!=18)</div><div>@@ -6732,7 +6732,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=3.0 AND d<4.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>          OR c=32032</div><div>          OR b=289</div><div>          OR ((a BETWEEN 17 AND 19) AND a!=18)</div><div>@@ -6752,7 +6752,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 15 AND 17) AND a!=16)</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR b=33</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.178.1></div><div>@@ -6768,7 +6768,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 15 AND 17) AND a!=16)</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR b=33</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.178.2></div><div>@@ -6783,15 +6783,15 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=828</div><div>          OR b=341</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR b=902</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=242</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR (d>=91.0 AND d<92.0 AND d IS NOT NULL)</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.179.1></div><div>@@ -6806,15 +6806,15 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=828</div><div>          OR b=341</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR b=902</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=242</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR (d>=91.0 AND d<92.0 AND d IS NOT NULL)</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.179.2></div><div>@@ -6827,7 +6827,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'efghi%')</div><div>          OR b=982</div><div>          OR b=781</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>@@ -6845,7 +6845,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'efghi%')</div><div>          OR b=982</div><div>          OR b=781</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>@@ -6863,13 +6863,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR a=31</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR a=76</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR b=176</div><div>   ]])</div><div>     end, {</div><div>@@ -6883,13 +6883,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR a=31</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR a=76</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR b=176</div><div>   ]])</div><div>     end, {</div><div>@@ -6903,11 +6903,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR b=14</div><div>          OR ((a BETWEEN 88 AND 90) AND a!=89)</div><div>          OR f='zabcdefgh'</div><div>@@ -6923,11 +6923,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR b=14</div><div>          OR ((a BETWEEN 88 AND 90) AND a!=89)</div><div>          OR f='zabcdefgh'</div><div>@@ -6943,7 +6943,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR b=286</div><div>          OR (d>=31.0 AND d<32.0 AND d IS NOT NULL)</div><div>          OR b=91</div><div>@@ -6960,7 +6960,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR b=286</div><div>          OR (d>=31.0 AND d<32.0 AND d IS NOT NULL)</div><div>          OR b=91</div><div>@@ -6977,9 +6977,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR c=19019</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>          OR b=374</div><div>   ]])</div><div>     end, {</div><div>@@ -6993,9 +6993,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR c=19019</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>          OR b=374</div><div>   ]])</div><div>     end, {</div><div>@@ -7010,7 +7010,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE g IS NULL</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.185.1></div><div>@@ -7024,7 +7024,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE g IS NULL</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.185.2></div><div>@@ -7067,10 +7067,10 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 66 AND 68) AND a!=67)</div><div>          OR b=564</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR b=234</div><div>          OR b=641</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR (d>=5.0 AND d<6.0 AND d IS NOT NULL)</div><div>          OR a=98</div><div>@@ -7088,10 +7088,10 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 66 AND 68) AND a!=67)</div><div>          OR b=564</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR b=234</div><div>          OR b=641</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR (d>=5.0 AND d<6.0 AND d IS NOT NULL)</div><div>          OR a=98</div><div>@@ -7111,12 +7111,12 @@ test:do_test(</div><div>          OR b=44</div><div>          OR b=539</div><div>          OR c=11011</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=69</div><div>          OR b=1001</div><div>          OR (d>=26.0 AND d<27.0 AND d IS NOT NULL)</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>   ]])</div><div>     end, {</div><div>@@ -7134,12 +7134,12 @@ test:do_test(</div><div>          OR b=44</div><div>          OR b=539</div><div>          OR c=11011</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=69</div><div>          OR b=1001</div><div>          OR (d>=26.0 AND d<27.0 AND d IS NOT NULL)</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>   ]])</div><div>     end, {</div><div>@@ -7224,7 +7224,7 @@ test:do_test(</div><div>       WHERE c=23023</div><div>          OR (d>=83.0 AND d<84.0 AND d IS NOT NULL)</div><div>          OR a=66</div><div>-         OR (g='onmlkji' AND f GLOB 'zabcd*')</div><div>+         OR (g='onmlkji' AND f LIKE 'zabcd%')</div><div>          OR a=51</div><div>          OR a=23</div><div>          OR c=4004</div><div>@@ -7243,7 +7243,7 @@ test:do_test(</div><div>       WHERE c=23023</div><div>          OR (d>=83.0 AND d<84.0 AND d IS NOT NULL)</div><div>          OR a=66</div><div>-         OR (g='onmlkji' AND f GLOB 'zabcd*')</div><div>+         OR (g='onmlkji' AND f LIKE 'zabcd%')</div><div>          OR a=51</div><div>          OR a=23</div><div>          OR c=4004</div><div>@@ -7260,7 +7260,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=36</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR a=80</div><div>   ]])</div><div>     end, {</div><div>@@ -7275,7 +7275,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=36</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR a=80</div><div>   ]])</div><div>     end, {</div><div>@@ -7289,7 +7289,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+      WHERE (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR ((a BETWEEN 37 AND 39) AND a!=38)</div><div>          OR a=55</div><div>          OR f='efghijklm'</div><div>@@ -7310,7 +7310,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+      WHERE (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR ((a BETWEEN 37 AND 39) AND a!=38)</div><div>          OR a=55</div><div>          OR f='efghijklm'</div><div>@@ -7333,11 +7333,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=87.0 AND d<88.0 AND d IS NOT NULL)</div><div>          OR b=836</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR a=91</div><div>          OR b=594</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.194.1></div><div>@@ -7352,11 +7352,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=87.0 AND d<88.0 AND d IS NOT NULL)</div><div>          OR b=836</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR a=91</div><div>          OR b=594</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.194.2></div><div>@@ -7369,8 +7369,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'yzabc*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'yzabc%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 62 AND 64) AND a!=63)</div><div>          OR c=6006</div><div>          OR ((a BETWEEN 50 AND 52) AND a!=51)</div><div>@@ -7389,8 +7389,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'yzabc*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'yzabc%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 62 AND 64) AND a!=63)</div><div>          OR c=6006</div><div>          OR ((a BETWEEN 50 AND 52) AND a!=51)</div><div>@@ -7415,10 +7415,10 @@ test:do_test(</div><div>          OR b=121</div><div>          OR (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>          OR b=660</div><div>          OR b=792</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.196.1></div><div>@@ -7437,10 +7437,10 @@ test:do_test(</div><div>          OR b=121</div><div>          OR (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>          OR b=660</div><div>          OR b=792</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.196.2></div><div>@@ -7456,10 +7456,10 @@ test:do_test(</div><div>       WHERE b=1089</div><div>          OR b=495</div><div>          OR b=157</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>          OR (d>=59.0 AND d<60.0 AND d IS NOT NULL)</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR f='wxyzabcde'</div><div>   ]])</div><div>@@ -7477,10 +7477,10 @@ test:do_test(</div><div>       WHERE b=1089</div><div>          OR b=495</div><div>          OR b=157</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>          OR (d>=59.0 AND d<60.0 AND d IS NOT NULL)</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR f='wxyzabcde'</div><div>   ]])</div><div>@@ -7497,7 +7497,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE f='bcdefghij'</div><div>          OR ((a BETWEEN 40 AND 42) AND a!=41)</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>          OR b=157</div><div>          OR b=267</div><div>          OR c=34034</div><div>@@ -7515,7 +7515,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE f='bcdefghij'</div><div>          OR ((a BETWEEN 40 AND 42) AND a!=41)</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>          OR b=157</div><div>          OR b=267</div><div>          OR c=34034</div><div>@@ -7534,7 +7534,7 @@ test:do_test(</div><div>       WHERE a=19</div><div>          OR a=23</div><div>          OR c<=10</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.199.1></div><div>@@ -7550,7 +7550,7 @@ test:do_test(</div><div>       WHERE a=19</div><div>          OR a=23</div><div>          OR c<=10</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.199.2></div><div>@@ -7567,7 +7567,7 @@ test:do_test(</div><div>          OR b=792</div><div>          OR b=803</div><div>          OR b=36</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.200.1></div><div>@@ -7584,7 +7584,7 @@ test:do_test(</div><div>          OR b=792</div><div>          OR b=803</div><div>          OR b=36</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.200.2></div><div>@@ -7597,11 +7597,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 71 AND 73) AND a!=72)</div><div>          OR ((a BETWEEN 76 AND 78) AND a!=77)</div><div>          OR f='jklmnopqr'</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>          OR b=891</div><div>          OR a=40</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>@@ -7617,11 +7617,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 71 AND 73) AND a!=72)</div><div>          OR ((a BETWEEN 76 AND 78) AND a!=77)</div><div>          OR f='jklmnopqr'</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>          OR b=891</div><div>          OR a=40</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>@@ -7644,7 +7644,7 @@ test:do_test(</div><div>          OR d>1e10</div><div>          OR b=429</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>          OR c=10010</div><div>          OR ((a BETWEEN 83 AND 85) AND a!=84)</div><div>   ]])</div><div>@@ -7666,7 +7666,7 @@ test:do_test(</div><div>          OR d>1e10</div><div>          OR b=429</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>          OR c=10010</div><div>          OR ((a BETWEEN 83 AND 85) AND a!=84)</div><div>   ]])</div><div>@@ -7681,14 +7681,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR a=22</div><div>          OR a=26</div><div>          OR a=81</div><div>          OR a=53</div><div>          OR ((a BETWEEN 92 AND 94) AND a!=93)</div><div>          OR c=30030</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR a=82</div><div>          OR b=594</div><div>   ]])</div><div>@@ -7703,14 +7703,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR a=22</div><div>          OR a=26</div><div>          OR a=81</div><div>          OR a=53</div><div>          OR ((a BETWEEN 92 AND 94) AND a!=93)</div><div>          OR c=30030</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR a=82</div><div>          OR b=594</div><div>   ]])</div><div>@@ -7727,14 +7727,14 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 34 AND 36) AND a!=35)</div><div>          OR (d>=57.0 AND d<58.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR a=83</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR ((a BETWEEN 99 AND 101) AND a!=100)</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR b=1092</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR b=25</div><div>   ]])</div><div>     end, {</div><div>@@ -7750,14 +7750,14 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 34 AND 36) AND a!=35)</div><div>          OR (d>=57.0 AND d<58.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR a=83</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR ((a BETWEEN 99 AND 101) AND a!=100)</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR b=1092</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR b=25</div><div>   ]])</div><div>     end, {</div><div>@@ -7773,9 +7773,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=20</div><div>          OR b=421</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR a=50</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR (d>=53.0 AND d<54.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -7791,9 +7791,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=20</div><div>          OR b=421</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR a=50</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR (d>=53.0 AND d<54.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -7808,7 +7808,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=960</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.206.1></div><div>@@ -7822,7 +7822,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=960</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.206.2></div><div>@@ -7899,7 +7899,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR b=957</div><div>          OR ((a BETWEEN 48 AND 50) AND a!=49)</div><div>   ]])</div><div>@@ -7914,7 +7914,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR b=957</div><div>          OR ((a BETWEEN 48 AND 50) AND a!=49)</div><div>   ]])</div><div>@@ -7961,7 +7961,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>          OR b=11</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>          OR ((a BETWEEN 14 AND 16) AND a!=15)</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR a=99</div><div>@@ -7979,7 +7979,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>          OR b=11</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>          OR ((a BETWEEN 14 AND 16) AND a!=15)</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR a=99</div><div>@@ -7997,12 +7997,12 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE f='fghijklmn'</div><div>          OR a=16</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 60 AND 62) AND a!=61)</div><div>          OR ((a BETWEEN 90 AND 92) AND a!=91)</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>          OR b=80</div><div>   ]])</div><div>     end, {</div><div>@@ -8018,12 +8018,12 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE f='fghijklmn'</div><div>          OR a=16</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 60 AND 62) AND a!=61)</div><div>          OR ((a BETWEEN 90 AND 92) AND a!=91)</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>          OR b=80</div><div>   ]])</div><div>     end, {</div><div>@@ -8037,10 +8037,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR a=44</div><div>          OR a=43</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>          OR b=25</div><div>   ]])</div><div>     end, {</div><div>@@ -8054,10 +8054,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR a=44</div><div>          OR a=43</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>          OR b=25</div><div>   ]])</div><div>     end, {</div><div>@@ -8134,10 +8134,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=3.0 AND d<4.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'opqrs*')</div><div>+         OR (g='gfedcba' AND f LIKE 'opqrs%')</div><div>          OR b=1015</div><div>          OR c=16016</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR f='abcdefghi'</div><div>          OR b=605</div><div>          OR a=63</div><div>@@ -8154,10 +8154,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=3.0 AND d<4.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'opqrs*')</div><div>+         OR (g='gfedcba' AND f LIKE 'opqrs%')</div><div>          OR b=1015</div><div>          OR c=16016</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR f='abcdefghi'</div><div>          OR b=605</div><div>          OR a=63</div><div>@@ -8173,7 +8173,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+      WHERE (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>          OR b=641</div><div>          OR b=795</div><div>@@ -8189,7 +8189,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+      WHERE (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>          OR b=641</div><div>          OR b=795</div><div>@@ -8281,7 +8281,7 @@ test:do_test(</div><div>          OR b=1089</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>          OR f IS NULL</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.220.1></div><div>@@ -8302,7 +8302,7 @@ test:do_test(</div><div>          OR b=1089</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>          OR f IS NULL</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.220.2></div><div>@@ -8317,15 +8317,15 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=1026</div><div>          OR b=407</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR b=564</div><div>          OR c=23023</div><div>          OR b=891</div><div>          OR c=22022</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.221.1></div><div>@@ -8340,15 +8340,15 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=1026</div><div>          OR b=407</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR b=564</div><div>          OR c=23023</div><div>          OR b=891</div><div>          OR c=22022</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.221.2></div><div>@@ -8395,7 +8395,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 79 AND 81) AND a!=80)</div><div>          OR c=18018</div><div>          OR b=792</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>          OR (d>=8.0 AND d<9.0 AND d IS NOT NULL)</div><div>          OR (d>=91.0 AND d<92.0 AND d IS NOT NULL)</div><div>@@ -8417,7 +8417,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 79 AND 81) AND a!=80)</div><div>          OR c=18018</div><div>          OR b=792</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>          OR (d>=8.0 AND d<9.0 AND d IS NOT NULL)</div><div>          OR (d>=91.0 AND d<92.0 AND d IS NOT NULL)</div><div>@@ -8437,10 +8437,10 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=429</div><div>          OR (d>=33.0 AND d<34.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR b=1070</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.224.1></div><div>@@ -8455,10 +8455,10 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=429</div><div>          OR (d>=33.0 AND d<34.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR b=1070</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.224.2></div><div>@@ -8471,7 +8471,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=572</div><div>   ]])</div><div>     end, {</div><div>@@ -8485,7 +8485,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=572</div><div>   ]])</div><div>     end, {</div><div>@@ -8501,7 +8501,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 62 AND 64) AND a!=63)</div><div>          OR f='abcdefghi'</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.226.1></div><div>@@ -8516,7 +8516,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 62 AND 64) AND a!=63)</div><div>          OR f='abcdefghi'</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.226.2></div><div>@@ -8562,7 +8562,7 @@ test:do_test(</div><div>          OR a=1</div><div>          OR ((a BETWEEN 75 AND 77) AND a!=76)</div><div>          OR a=75</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>   ]])</div><div>     end, {</div><div>@@ -8581,7 +8581,7 @@ test:do_test(</div><div>          OR a=1</div><div>          OR ((a BETWEEN 75 AND 77) AND a!=76)</div><div>          OR a=75</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>   ]])</div><div>     end, {</div><div>@@ -8595,9 +8595,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='gfedcba' AND f GLOB 'nopqr*')</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'nopqr%')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR b=231</div><div>          OR a=87</div><div>   ]])</div><div>@@ -8612,9 +8612,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='gfedcba' AND f GLOB 'nopqr*')</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'nopqr%')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR b=231</div><div>          OR a=87</div><div>   ]])</div><div>@@ -8630,8 +8630,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=77</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>          OR c=24024</div><div>          OR c=5005</div><div>   ]])</div><div>@@ -8647,8 +8647,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=77</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>          OR c=24024</div><div>          OR c=5005</div><div>   ]])</div><div>@@ -8663,13 +8663,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>          OR b=682</div><div>          OR (d>=34.0 AND d<35.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -8683,13 +8683,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>          OR b=682</div><div>          OR (d>=34.0 AND d<35.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -8707,7 +8707,7 @@ test:do_test(</div><div>          OR b=121</div><div>          OR c=2002</div><div>          OR ((a BETWEEN 84 AND 86) AND a!=85)</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.232.1></div><div>@@ -8724,7 +8724,7 @@ test:do_test(</div><div>          OR b=121</div><div>          OR c=2002</div><div>          OR ((a BETWEEN 84 AND 86) AND a!=85)</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.232.2></div><div>@@ -8740,8 +8740,8 @@ test:do_test(</div><div>       WHERE (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>          OR f='abcdefghi'</div><div>          OR b=267</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR a=82</div><div>          OR a=54</div><div>          OR (d>=16.0 AND d<17.0 AND d IS NOT NULL)</div><div>@@ -8761,8 +8761,8 @@ test:do_test(</div><div>       WHERE (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>          OR f='abcdefghi'</div><div>          OR b=267</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR a=82</div><div>          OR a=54</div><div>          OR (d>=16.0 AND d<17.0 AND d IS NOT NULL)</div><div>@@ -8815,9 +8815,9 @@ test:do_test(</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>          OR (d>=94.0 AND d<95.0 AND d IS NOT NULL)</div><div>          OR 1000000<b</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.235.1></div><div>@@ -8836,9 +8836,9 @@ test:do_test(</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>          OR (d>=94.0 AND d<95.0 AND d IS NOT NULL)</div><div>          OR 1000000<b</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.235.2></div><div>@@ -8853,7 +8853,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=1001</div><div>          OR b=168</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -8869,7 +8869,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=1001</div><div>          OR b=168</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -8884,8 +8884,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=51</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>          OR b=330</div><div>   ]])</div><div>     end, {</div><div>@@ -8900,8 +8900,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=51</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>          OR b=330</div><div>   ]])</div><div>     end, {</div><div>@@ -8915,13 +8915,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>          OR b=704</div><div>          OR a=62</div><div>          OR f='pqrstuvwx'</div><div>          OR b=495</div><div>          OR c=26026</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR b<0</div><div>          OR b=597</div><div>   ]])</div><div>@@ -8936,13 +8936,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>          OR b=704</div><div>          OR a=62</div><div>          OR f='pqrstuvwx'</div><div>          OR b=495</div><div>          OR c=26026</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR b<0</div><div>          OR b=597</div><div>   ]])</div><div>@@ -8992,7 +8992,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE c=14014</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=572</div><div>          OR c=15015</div><div>   ]])</div><div>@@ -9008,7 +9008,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE c=14014</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=572</div><div>          OR c=15015</div><div>   ]])</div><div>@@ -9023,9 +9023,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+      WHERE (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>          OR b=850</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 15 AND 17) AND a!=16)</div><div>          OR b=88</div><div>          OR f='hijklmnop'</div><div>@@ -9044,9 +9044,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+      WHERE (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>          OR b=850</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 15 AND 17) AND a!=16)</div><div>          OR b=88</div><div>          OR f='hijklmnop'</div><div>@@ -9073,8 +9073,8 @@ test:do_test(</div><div>          OR b=374</div><div>          OR b=938</div><div>          OR b=773</div><div>-         OR (g='jihgfed' AND f GLOB 'zabcd*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='jihgfed' AND f LIKE 'zabcd%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.242.1></div><div>@@ -9095,8 +9095,8 @@ test:do_test(</div><div>          OR b=374</div><div>          OR b=938</div><div>          OR b=773</div><div>-         OR (g='jihgfed' AND f GLOB 'zabcd*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='jihgfed' AND f LIKE 'zabcd%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.242.2></div><div>@@ -9109,7 +9109,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=146</div><div>   ]])</div><div>     end, {</div><div>@@ -9123,7 +9123,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=146</div><div>   ]])</div><div>     end, {</div><div>@@ -9171,7 +9171,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+      WHERE (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR b=399</div><div>          OR b=1004</div><div>          OR c=16016</div><div>@@ -9193,7 +9193,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+      WHERE (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR b=399</div><div>          OR b=1004</div><div>          OR c=16016</div><div>@@ -9222,8 +9222,8 @@ test:do_test(</div><div>          OR b=861</div><div>          OR (d>=90.0 AND d<91.0 AND d IS NOT NULL)</div><div>          OR b=949</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.246.1></div><div>@@ -9243,8 +9243,8 @@ test:do_test(</div><div>          OR b=861</div><div>          OR (d>=90.0 AND d<91.0 AND d IS NOT NULL)</div><div>          OR b=949</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.246.2></div><div>@@ -9257,7 +9257,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>          OR a=83</div><div>          OR c=26026</div><div>          OR a=49</div><div>@@ -9276,7 +9276,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>          OR a=83</div><div>          OR c=26026</div><div>          OR a=49</div><div>@@ -9328,7 +9328,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=451</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.249.1></div><div>@@ -9342,7 +9342,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=451</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.249.2></div><div>@@ -9356,7 +9356,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=47</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.250.1></div><div>@@ -9370,7 +9370,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=47</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.250.2></div><div>@@ -9384,7 +9384,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=1037</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>          OR b=344</div><div>          OR (d>=86.0 AND d<87.0 AND d IS NOT NULL)</div><div>@@ -9401,7 +9401,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=1037</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>          OR b=344</div><div>          OR (d>=86.0 AND d<87.0 AND d IS NOT NULL)</div><div>@@ -9419,7 +9419,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=506</div><div>          OR ((a BETWEEN 20 AND 22) AND a!=21)</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>          OR b=429</div><div>          OR b=275</div><div>   ]])</div><div>@@ -9436,7 +9436,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=506</div><div>          OR ((a BETWEEN 20 AND 22) AND a!=21)</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>          OR b=429</div><div>          OR b=275</div><div>   ]])</div><div>@@ -9458,7 +9458,7 @@ test:do_test(</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>          OR a=60</div><div>          OR b=80</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>          OR b=616</div><div>   ]])</div><div>     end, {</div><div>@@ -9479,7 +9479,7 @@ test:do_test(</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>          OR a=60</div><div>          OR b=80</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>          OR b=616</div><div>   ]])</div><div>     end, {</div><div>@@ -9521,13 +9521,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>          OR a=43</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>          OR b=586</div><div>          OR c=17017</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR a=87</div><div>          OR b=968</div><div>   ]])</div><div>@@ -9542,13 +9542,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>          OR a=43</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>          OR b=586</div><div>          OR c=17017</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR a=87</div><div>          OR b=968</div><div>   ]])</div><div>@@ -9597,8 +9597,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='rqponml' AND f GLOB 'jklmn*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+      WHERE (g='rqponml' AND f LIKE 'jklmn%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR c>=34035</div><div>          OR b=850</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>@@ -9620,8 +9620,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='rqponml' AND f GLOB 'jklmn*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+      WHERE (g='rqponml' AND f LIKE 'jklmn%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR c>=34035</div><div>          OR b=850</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>@@ -9705,7 +9705,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR b=993</div><div>   ]])</div><div>@@ -9720,7 +9720,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR b=993</div><div>   ]])</div><div>@@ -9739,7 +9739,7 @@ test:do_test(</div><div>          OR a=22</div><div>          OR b=289</div><div>          OR b=795</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR b=242</div><div>          OR a=59</div><div>          OR b=1045</div><div>@@ -9760,7 +9760,7 @@ test:do_test(</div><div>          OR a=22</div><div>          OR b=289</div><div>          OR b=795</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR b=242</div><div>          OR a=59</div><div>          OR b=1045</div><div>@@ -9778,9 +9778,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=245</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR c=3003</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR (d>=33.0 AND d<34.0 AND d IS NOT NULL)</div><div>@@ -9798,9 +9798,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=245</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR c=3003</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR (d>=33.0 AND d<34.0 AND d IS NOT NULL)</div><div>@@ -9817,15 +9817,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>          OR b=220</div><div>          OR b=443</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>          OR a=62</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>          OR b=1023</div><div>          OR a=100</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -9839,15 +9839,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>          OR b=220</div><div>          OR b=443</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>          OR a=62</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>          OR b=1023</div><div>          OR a=100</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -9863,8 +9863,8 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE c=11011</div><div>          OR f='tuvwxyzab'</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.264.1></div><div>@@ -9879,8 +9879,8 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE c=11011</div><div>          OR f='tuvwxyzab'</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.264.2></div><div>@@ -10005,15 +10005,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR b=443</div><div>          OR b=33</div><div>          OR b=762</div><div>          OR b=575</div><div>          OR c=16016</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 41 AND 43) AND a!=42)</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR b=1092</div><div>   ]])</div><div>     end, {</div><div>@@ -10027,15 +10027,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR b=443</div><div>          OR b=33</div><div>          OR b=762</div><div>          OR b=575</div><div>          OR c=16016</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 41 AND 43) AND a!=42)</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR b=1092</div><div>   ]])</div><div>     end, {</div><div>@@ -10051,14 +10051,14 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=806</div><div>          OR b=872</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>          OR f='uvwxyzabc'</div><div>          OR b=748</div><div>          OR b=586</div><div>          OR ((a BETWEEN 15 AND 17) AND a!=16)</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR b=891</div><div>   ]])</div><div>     end, {</div><div>@@ -10074,14 +10074,14 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=806</div><div>          OR b=872</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>          OR f='uvwxyzabc'</div><div>          OR b=748</div><div>          OR b=586</div><div>          OR ((a BETWEEN 15 AND 17) AND a!=16)</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR b=891</div><div>   ]])</div><div>     end, {</div><div>@@ -10097,8 +10097,8 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=693</div><div>          OR f='fghijklmn'</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 71 AND 73) AND a!=72)</div><div>          OR a=96</div><div>   ]])</div><div>@@ -10115,8 +10115,8 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=693</div><div>          OR f='fghijklmn'</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 71 AND 73) AND a!=72)</div><div>          OR a=96</div><div>   ]])</div><div>@@ -10131,7 +10131,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>          OR b=451</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>@@ -10148,7 +10148,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>          OR b=451</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>@@ -10165,16 +10165,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>          OR a=75</div><div>          OR b=960</div><div>-         OR (g='tsrqpon' AND f GLOB 'yzabc*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'yzabc%')</div><div>          OR b=616</div><div>          OR b=330</div><div>          OR ((a BETWEEN 16 AND 18) AND a!=17)</div><div>          OR a=26</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.272.1></div><div>@@ -10187,16 +10187,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>          OR a=75</div><div>          OR b=960</div><div>-         OR (g='tsrqpon' AND f GLOB 'yzabc*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'yzabc%')</div><div>          OR b=616</div><div>          OR b=330</div><div>          OR ((a BETWEEN 16 AND 18) AND a!=17)</div><div>          OR a=26</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.272.2></div><div>@@ -10210,7 +10210,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=762</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.273.1></div><div>@@ -10224,7 +10224,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=762</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.273.2></div><div>@@ -10310,7 +10310,7 @@ test:do_test(</div><div>          OR b=176</div><div>          OR ((a BETWEEN 34 AND 36) AND a!=35)</div><div>          OR b=220</div><div>-         OR (g='tsrqpon' AND f GLOB 'yzabc*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'yzabc%')</div><div>          OR a=4</div><div>   ]])</div><div>     end, {</div><div>@@ -10329,7 +10329,7 @@ test:do_test(</div><div>          OR b=176</div><div>          OR ((a BETWEEN 34 AND 36) AND a!=35)</div><div>          OR b=220</div><div>-         OR (g='tsrqpon' AND f GLOB 'yzabc*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'yzabc%')</div><div>          OR a=4</div><div>   ]])</div><div>     end, {</div><div>@@ -10344,7 +10344,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=29</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR b=979</div><div>          OR b=275</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>@@ -10364,7 +10364,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=29</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR b=979</div><div>          OR b=275</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>@@ -10384,11 +10384,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 43 AND 45) AND a!=44)</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR f='fghijklmn'</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>          OR a=74</div><div>          OR ((a BETWEEN 7 AND 9) AND a!=8)</div><div>@@ -10405,11 +10405,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 43 AND 45) AND a!=44)</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR f='fghijklmn'</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>          OR a=74</div><div>          OR ((a BETWEEN 7 AND 9) AND a!=8)</div><div>@@ -10426,10 +10426,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 80 AND 82) AND a!=81)</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR (d>=42.0 AND d<43.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 49 AND 51) AND a!=50)</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.279.1></div><div>@@ -10443,10 +10443,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 80 AND 82) AND a!=81)</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR (d>=42.0 AND d<43.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 49 AND 51) AND a!=50)</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.279.2></div><div>@@ -10495,11 +10495,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR c=23023</div><div>          OR b=377</div><div>          OR b=858</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.281.1></div><div>@@ -10512,11 +10512,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR c=23023</div><div>          OR b=377</div><div>          OR b=858</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.281.2></div><div>@@ -10532,13 +10532,13 @@ test:do_test(</div><div>       WHERE (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR b=322</div><div>          OR (d>=19.0 AND d<20.0 AND d IS NOT NULL)</div><div>-         OR (g='fedcbaz' AND f GLOB 'pqrst*')</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'pqrst%')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR b=432</div><div>          OR b=55</div><div>          OR a=53</div><div>          OR (d>=74.0 AND d<75.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR b=25</div><div>   ]])</div><div>     end, {</div><div>@@ -10555,13 +10555,13 @@ test:do_test(</div><div>       WHERE (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR b=322</div><div>          OR (d>=19.0 AND d<20.0 AND d IS NOT NULL)</div><div>-         OR (g='fedcbaz' AND f GLOB 'pqrst*')</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'pqrst%')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR b=432</div><div>          OR b=55</div><div>          OR a=53</div><div>          OR (d>=74.0 AND d<75.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR b=25</div><div>   ]])</div><div>     end, {</div><div>@@ -10576,7 +10576,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=484</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR b=616</div><div>          OR c=5005</div><div>          OR ((a BETWEEN 27 AND 29) AND a!=28)</div><div>@@ -10593,7 +10593,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=484</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR b=616</div><div>          OR c=5005</div><div>          OR ((a BETWEEN 27 AND 29) AND a!=28)</div><div>@@ -10610,11 +10610,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=916</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR b=1048</div><div>          OR c=6006</div><div>          OR b=762</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>          OR b=751</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>@@ -10631,11 +10631,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=916</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR b=1048</div><div>          OR c=6006</div><div>          OR b=762</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>          OR b=751</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>@@ -10656,7 +10656,7 @@ test:do_test(</div><div>          OR b=275</div><div>          OR b=396</div><div>          OR c=4004</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR b=319</div><div>          OR ((a BETWEEN 83 AND 85) AND a!=84)</div><div>          OR a=3</div><div>@@ -10678,7 +10678,7 @@ test:do_test(</div><div>          OR b=275</div><div>          OR b=396</div><div>          OR c=4004</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR b=319</div><div>          OR ((a BETWEEN 83 AND 85) AND a!=84)</div><div>          OR a=3</div><div>@@ -10695,16 +10695,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'lmnop*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'lmnop%')</div><div>          OR b=718</div><div>          OR f='vwxyzabcd'</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -10718,16 +10718,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'lmnop*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'lmnop%')</div><div>          OR b=718</div><div>          OR f='vwxyzabcd'</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -10920,9 +10920,9 @@ test:do_test(</div><div>          OR b=231</div><div>          OR b=212</div><div>          OR (d>=36.0 AND d<37.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR c=30030</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.292.1></div><div>@@ -10940,9 +10940,9 @@ test:do_test(</div><div>          OR b=231</div><div>          OR b=212</div><div>          OR (d>=36.0 AND d<37.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR c=30030</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.292.2></div><div>@@ -10996,8 +10996,8 @@ test:do_test(</div><div>          OR f='vwxyzabcd'</div><div>          OR b=762</div><div>          OR a=60</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.294.1></div><div>@@ -11015,8 +11015,8 @@ test:do_test(</div><div>          OR f='vwxyzabcd'</div><div>          OR b=762</div><div>          OR a=60</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.294.2></div><div>@@ -11029,14 +11029,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR a=3</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR b=498</div><div>          OR a=100</div><div>          OR (d>=31.0 AND d<32.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR a=69</div><div>   ]])</div><div>     end, {</div><div>@@ -11050,14 +11050,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR a=3</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR b=498</div><div>          OR a=100</div><div>          OR (d>=31.0 AND d<32.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR a=69</div><div>   ]])</div><div>     end, {</div><div>@@ -11071,12 +11071,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR b=300</div><div>          OR (d>=7.0 AND d<8.0 AND d IS NOT NULL)</div><div>          OR b=58</div><div>          OR ((a BETWEEN 55 AND 57) AND a!=56)</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR b=286</div><div>          OR b=234</div><div>          OR ((a BETWEEN 43 AND 45) AND a!=44)</div><div>@@ -11094,12 +11094,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR b=300</div><div>          OR (d>=7.0 AND d<8.0 AND d IS NOT NULL)</div><div>          OR b=58</div><div>          OR ((a BETWEEN 55 AND 57) AND a!=56)</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR b=286</div><div>          OR b=234</div><div>          OR ((a BETWEEN 43 AND 45) AND a!=44)</div><div>@@ -11121,12 +11121,12 @@ test:do_test(</div><div>          OR ((a BETWEEN 72 AND 74) AND a!=73)</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>          OR b=594</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR ((a BETWEEN 37 AND 39) AND a!=38)</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>   ]])</div><div>     end, {</div><div>@@ -11144,12 +11144,12 @@ test:do_test(</div><div>          OR ((a BETWEEN 72 AND 74) AND a!=73)</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>          OR b=594</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR ((a BETWEEN 37 AND 39) AND a!=38)</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>   ]])</div><div>     end, {</div><div>@@ -11164,8 +11164,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=949</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.298.1></div><div>@@ -11179,8 +11179,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=949</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.298.2></div><div>@@ -11195,13 +11195,13 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=960</div><div>          OR a=44</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR a=39</div><div>          OR b=828</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>          OR d<0.0</div><div>          OR b=770</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>          OR b=594</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>   ]])</div><div>@@ -11218,13 +11218,13 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=960</div><div>          OR a=44</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR a=39</div><div>          OR b=828</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>          OR d<0.0</div><div>          OR b=770</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>          OR b=594</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>   ]])</div><div>@@ -11278,7 +11278,7 @@ test:do_test(</div><div>       WHERE b=1081</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>          OR b=1004</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 29 AND 31) AND a!=30)</div><div>          OR b=660</div><div>          OR b=957</div><div>@@ -11298,7 +11298,7 @@ test:do_test(</div><div>       WHERE b=1081</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>          OR b=1004</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 29 AND 31) AND a!=30)</div><div>          OR b=660</div><div>          OR b=957</div><div>@@ -11320,9 +11320,9 @@ test:do_test(</div><div>          OR f='yzabcdefg'</div><div>          OR b=880</div><div>          OR a=63</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.302.1></div><div>@@ -11340,9 +11340,9 @@ test:do_test(</div><div>          OR f='yzabcdefg'</div><div>          OR b=880</div><div>          OR a=63</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.302.2></div><div>@@ -11357,12 +11357,12 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=69</div><div>          OR b=1103</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR f='wxyzabcde'</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR f='pqrstuvwx'</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR a=59</div><div>          OR b=946</div><div>   ]])</div><div>@@ -11379,12 +11379,12 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=69</div><div>          OR b=1103</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR f='wxyzabcde'</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR f='pqrstuvwx'</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR a=59</div><div>          OR b=946</div><div>   ]])</div><div>@@ -11400,7 +11400,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>          OR a=68</div><div>          OR ((a BETWEEN 14 AND 16) AND a!=15)</div><div>   ]])</div><div>@@ -11416,7 +11416,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>          OR a=68</div><div>          OR ((a BETWEEN 14 AND 16) AND a!=15)</div><div>   ]])</div><div>@@ -11432,7 +11432,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'lmnop*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.305.1></div><div>@@ -11446,7 +11446,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'lmnop*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.305.2></div><div>@@ -11526,12 +11526,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 21 AND 23) AND a!=22)</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR c=14014</div><div>          OR b=990</div><div>-         OR (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'efghi%')</div><div>          OR c=14014</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>          OR b=740</div><div>          OR c=3003</div><div>   ]])</div><div>@@ -11547,12 +11547,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 21 AND 23) AND a!=22)</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR c=14014</div><div>          OR b=990</div><div>-         OR (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'efghi%')</div><div>          OR c=14014</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>          OR b=740</div><div>          OR c=3003</div><div>   ]])</div><div>@@ -11640,7 +11640,7 @@ test:do_test(</div><div>          OR a=4</div><div>          OR b=311</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>          OR b=396</div><div>   ]])</div><div>     end, {</div><div>@@ -11663,7 +11663,7 @@ test:do_test(</div><div>          OR a=4</div><div>          OR b=311</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>          OR b=396</div><div>   ]])</div><div>     end, {</div><div>@@ -11679,7 +11679,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=82</div><div>          OR b=333</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>          OR b=99</div><div>          OR a=63</div><div>          OR a=35</div><div>@@ -11698,7 +11698,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=82</div><div>          OR b=333</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>          OR b=99</div><div>          OR a=63</div><div>          OR a=35</div><div>@@ -11803,9 +11803,9 @@ test:do_test(</div><div>          OR f='hijklmnop'</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>          OR (d>=26.0 AND d<27.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR b=817</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -11824,9 +11824,9 @@ test:do_test(</div><div>          OR f='hijklmnop'</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>          OR (d>=26.0 AND d<27.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR b=817</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -11841,12 +11841,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR b=311</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>          OR a=48</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>          OR c=32032</div><div>          OR f='opqrstuvw'</div><div>          OR b=300</div><div>@@ -11864,12 +11864,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR b=311</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>          OR a=48</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>          OR c=32032</div><div>          OR f='opqrstuvw'</div><div>          OR b=300</div><div>@@ -11889,7 +11889,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=95.0 AND d<96.0 AND d IS NOT NULL)</div><div>          OR b=1070</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>          OR a=22</div><div>@@ -11912,7 +11912,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=95.0 AND d<96.0 AND d IS NOT NULL)</div><div>          OR b=1070</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>          OR a=22</div><div>@@ -11934,7 +11934,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=8.0 AND d<9.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>          OR a=21</div><div>          OR b=1026</div><div>          OR ((a BETWEEN 34 AND 36) AND a!=35)</div><div>@@ -11952,7 +11952,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=8.0 AND d<9.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>          OR a=21</div><div>          OR b=1026</div><div>          OR ((a BETWEEN 34 AND 36) AND a!=35)</div><div>@@ -11975,7 +11975,7 @@ test:do_test(</div><div>          OR a=29</div><div>          OR c=15015</div><div>          OR a=87</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.319.1></div><div>@@ -11994,7 +11994,7 @@ test:do_test(</div><div>          OR a=29</div><div>          OR c=15015</div><div>          OR a=87</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.319.2></div><div>@@ -12042,7 +12042,7 @@ test:do_test(</div><div>          OR a=91</div><div>          OR b=1015</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>   ]])</div><div>     end, {</div><div>@@ -12061,7 +12061,7 @@ test:do_test(</div><div>          OR a=91</div><div>          OR b=1015</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>   ]])</div><div>     end, {</div><div>@@ -12076,12 +12076,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=7</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR b=1015</div><div>          OR b=839</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR b=410</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR a=71</div><div>   ]])</div><div>     end, {</div><div>@@ -12096,12 +12096,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=7</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR b=1015</div><div>          OR b=839</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR b=410</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR a=71</div><div>   ]])</div><div>     end, {</div><div>@@ -12118,12 +12118,12 @@ test:do_test(</div><div>       WHERE b=880</div><div>          OR b=982</div><div>          OR a=52</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR a=24</div><div>          OR ((a BETWEEN 47 AND 49) AND a!=48)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.323.1></div><div>@@ -12139,12 +12139,12 @@ test:do_test(</div><div>       WHERE b=880</div><div>          OR b=982</div><div>          OR a=52</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR a=24</div><div>          OR ((a BETWEEN 47 AND 49) AND a!=48)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.323.2></div><div>@@ -12158,9 +12158,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 67 AND 69) AND a!=68)</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.324.1></div><div>@@ -12174,9 +12174,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 67 AND 69) AND a!=68)</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.324.2></div><div>@@ -12192,7 +12192,7 @@ test:do_test(</div><div>       WHERE f='abcdefghi'</div><div>          OR a=5</div><div>          OR b=124</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=432</div><div>          OR 1000000<b</div><div>          OR a=58</div><div>@@ -12214,7 +12214,7 @@ test:do_test(</div><div>       WHERE f='abcdefghi'</div><div>          OR a=5</div><div>          OR b=124</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=432</div><div>          OR 1000000<b</div><div>          OR a=58</div><div>@@ -12271,7 +12271,7 @@ test:do_test(</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR f='uvwxyzabc'</div><div>   ]])</div><div>     end, {</div><div>@@ -12293,7 +12293,7 @@ test:do_test(</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR f='uvwxyzabc'</div><div>   ]])</div><div>     end, {</div><div>@@ -12308,16 +12308,16 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 57 AND 59) AND a!=58)</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR b=564</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>          OR b=77</div><div>-         OR (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'efghi%')</div><div>          OR b=968</div><div>          OR b=847</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.328.1></div><div>@@ -12331,16 +12331,16 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 57 AND 59) AND a!=58)</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR b=564</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>          OR b=77</div><div>-         OR (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'efghi%')</div><div>          OR b=968</div><div>          OR b=847</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.328.2></div><div>@@ -12421,7 +12421,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>          OR b=693</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>          OR b=968</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR b=132</div><div>@@ -12441,7 +12441,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>          OR b=693</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>          OR b=968</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR b=132</div><div>@@ -12496,11 +12496,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=190</div><div>-         OR (g='mlkjihg' AND f GLOB 'hijkl*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'hijkl%')</div><div>          OR b=924</div><div>          OR (d>=40.0 AND d<41.0 AND d IS NOT NULL)</div><div>          OR b=759</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.333.1></div><div>@@ -12514,11 +12514,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=190</div><div>-         OR (g='mlkjihg' AND f GLOB 'hijkl*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'hijkl%')</div><div>          OR b=924</div><div>          OR (d>=40.0 AND d<41.0 AND d IS NOT NULL)</div><div>          OR b=759</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.333.2></div><div>@@ -12576,12 +12576,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE c=26026</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR c=17017</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>-         OR (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>+         OR (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR ((a BETWEEN 2 AND 4) AND a!=3)</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -12597,12 +12597,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE c=26026</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR c=17017</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>-         OR (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>+         OR (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR ((a BETWEEN 2 AND 4) AND a!=3)</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -12662,9 +12662,9 @@ test:do_test(</div><div>          OR (d>=100.0 AND d<101.0 AND d IS NOT NULL)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR b=300</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR a=41</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>          OR b=135</div><div>          OR b=605</div><div>   ]])</div><div>@@ -12684,9 +12684,9 @@ test:do_test(</div><div>          OR (d>=100.0 AND d<101.0 AND d IS NOT NULL)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR b=300</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR a=41</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>          OR b=135</div><div>          OR b=605</div><div>   ]])</div><div>@@ -12701,16 +12701,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+      WHERE (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR b=762</div><div>          OR b=484</div><div>          OR b=190</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>          OR (d>=74.0 AND d<75.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=1023</div><div>   ]])</div><div>     end, {</div><div>@@ -12724,16 +12724,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+      WHERE (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR b=762</div><div>          OR b=484</div><div>          OR b=190</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>          OR (d>=74.0 AND d<75.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=1023</div><div>   ]])</div><div>     end, {</div><div>@@ -12747,7 +12747,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR a=34</div><div>          OR f='rstuvwxyz'</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>@@ -12764,7 +12764,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR a=34</div><div>          OR f='rstuvwxyz'</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>@@ -12783,7 +12783,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=37.0 AND d<38.0 AND d IS NOT NULL)</div><div>          OR b=1004</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR g IS NULL</div><div>   ]])</div><div>     end, {</div><div>@@ -12799,7 +12799,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=37.0 AND d<38.0 AND d IS NOT NULL)</div><div>          OR b=1004</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR g IS NULL</div><div>   ]])</div><div>     end, {</div><div>@@ -12822,8 +12822,8 @@ test:do_test(</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>          OR a=44</div><div>          OR a=23</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.341.1></div><div>@@ -12845,8 +12845,8 @@ test:do_test(</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>          OR a=44</div><div>          OR a=23</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.341.2></div><div>@@ -12864,8 +12864,8 @@ test:do_test(</div><div>          OR a=11</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR a=13</div><div>          OR a=15</div><div>          OR (d>=29.0 AND d<30.0 AND d IS NOT NULL)</div><div>@@ -12887,8 +12887,8 @@ test:do_test(</div><div>          OR a=11</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR a=13</div><div>          OR a=15</div><div>          OR (d>=29.0 AND d<30.0 AND d IS NOT NULL)</div><div>@@ -13019,16 +13019,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='gfedcba' AND f GLOB 'klmno*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>          OR a=48</div><div>          OR b=113</div><div>          OR ((a BETWEEN 20 AND 22) AND a!=21)</div><div>          OR b=880</div><div>          OR ((a BETWEEN 85 AND 87) AND a!=86)</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.346.1></div><div>@@ -13041,16 +13041,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='gfedcba' AND f GLOB 'klmno*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>          OR a=48</div><div>          OR b=113</div><div>          OR ((a BETWEEN 20 AND 22) AND a!=21)</div><div>          OR b=880</div><div>          OR ((a BETWEEN 85 AND 87) AND a!=86)</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.346.2></div><div>@@ -13065,10 +13065,10 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=517</div><div>          OR b=187</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR b=1092</div><div>          OR ((a BETWEEN 84 AND 86) AND a!=85)</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.347.1></div><div>@@ -13083,10 +13083,10 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=517</div><div>          OR b=187</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR b=1092</div><div>          OR ((a BETWEEN 84 AND 86) AND a!=85)</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.347.2></div><div>@@ -13259,7 +13259,7 @@ test:do_test(</div><div>          OR a=30</div><div>          OR c=3003</div><div>          OR (d>=88.0 AND d<89.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>          OR b=564</div><div>          OR b=55</div><div>          OR a=38</div><div>@@ -13281,7 +13281,7 @@ test:do_test(</div><div>          OR a=30</div><div>          OR c=3003</div><div>          OR (d>=88.0 AND d<89.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>          OR b=564</div><div>          OR b=55</div><div>          OR a=38</div><div>@@ -13328,7 +13328,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=792</div><div>-         OR (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.354.1></div><div>@@ -13342,7 +13342,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=792</div><div>-         OR (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.354.2></div><div>@@ -13357,9 +13357,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>          OR c=21021</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR f='zabcdefgh'</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR b=781</div><div>          OR a=64</div><div>          OR (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>@@ -13377,9 +13377,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>          OR c=21021</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR f='zabcdefgh'</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR b=781</div><div>          OR a=64</div><div>          OR (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>@@ -13395,12 +13395,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR (d>=90.0 AND d<91.0 AND d IS NOT NULL)</div><div>          OR a=34</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR b=319</div><div>          OR b=330</div><div>          OR ((a BETWEEN 28 AND 30) AND a!=29)</div><div>@@ -13416,12 +13416,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR (d>=90.0 AND d<91.0 AND d IS NOT NULL)</div><div>          OR a=34</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR b=319</div><div>          OR b=330</div><div>          OR ((a BETWEEN 28 AND 30) AND a!=29)</div><div>@@ -13437,8 +13437,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='qponmlk' AND f GLOB 'pqrst*')</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'pqrst%')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR a=45</div><div>          OR (d>=81.0 AND d<82.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -13453,8 +13453,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='qponmlk' AND f GLOB 'pqrst*')</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'pqrst%')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR a=45</div><div>          OR (d>=81.0 AND d<82.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -13470,7 +13470,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=53.0 AND d<54.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR b=165</div><div>          OR b=836</div><div>   ]])</div><div>@@ -13486,7 +13486,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=53.0 AND d<54.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR b=165</div><div>          OR b=836</div><div>   ]])</div><div>@@ -13503,7 +13503,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=1034</div><div>          OR f='vwxyzabcd'</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>   ]])</div><div>     end, {</div><div>@@ -13519,7 +13519,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=1034</div><div>          OR f='vwxyzabcd'</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>   ]])</div><div>     end, {</div><div>@@ -13575,12 +13575,12 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=37</div><div>          OR b=88</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR c=23023</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>          OR a=56</div><div>          OR ((a BETWEEN 13 AND 15) AND a!=14)</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR f='ijklmnopq'</div><div>          OR ((a BETWEEN 85 AND 87) AND a!=86)</div><div>   ]])</div><div>@@ -13597,12 +13597,12 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=37</div><div>          OR b=88</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR c=23023</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>          OR a=56</div><div>          OR ((a BETWEEN 13 AND 15) AND a!=14)</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR f='ijklmnopq'</div><div>          OR ((a BETWEEN 85 AND 87) AND a!=86)</div><div>   ]])</div><div>@@ -13620,7 +13620,7 @@ test:do_test(</div><div>       WHERE (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>          OR a=74</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 42 AND 44) AND a!=43)</div><div>   ]])</div><div>     end, {</div><div>@@ -13637,7 +13637,7 @@ test:do_test(</div><div>       WHERE (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>          OR a=74</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 42 AND 44) AND a!=43)</div><div>   ]])</div><div>     end, {</div><div>@@ -13747,13 +13747,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 2 AND 4) AND a!=3)</div><div>          OR b=212</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR a=20</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR b=627</div><div>   ]])</div><div>     end, {</div><div>@@ -13767,13 +13767,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 2 AND 4) AND a!=3)</div><div>          OR b=212</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR a=20</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR b=627</div><div>   ]])</div><div>     end, {</div><div>@@ -13787,7 +13787,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+      WHERE (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>          OR b=157</div><div>          OR b=1026</div><div>@@ -13803,7 +13803,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+      WHERE (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>          OR b=157</div><div>          OR b=1026</div><div>@@ -13823,10 +13823,10 @@ test:do_test(</div><div>          OR a=16</div><div>          OR ((a BETWEEN 80 AND 82) AND a!=81)</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>-         OR (g='wvutsrq' AND f GLOB 'lmnop*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'lmnop%')</div><div>          OR f='zabcdefgh'</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.368.1></div><div>@@ -13843,10 +13843,10 @@ test:do_test(</div><div>          OR a=16</div><div>          OR ((a BETWEEN 80 AND 82) AND a!=81)</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>-         OR (g='wvutsrq' AND f GLOB 'lmnop*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'lmnop%')</div><div>          OR f='zabcdefgh'</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.368.2></div><div>@@ -13895,11 +13895,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE f IS NULL</div><div>          OR a=37</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR ((a BETWEEN 55 AND 57) AND a!=56)</div><div>          OR b=168</div><div>          OR b=22</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR b=506</div><div>   ]])</div><div>     end, {</div><div>@@ -13915,11 +13915,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE f IS NULL</div><div>          OR a=37</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR ((a BETWEEN 55 AND 57) AND a!=56)</div><div>          OR b=168</div><div>          OR b=22</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR b=506</div><div>   ]])</div><div>     end, {</div><div>@@ -13935,11 +13935,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=29</div><div>          OR ((a BETWEEN 26 AND 28) AND a!=27)</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR b=209</div><div>-         OR (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>+         OR (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>          OR b=146</div><div>   ]])</div><div>     end, {</div><div>@@ -13955,11 +13955,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=29</div><div>          OR ((a BETWEEN 26 AND 28) AND a!=27)</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR b=209</div><div>-         OR (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>+         OR (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>          OR b=146</div><div>   ]])</div><div>     end, {</div><div>@@ -14017,7 +14017,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>          OR b=113</div><div>          OR ((a BETWEEN 40 AND 42) AND a!=41)</div><div>@@ -14035,7 +14035,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>          OR b=113</div><div>          OR ((a BETWEEN 40 AND 42) AND a!=41)</div><div>@@ -14081,7 +14081,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='rqponml' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='rqponml' AND f LIKE 'ijklm%')</div><div>          OR a=99</div><div>          OR a=100</div><div>          OR b=429</div><div>@@ -14104,7 +14104,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='rqponml' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='rqponml' AND f LIKE 'ijklm%')</div><div>          OR a=99</div><div>          OR a=100</div><div>          OR b=429</div><div>@@ -14164,9 +14164,9 @@ test:do_test(</div><div>          OR c=6006</div><div>          OR a=18</div><div>          OR c=24024</div><div>-         OR (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR c=19019</div><div>          OR (d>=87.0 AND d<88.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 44 AND 46) AND a!=45)</div><div>@@ -14187,9 +14187,9 @@ test:do_test(</div><div>          OR c=6006</div><div>          OR a=18</div><div>          OR c=24024</div><div>-         OR (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR c=19019</div><div>          OR (d>=87.0 AND d<88.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 44 AND 46) AND a!=45)</div><div>@@ -14243,7 +14243,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=99</div><div>          OR ((a BETWEEN 85 AND 87) AND a!=86)</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.379.1></div><div>@@ -14258,7 +14258,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=99</div><div>          OR ((a BETWEEN 85 AND 87) AND a!=86)</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.379.2></div><div>@@ -14271,7 +14271,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+      WHERE (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR ((a BETWEEN 79 AND 81) AND a!=80)</div><div>          OR b=715</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>@@ -14287,7 +14287,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+      WHERE (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR ((a BETWEEN 79 AND 81) AND a!=80)</div><div>          OR b=715</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>@@ -14304,7 +14304,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>          OR a=46</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -14320,7 +14320,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>          OR a=46</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -14335,7 +14335,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>          OR b=1056</div><div>@@ -14352,7 +14352,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>          OR b=1056</div><div>@@ -14453,7 +14453,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>          OR b=242</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR b=300</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>@@ -14476,7 +14476,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>          OR b=242</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR b=300</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>@@ -14502,7 +14502,7 @@ test:do_test(</div><div>          OR b=1048</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR c=19019</div><div>   ]])</div><div>     end, {</div><div>@@ -14525,7 +14525,7 @@ test:do_test(</div><div>          OR b=1048</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR c=19019</div><div>   ]])</div><div>     end, {</div><div>@@ -14608,10 +14608,10 @@ test:do_test(</div><div>          OR a=58</div><div>          OR b=333</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR b=572</div><div>          OR ((a BETWEEN 50 AND 52) AND a!=51)</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.389.1></div><div>@@ -14631,10 +14631,10 @@ test:do_test(</div><div>          OR a=58</div><div>          OR b=333</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR b=572</div><div>          OR ((a BETWEEN 50 AND 52) AND a!=51)</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.389.2></div><div>@@ -14649,7 +14649,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=1034</div><div>          OR f='lmnopqrst'</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.390.1></div><div>@@ -14664,7 +14664,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=1034</div><div>          OR f='lmnopqrst'</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.390.2></div><div>@@ -14679,7 +14679,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE c=15015</div><div>          OR (d>=87.0 AND d<88.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'hijkl*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'hijkl%')</div><div>          OR b=58</div><div>          OR b=674</div><div>          OR b=979</div><div>@@ -14697,7 +14697,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE c=15015</div><div>          OR (d>=87.0 AND d<88.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'hijkl*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'hijkl%')</div><div>          OR b=58</div><div>          OR b=674</div><div>          OR b=979</div><div>@@ -14747,9 +14747,9 @@ test:do_test(</div><div>          OR (d>=64.0 AND d<65.0 AND d IS NOT NULL)</div><div>          OR b=630</div><div>          OR a=19</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR f='wxyzabcde'</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR b=377</div><div>          OR (d>=48.0 AND d<49.0 AND d IS NOT NULL)</div><div>          OR a=77</div><div>@@ -14770,9 +14770,9 @@ test:do_test(</div><div>          OR (d>=64.0 AND d<65.0 AND d IS NOT NULL)</div><div>          OR b=630</div><div>          OR a=19</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR f='wxyzabcde'</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR b=377</div><div>          OR (d>=48.0 AND d<49.0 AND d IS NOT NULL)</div><div>          OR a=77</div><div>@@ -14818,14 +14818,14 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=64</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR (d>=57.0 AND d<58.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'cdefg*')</div><div>+         OR (g='srqponm' AND f LIKE 'cdefg%')</div><div>          OR c=14014</div><div>          OR b=586</div><div>          OR c=27027</div><div>          OR (d>=86.0 AND d<87.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.395.1></div><div>@@ -14839,14 +14839,14 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=64</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR (d>=57.0 AND d<58.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'cdefg*')</div><div>+         OR (g='srqponm' AND f LIKE 'cdefg%')</div><div>          OR c=14014</div><div>          OR b=586</div><div>          OR c=27027</div><div>          OR (d>=86.0 AND d<87.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.395.2></div><div>@@ -14903,11 +14903,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>          OR a=23</div><div>          OR b=737</div><div>          OR (d>=71.0 AND d<72.0 AND d IS NOT NULL)</div><div>@@ -14926,11 +14926,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>          OR a=23</div><div>          OR b=737</div><div>          OR (d>=71.0 AND d<72.0 AND d IS NOT NULL)</div><div>@@ -14983,10 +14983,10 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=18</div><div>          OR b=1059</div><div>-         OR (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR b=795</div><div>   ]])</div><div>     end, {</div><div>@@ -15002,10 +15002,10 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=18</div><div>          OR b=1059</div><div>-         OR (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR b=795</div><div>   ]])</div><div>     end, {</div><div>@@ -15019,7 +15019,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+      WHERE (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR a=93</div><div>          OR a=11</div><div>          OR f='nopqrstuv'</div><div>@@ -15039,7 +15039,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+      WHERE (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR a=93</div><div>          OR a=11</div><div>          OR f='nopqrstuv'</div><div>@@ -15062,8 +15062,8 @@ test:do_test(</div><div>       WHERE b=685</div><div>          OR a=33</div><div>          OR ((a BETWEEN 40 AND 42) AND a!=41)</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>          OR ((a BETWEEN 80 AND 82) AND a!=81)</div><div>          OR b=715</div><div>@@ -15085,8 +15085,8 @@ test:do_test(</div><div>       WHERE b=685</div><div>          OR a=33</div><div>          OR ((a BETWEEN 40 AND 42) AND a!=41)</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>          OR ((a BETWEEN 80 AND 82) AND a!=81)</div><div>          OR b=715</div><div>@@ -15107,7 +15107,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=89</div><div>          OR b=1037</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.402.1></div><div>@@ -15122,7 +15122,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=89</div><div>          OR b=1037</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.402.2></div><div>@@ -15179,9 +15179,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>-         OR (g='lkjihgf' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>+         OR (g='lkjihgf' AND f LIKE 'mnopq%')</div><div>          OR b=726</div><div>          OR ((a BETWEEN 73 AND 75) AND a!=74)</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>@@ -15201,9 +15201,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>-         OR (g='lkjihgf' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>+         OR (g='lkjihgf' AND f LIKE 'mnopq%')</div><div>          OR b=726</div><div>          OR ((a BETWEEN 73 AND 75) AND a!=74)</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>@@ -15223,7 +15223,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR b=924</div><div>          OR f='lmnopqrst'</div><div>          OR b=1048</div><div>@@ -15239,7 +15239,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR b=924</div><div>          OR f='lmnopqrst'</div><div>          OR b=1048</div><div>@@ -15256,7 +15256,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR b=198</div><div>          OR (d>=58.0 AND d<59.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>@@ -15276,7 +15276,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR b=198</div><div>          OR (d>=58.0 AND d<59.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>@@ -15341,7 +15341,7 @@ test:do_test(</div><div>          OR b=630</div><div>          OR a=55</div><div>          OR c=26026</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -15359,7 +15359,7 @@ test:do_test(</div><div>          OR b=630</div><div>          OR a=55</div><div>          OR c=26026</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -15375,12 +15375,12 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE f='uvwxyzabc'</div><div>          OR f='xyzabcdef'</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR (d>=70.0 AND d<71.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 51 AND 53) AND a!=52)</div><div>          OR (d>=31.0 AND d<32.0 AND d IS NOT NULL)</div><div>          OR b=69</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.409.1></div><div>@@ -15395,12 +15395,12 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE f='uvwxyzabc'</div><div>          OR f='xyzabcdef'</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR (d>=70.0 AND d<71.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 51 AND 53) AND a!=52)</div><div>          OR (d>=31.0 AND d<32.0 AND d IS NOT NULL)</div><div>          OR b=69</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.409.2></div><div>@@ -15417,7 +15417,7 @@ test:do_test(</div><div>          OR b=454</div><div>          OR ((a BETWEEN 92 AND 94) AND a!=93)</div><div>          OR b=179</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR f='qrstuvwxy'</div><div>   ]])</div><div>     end, {</div><div>@@ -15435,7 +15435,7 @@ test:do_test(</div><div>          OR b=454</div><div>          OR ((a BETWEEN 92 AND 94) AND a!=93)</div><div>          OR b=179</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR f='qrstuvwxy'</div><div>   ]])</div><div>     end, {</div><div>@@ -15452,7 +15452,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 6 AND 8) AND a!=7)</div><div>          OR b=619</div><div>          OR a=20</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>          OR b=946</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>          OR a=64</div><div>@@ -15474,7 +15474,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 6 AND 8) AND a!=7)</div><div>          OR b=619</div><div>          OR a=20</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>          OR b=946</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>          OR a=64</div><div>@@ -15527,8 +15527,8 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>          OR a=32</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR c=32032</div><div>   ]])</div><div>     end, {</div><div>@@ -15544,8 +15544,8 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>          OR a=32</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR c=32032</div><div>   ]])</div><div>     end, {</div><div>@@ -15654,7 +15654,7 @@ test:do_test(</div><div>       WHERE (d>=32.0 AND d<33.0 AND d IS NOT NULL)</div><div>          OR a=27</div><div>          OR ((a BETWEEN 55 AND 57) AND a!=56)</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.417.1></div><div>@@ -15670,7 +15670,7 @@ test:do_test(</div><div>       WHERE (d>=32.0 AND d<33.0 AND d IS NOT NULL)</div><div>          OR a=27</div><div>          OR ((a BETWEEN 55 AND 57) AND a!=56)</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.417.2></div><div>@@ -15720,7 +15720,7 @@ test:do_test(</div><div>          OR b=561</div><div>          OR b=352</div><div>          OR (d>=37.0 AND d<38.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>          OR a=95</div><div>   ]])</div><div>     end, {</div><div>@@ -15743,7 +15743,7 @@ test:do_test(</div><div>          OR b=561</div><div>          OR b=352</div><div>          OR (d>=37.0 AND d<38.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>          OR a=95</div><div>   ]])</div><div>     end, {</div><div>@@ -15761,7 +15761,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>          OR f='ghijklmno'</div><div>          OR b=619</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>          OR b=476</div><div>          OR a=83</div><div>@@ -15782,7 +15782,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>          OR f='ghijklmno'</div><div>          OR b=619</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>          OR b=476</div><div>          OR a=83</div><div>@@ -15868,8 +15868,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=1059</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>          OR b=47</div><div>          OR b=660</div><div>          OR ((a BETWEEN 34 AND 36) AND a!=35)</div><div>@@ -15887,8 +15887,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=1059</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>          OR b=47</div><div>          OR b=660</div><div>          OR ((a BETWEEN 34 AND 36) AND a!=35)</div><div>@@ -15936,13 +15936,13 @@ test:do_test(</div><div>       WHERE b=597</div><div>          OR f='lmnopqrst'</div><div>          OR a=24</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>          OR b=1023</div><div>          OR a=53</div><div>          OR a=78</div><div>          OR f='efghijklm'</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR (d>=85.0 AND d<86.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -15959,13 +15959,13 @@ test:do_test(</div><div>       WHERE b=597</div><div>          OR f='lmnopqrst'</div><div>          OR a=24</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>          OR b=1023</div><div>          OR a=53</div><div>          OR a=78</div><div>          OR f='efghijklm'</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR (d>=85.0 AND d<86.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -16012,11 +16012,11 @@ test:do_test(</div><div>       WHERE f='tuvwxyzab'</div><div>          OR b=388</div><div>          OR ((a BETWEEN 84 AND 86) AND a!=85)</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>          OR b=957</div><div>          OR b=663</div><div>          OR b=847</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.427.1></div><div>@@ -16032,11 +16032,11 @@ test:do_test(</div><div>       WHERE f='tuvwxyzab'</div><div>          OR b=388</div><div>          OR ((a BETWEEN 84 AND 86) AND a!=85)</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>          OR b=957</div><div>          OR b=663</div><div>          OR b=847</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.427.2></div><div>@@ -16051,7 +16051,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=81.0 AND d<82.0 AND d IS NOT NULL)</div><div>          OR a=56</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.428.1></div><div>@@ -16066,7 +16066,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=81.0 AND d<82.0 AND d IS NOT NULL)</div><div>          OR a=56</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.428.2></div><div>@@ -16082,7 +16082,7 @@ test:do_test(</div><div>       WHERE c>=34035</div><div>          OR b=168</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.429.1></div><div>@@ -16098,7 +16098,7 @@ test:do_test(</div><div>       WHERE c>=34035</div><div>          OR b=168</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.429.2></div><div>@@ -16144,9 +16144,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=29.0 AND d<30.0 AND d IS NOT NULL)</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR f='rstuvwxyz'</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.431.1></div><div>@@ -16160,9 +16160,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=29.0 AND d<30.0 AND d IS NOT NULL)</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR f='rstuvwxyz'</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.431.2></div><div>@@ -16246,7 +16246,7 @@ test:do_test(</div><div>       WHERE b=113</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>          OR b=113</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR ((a BETWEEN 62 AND 64) AND a!=63)</div><div>          OR c=6006</div><div>          OR (d>=14.0 AND d<15.0 AND d IS NOT NULL)</div><div>@@ -16267,7 +16267,7 @@ test:do_test(</div><div>       WHERE b=113</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>          OR b=113</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR ((a BETWEEN 62 AND 64) AND a!=63)</div><div>          OR c=6006</div><div>          OR (d>=14.0 AND d<15.0 AND d IS NOT NULL)</div><div>@@ -16285,7 +16285,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>          OR c=22022</div><div>          OR ((a BETWEEN 79 AND 81) AND a!=80)</div><div>@@ -16303,7 +16303,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>          OR c=22022</div><div>          OR ((a BETWEEN 79 AND 81) AND a!=80)</div><div>@@ -16322,7 +16322,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 74 AND 76) AND a!=75)</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR b=47</div><div>          OR ((a BETWEEN 44 AND 46) AND a!=45)</div><div>          OR a=92</div><div>@@ -16331,7 +16331,7 @@ test:do_test(</div><div>          OR c=7007</div><div>          OR a=93</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.436.1></div><div>@@ -16345,7 +16345,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 74 AND 76) AND a!=75)</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR b=47</div><div>          OR ((a BETWEEN 44 AND 46) AND a!=45)</div><div>          OR a=92</div><div>@@ -16354,7 +16354,7 @@ test:do_test(</div><div>          OR c=7007</div><div>          OR a=93</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.436.2></div><div>@@ -16367,11 +16367,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR a=13</div><div>-         OR (g='fedcbaz' AND f GLOB 'qrstu*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'qrstu%')</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR c=29029</div><div>          OR b=311</div><div>          OR b=366</div><div>@@ -16389,11 +16389,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR a=13</div><div>-         OR (g='fedcbaz' AND f GLOB 'qrstu*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'qrstu%')</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR c=29029</div><div>          OR b=311</div><div>          OR b=366</div><div>@@ -16453,12 +16453,12 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=82.0 AND d<83.0 AND d IS NOT NULL)</div><div>          OR (d>=36.0 AND d<37.0 AND d IS NOT NULL)</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR (d>=36.0 AND d<37.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR a=41</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>-         OR (g='onmlkji' AND f GLOB 'zabcd*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>+         OR (g='onmlkji' AND f LIKE 'zabcd%')</div><div>          OR b=913</div><div>   ]])</div><div>     end, {</div><div>@@ -16474,12 +16474,12 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=82.0 AND d<83.0 AND d IS NOT NULL)</div><div>          OR (d>=36.0 AND d<37.0 AND d IS NOT NULL)</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR (d>=36.0 AND d<37.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR a=41</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>-         OR (g='onmlkji' AND f GLOB 'zabcd*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>+         OR (g='onmlkji' AND f LIKE 'zabcd%')</div><div>          OR b=913</div><div>   ]])</div><div>     end, {</div><div>@@ -16593,12 +16593,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR b=102</div><div>          OR b=212</div><div>          OR (d>=37.0 AND d<38.0 AND d IS NOT NULL)</div><div>          OR b=487</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.443.1></div><div>@@ -16611,12 +16611,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR b=102</div><div>          OR b=212</div><div>          OR (d>=37.0 AND d<38.0 AND d IS NOT NULL)</div><div>          OR b=487</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.443.2></div><div>@@ -16661,7 +16661,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=872</div><div>          OR ((a BETWEEN 58 AND 60) AND a!=59)</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR b=957</div><div>          OR (d>=42.0 AND d<43.0 AND d IS NOT NULL)</div><div>          OR a=67</div><div>@@ -16680,7 +16680,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=872</div><div>          OR ((a BETWEEN 58 AND 60) AND a!=59)</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR b=957</div><div>          OR (d>=42.0 AND d<43.0 AND d IS NOT NULL)</div><div>          OR a=67</div><div>@@ -16700,12 +16700,12 @@ test:do_test(</div><div>       WHERE b=66</div><div>          OR b=102</div><div>          OR b=396</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR ((a BETWEEN 7 AND 9) AND a!=8)</div><div>          OR b=759</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR f='ghijklmno'</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR ((a BETWEEN 90 AND 92) AND a!=91)</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -16723,12 +16723,12 @@ test:do_test(</div><div>       WHERE b=66</div><div>          OR b=102</div><div>          OR b=396</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR ((a BETWEEN 7 AND 9) AND a!=8)</div><div>          OR b=759</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR f='ghijklmno'</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR ((a BETWEEN 90 AND 92) AND a!=91)</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -16744,8 +16744,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 69 AND 71) AND a!=70)</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR a=72</div><div>          OR b=1100</div><div>          OR b=102</div><div>@@ -16763,8 +16763,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 69 AND 71) AND a!=70)</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR a=72</div><div>          OR b=1100</div><div>          OR b=102</div><div>@@ -16878,7 +16878,7 @@ test:do_test(</div><div>       WHERE b=47</div><div>          OR a=91</div><div>          OR d>1e10</div><div>-         OR (g='srqponm' AND f GLOB 'cdefg*')</div><div>+         OR (g='srqponm' AND f LIKE 'cdefg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.451.1></div><div>@@ -16894,7 +16894,7 @@ test:do_test(</div><div>       WHERE b=47</div><div>          OR a=91</div><div>          OR d>1e10</div><div>-         OR (g='srqponm' AND f GLOB 'cdefg*')</div><div>+         OR (g='srqponm' AND f LIKE 'cdefg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.451.2></div><div>@@ -16975,13 +16975,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+      WHERE (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>          OR b=619</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>          OR c=11011</div><div>          OR b=550</div><div>          OR b=1059</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>          OR (d>=78.0 AND d<79.0 AND d IS NOT NULL)</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>@@ -16998,13 +16998,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+      WHERE (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>          OR b=619</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>          OR c=11011</div><div>          OR b=550</div><div>          OR b=1059</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>          OR (d>=78.0 AND d<79.0 AND d IS NOT NULL)</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>@@ -17021,16 +17021,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>          OR a=78</div><div>          OR a=27</div><div>          OR b=792</div><div>          OR b=946</div><div>          OR c=22022</div><div>          OR a=23</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR b=388</div><div>   ]])</div><div>     end, {</div><div>@@ -17044,16 +17044,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 59 AND 61) AND a!=60)</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>          OR a=78</div><div>          OR a=27</div><div>          OR b=792</div><div>          OR b=946</div><div>          OR c=22022</div><div>          OR a=23</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR b=388</div><div>   ]])</div><div>     end, {</div><div>@@ -17070,8 +17070,8 @@ test:do_test(</div><div>       WHERE c=32032</div><div>          OR f IS NULL</div><div>          OR ((a BETWEEN 37 AND 39) AND a!=38)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR b=825</div><div>   ]])</div><div>     end, {</div><div>@@ -17088,8 +17088,8 @@ test:do_test(</div><div>       WHERE c=32032</div><div>          OR f IS NULL</div><div>          OR ((a BETWEEN 37 AND 39) AND a!=38)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR b=825</div><div>   ]])</div><div>     end, {</div><div>@@ -17104,7 +17104,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=84.0 AND d<85.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR ((a BETWEEN 5 AND 7) AND a!=6)</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR b=1078</div><div>@@ -17126,7 +17126,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=84.0 AND d<85.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR ((a BETWEEN 5 AND 7) AND a!=6)</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR b=1078</div><div>@@ -17147,11 +17147,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR c=25025</div><div>          OR b=550</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.458.1></div><div>@@ -17164,11 +17164,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR c=25025</div><div>          OR b=550</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.458.2></div><div>@@ -17183,7 +17183,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=432</div><div>          OR f='opqrstuvw'</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.459.1></div><div>@@ -17198,7 +17198,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=432</div><div>          OR f='opqrstuvw'</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.459.2></div><div>@@ -17213,7 +17213,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 14 AND 16) AND a!=15)</div><div>          OR b=847</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR b=583</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR (d>=26.0 AND d<27.0 AND d IS NOT NULL)</div><div>@@ -17234,7 +17234,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 14 AND 16) AND a!=15)</div><div>          OR b=847</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR b=583</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR (d>=26.0 AND d<27.0 AND d IS NOT NULL)</div><div>@@ -17299,7 +17299,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR b=586</div><div>          OR d<0.0</div><div>          OR c=9009</div><div>@@ -17315,7 +17315,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR b=586</div><div>          OR d<0.0</div><div>          OR c=9009</div><div>@@ -17378,7 +17378,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 44 AND 46) AND a!=45)</div><div>          OR a=53</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR b=594</div><div>          OR b=80</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>@@ -17399,7 +17399,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 44 AND 46) AND a!=45)</div><div>          OR a=53</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR b=594</div><div>          OR b=80</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>@@ -17482,9 +17482,9 @@ test:do_test(</div><div>       WHERE a=59</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR f='wxyzabcde'</div><div>-         OR (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>+         OR (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>          OR a=70</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>          OR ((a BETWEEN 14 AND 16) AND a!=15)</div><div>@@ -17503,9 +17503,9 @@ test:do_test(</div><div>       WHERE a=59</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR f='wxyzabcde'</div><div>-         OR (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>+         OR (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>          OR a=70</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>          OR ((a BETWEEN 14 AND 16) AND a!=15)</div><div>@@ -17522,7 +17522,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=69</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.468.1></div><div>@@ -17536,7 +17536,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=69</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.468.2></div><div>@@ -17552,8 +17552,8 @@ test:do_test(</div><div>       WHERE a=41</div><div>          OR a=43</div><div>          OR a=92</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'klmno*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.469.1></div><div>@@ -17569,8 +17569,8 @@ test:do_test(</div><div>       WHERE a=41</div><div>          OR a=43</div><div>          OR a=92</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'klmno*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.469.2></div><div>@@ -17617,7 +17617,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE f='fghijklmn'</div><div>          OR f='fghijklmn'</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR b=465</div><div>          OR b=586</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>@@ -17639,7 +17639,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE f='fghijklmn'</div><div>          OR f='fghijklmn'</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR b=465</div><div>          OR b=586</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>@@ -17660,10 +17660,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=34.0 AND d<35.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR b=814</div><div>          OR a=20</div><div>          OR 1000000<b</div><div>@@ -17681,10 +17681,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=34.0 AND d<35.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR b=814</div><div>          OR a=20</div><div>          OR 1000000<b</div><div>@@ -17701,14 +17701,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>          OR c=1001</div><div>          OR b=484</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>          OR c<=10</div><div>          OR a=92</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR ((a BETWEEN 0 AND 2) AND a!=1)</div><div>          OR b=1026</div><div>   ]])</div><div>@@ -17723,14 +17723,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>          OR c=1001</div><div>          OR b=484</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>          OR c<=10</div><div>          OR a=92</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR ((a BETWEEN 0 AND 2) AND a!=1)</div><div>          OR b=1026</div><div>   ]])</div><div>@@ -17746,13 +17746,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=54</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR b=993</div><div>          OR c=22022</div><div>          OR a=68</div><div>          OR ((a BETWEEN 99 AND 101) AND a!=100)</div><div>          OR a=62</div><div>-         OR (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+         OR (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>          OR b=1015</div><div>   ]])</div><div>     end, {</div><div>@@ -17767,13 +17767,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=54</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR b=993</div><div>          OR c=22022</div><div>          OR a=68</div><div>          OR ((a BETWEEN 99 AND 101) AND a!=100)</div><div>          OR a=62</div><div>-         OR (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+         OR (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>          OR b=1015</div><div>   ]])</div><div>     end, {</div><div>@@ -17789,7 +17789,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=319</div><div>          OR a=50</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>@@ -17808,7 +17808,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=319</div><div>          OR a=50</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>@@ -17889,14 +17889,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR (d>=34.0 AND d<35.0 AND d IS NOT NULL)</div><div>          OR b=407</div><div>          OR b=454</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR (d>=91.0 AND d<92.0 AND d IS NOT NULL)</div><div>          OR b=627</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.478.1></div><div>@@ -17909,14 +17909,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR (d>=34.0 AND d<35.0 AND d IS NOT NULL)</div><div>          OR b=407</div><div>          OR b=454</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR (d>=91.0 AND d<92.0 AND d IS NOT NULL)</div><div>          OR b=627</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.478.2></div><div>@@ -17933,7 +17933,7 @@ test:do_test(</div><div>          OR c=34034</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR a=67</div><div>   ]])</div><div>     end, {</div><div>@@ -17951,7 +17951,7 @@ test:do_test(</div><div>          OR c=34034</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR a=67</div><div>   ]])</div><div>     end, {</div><div>@@ -17970,7 +17970,7 @@ test:do_test(</div><div>          OR (d>=81.0 AND d<82.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 2 AND 4) AND a!=3)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.480.1></div><div>@@ -17988,7 +17988,7 @@ test:do_test(</div><div>          OR (d>=81.0 AND d<82.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 2 AND 4) AND a!=3)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.480.2></div><div>@@ -18006,12 +18006,12 @@ test:do_test(</div><div>          OR (d>=46.0 AND d<47.0 AND d IS NOT NULL)</div><div>          OR b=201</div><div>          OR a=99</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 36 AND 38) AND a!=37)</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>          OR b=946</div><div>          OR b=993</div><div>-         OR (g='fedcbaz' AND f GLOB 'qrstu*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.481.1></div><div>@@ -18029,12 +18029,12 @@ test:do_test(</div><div>          OR (d>=46.0 AND d<47.0 AND d IS NOT NULL)</div><div>          OR b=201</div><div>          OR a=99</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 36 AND 38) AND a!=37)</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>          OR b=946</div><div>          OR b=993</div><div>-         OR (g='fedcbaz' AND f GLOB 'qrstu*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.481.2></div><div>@@ -18048,7 +18048,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=806</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR b=916</div><div>          OR b<0</div><div>@@ -18070,7 +18070,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=806</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR b=916</div><div>          OR b<0</div><div>@@ -18093,11 +18093,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=836</div><div>          OR d>1e10</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR f='pqrstuvwx'</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>          OR f='abcdefghi'</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR a=33</div><div>          OR ((a BETWEEN 19 AND 21) AND a!=20)</div><div>          OR ((a BETWEEN 88 AND 90) AND a!=89)</div><div>@@ -18116,11 +18116,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=836</div><div>          OR d>1e10</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR f='pqrstuvwx'</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>          OR f='abcdefghi'</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR a=33</div><div>          OR ((a BETWEEN 19 AND 21) AND a!=20)</div><div>          OR ((a BETWEEN 88 AND 90) AND a!=89)</div><div>@@ -18140,10 +18140,10 @@ test:do_test(</div><div>       WHERE a=48</div><div>          OR a=92</div><div>          OR a=1</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>          OR (d>=7.0 AND d<8.0 AND d IS NOT NULL)</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR b=905</div><div>          OR ((a BETWEEN 51 AND 53) AND a!=52)</div><div>   ]])</div><div>@@ -18161,10 +18161,10 @@ test:do_test(</div><div>       WHERE a=48</div><div>          OR a=92</div><div>          OR a=1</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>          OR (d>=7.0 AND d<8.0 AND d IS NOT NULL)</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR b=905</div><div>          OR ((a BETWEEN 51 AND 53) AND a!=52)</div><div>   ]])</div><div>@@ -18215,12 +18215,12 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=740</div><div>          OR b=564</div><div>-         OR (g='onmlkji' AND f GLOB 'zabcd*')</div><div>+         OR (g='onmlkji' AND f LIKE 'zabcd%')</div><div>          OR a=11</div><div>          OR ((a BETWEEN 44 AND 46) AND a!=45)</div><div>          OR b=322</div><div>          OR (d>=6.0 AND d<7.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR b=902</div><div>          OR c>=34035</div><div>   ]])</div><div>@@ -18237,12 +18237,12 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=740</div><div>          OR b=564</div><div>-         OR (g='onmlkji' AND f GLOB 'zabcd*')</div><div>+         OR (g='onmlkji' AND f LIKE 'zabcd%')</div><div>          OR a=11</div><div>          OR ((a BETWEEN 44 AND 46) AND a!=45)</div><div>          OR b=322</div><div>          OR (d>=6.0 AND d<7.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR b=902</div><div>          OR c>=34035</div><div>   ]])</div><div>@@ -18264,7 +18264,7 @@ test:do_test(</div><div>          OR a=48</div><div>          OR b=927</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>          OR f='abcdefghi'</div><div>          OR b=91</div><div>          OR b=55</div><div>@@ -18287,7 +18287,7 @@ test:do_test(</div><div>          OR a=48</div><div>          OR b=927</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>          OR f='abcdefghi'</div><div>          OR b=91</div><div>          OR b=55</div><div>@@ -18303,7 +18303,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='srqponm' AND f GLOB 'efghi*')</div><div>+      WHERE (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR ((a BETWEEN 88 AND 90) AND a!=89)</div><div>          OR a=20</div><div>          OR b=11</div><div>@@ -18319,7 +18319,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='srqponm' AND f GLOB 'efghi*')</div><div>+      WHERE (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR ((a BETWEEN 88 AND 90) AND a!=89)</div><div>          OR a=20</div><div>          OR b=11</div><div>@@ -18338,7 +18338,7 @@ test:do_test(</div><div>       WHERE (d>=27.0 AND d<28.0 AND d IS NOT NULL)</div><div>          OR b=55</div><div>          OR (d>=13.0 AND d<14.0 AND d IS NOT NULL)</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR a=50</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>@@ -18358,7 +18358,7 @@ test:do_test(</div><div>       WHERE (d>=27.0 AND d<28.0 AND d IS NOT NULL)</div><div>          OR b=55</div><div>          OR (d>=13.0 AND d<14.0 AND d IS NOT NULL)</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR a=50</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>@@ -18375,8 +18375,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='rqponml' AND f GLOB 'ijklm*')</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+      WHERE (g='rqponml' AND f LIKE 'ijklm%')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.490.1></div><div>@@ -18389,8 +18389,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='rqponml' AND f GLOB 'ijklm*')</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+      WHERE (g='rqponml' AND f LIKE 'ijklm%')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.490.2></div><div>@@ -18405,7 +18405,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=704</div><div>          OR b=924</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR b=113</div><div>   ]])</div><div>     end, {</div><div>@@ -18421,7 +18421,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=704</div><div>          OR b=924</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR b=113</div><div>   ]])</div><div>     end, {</div><div>@@ -18503,11 +18503,11 @@ test:do_test(</div><div>          OR b=726</div><div>          OR f='abcdefghi'</div><div>          OR b=179</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR b=539</div><div>          OR b=66</div><div>          OR ((a BETWEEN 86 AND 88) AND a!=87)</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.494.1></div><div>@@ -18524,11 +18524,11 @@ test:do_test(</div><div>          OR b=726</div><div>          OR f='abcdefghi'</div><div>          OR b=179</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR b=539</div><div>          OR b=66</div><div>          OR ((a BETWEEN 86 AND 88) AND a!=87)</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.494.2></div><div>@@ -18573,11 +18573,11 @@ test:do_test(</div><div>          OR b=682</div><div>          OR b=443</div><div>          OR b=836</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 51 AND 53) AND a!=52)</div><div>          OR b=110</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.496.1></div><div>@@ -18594,11 +18594,11 @@ test:do_test(</div><div>          OR b=682</div><div>          OR b=443</div><div>          OR b=836</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 51 AND 53) AND a!=52)</div><div>          OR b=110</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.496.2></div><div>@@ -18611,15 +18611,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+      WHERE (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR b=462</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>          OR a=22</div><div>          OR b=594</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>          OR (d>=57.0 AND d<58.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.497.1></div><div>@@ -18632,15 +18632,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+      WHERE (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR b=462</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>          OR a=22</div><div>          OR b=594</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>          OR (d>=57.0 AND d<58.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.497.2></div><div>@@ -18653,11 +18653,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR f='vwxyzabcd'</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>          OR a=37</div><div>          OR a=50</div><div>   ]])</div><div>@@ -18672,11 +18672,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR f='vwxyzabcd'</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>          OR a=37</div><div>          OR a=50</div><div>   ]])</div><div>@@ -18693,10 +18693,10 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 83 AND 85) AND a!=84)</div><div>          OR b=784</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>          OR b=825</div><div>          OR a=80</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>          OR b=531</div><div>          OR a=100</div><div>@@ -18714,10 +18714,10 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 83 AND 85) AND a!=84)</div><div>          OR b=784</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>          OR b=825</div><div>          OR a=80</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>          OR b=531</div><div>          OR a=100</div><div>@@ -18733,7 +18733,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR b=220</div><div>          OR (d>=53.0 AND d<54.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -18748,7 +18748,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR b=220</div><div>          OR (d>=53.0 AND d<54.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -18797,9 +18797,9 @@ test:do_test(</div><div>          OR b=894</div><div>          OR c=28028</div><div>          OR b=905</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR b=1037</div><div>   ]])</div><div>     end, {</div><div>@@ -18817,9 +18817,9 @@ test:do_test(</div><div>          OR b=894</div><div>          OR c=28028</div><div>          OR b=905</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR b=1037</div><div>   ]])</div><div>     end, {</div><div>@@ -18863,9 +18863,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR b=861</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.504.1></div><div>@@ -18878,9 +18878,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR b=861</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.504.2></div><div>@@ -18894,13 +18894,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=704</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>          OR b=25</div><div>-         OR (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+         OR (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR b=487</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 77 AND 79) AND a!=78)</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>          OR (d>=84.0 AND d<85.0 AND d IS NOT NULL)</div><div>@@ -18917,13 +18917,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=704</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>          OR b=25</div><div>-         OR (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+         OR (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR b=487</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 77 AND 79) AND a!=78)</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>          OR (d>=84.0 AND d<85.0 AND d IS NOT NULL)</div><div>@@ -18940,16 +18940,16 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=19</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>          OR b=674</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>          OR b=355</div><div>          OR ((a BETWEEN 72 AND 74) AND a!=73)</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR c=28028</div><div>          OR b=649</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.506.1></div><div>@@ -18963,16 +18963,16 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=19</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>          OR b=674</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>          OR b=355</div><div>          OR ((a BETWEEN 72 AND 74) AND a!=73)</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR c=28028</div><div>          OR b=649</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.506.2></div><div>@@ -19020,7 +19020,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=135</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>   ]])</div><div>     end, {</div><div>@@ -19035,7 +19035,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=135</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>   ]])</div><div>     end, {</div><div>@@ -19049,8 +19049,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.509.1></div><div>@@ -19063,8 +19063,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.509.2></div><div>@@ -19077,7 +19077,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR f='ghijklmno'</div><div>   ]])</div><div>     end, {</div><div>@@ -19091,7 +19091,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR f='ghijklmno'</div><div>   ]])</div><div>     end, {</div><div>@@ -19187,7 +19187,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?lmno*' AND f GLOB 'klmn*')</div><div>+      WHERE (f LIKE '_lmno%' AND f LIKE 'klmn%')</div><div>          OR ((a BETWEEN 5 AND 7) AND a!=6)</div><div>          OR b=99</div><div>          OR a=54</div><div>@@ -19203,7 +19203,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?lmno*' AND f GLOB 'klmn*')</div><div>+      WHERE (f LIKE '_lmno%' AND f LIKE 'klmn%')</div><div>          OR ((a BETWEEN 5 AND 7) AND a!=6)</div><div>          OR b=99</div><div>          OR a=54</div><div>@@ -19220,7 +19220,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=300</div><div>-         OR (g='mlkjihg' AND f GLOB 'klmno*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'klmno%')</div><div>          OR b=319</div><div>          OR f='fghijklmn'</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>@@ -19238,7 +19238,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=300</div><div>-         OR (g='mlkjihg' AND f GLOB 'klmno*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'klmno%')</div><div>          OR b=319</div><div>          OR f='fghijklmn'</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>@@ -19263,7 +19263,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 5 AND 7) AND a!=6)</div><div>          OR (d>=82.0 AND d<83.0 AND d IS NOT NULL)</div><div>          OR b=748</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.515.1></div><div>@@ -19284,7 +19284,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 5 AND 7) AND a!=6)</div><div>          OR (d>=82.0 AND d<83.0 AND d IS NOT NULL)</div><div>          OR b=748</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.515.2></div><div>@@ -19333,10 +19333,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>          OR b=110</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR c=26026</div><div>          OR (d>=69.0 AND d<70.0 AND d IS NOT NULL)</div><div>          OR b=850</div><div>@@ -19353,10 +19353,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>          OR b=110</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR c=26026</div><div>          OR (d>=69.0 AND d<70.0 AND d IS NOT NULL)</div><div>          OR b=850</div><div>@@ -19375,9 +19375,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 74 AND 76) AND a!=75)</div><div>          OR ((a BETWEEN 1 AND 3) AND a!=2)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'klmno*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'klmno%')</div><div>          OR b=135</div><div>          OR a=28</div><div>          OR ((a BETWEEN 1 AND 3) AND a!=2)</div><div>@@ -19396,9 +19396,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 74 AND 76) AND a!=75)</div><div>          OR ((a BETWEEN 1 AND 3) AND a!=2)</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'klmno*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'klmno%')</div><div>          OR b=135</div><div>          OR a=28</div><div>          OR ((a BETWEEN 1 AND 3) AND a!=2)</div><div>@@ -19485,9 +19485,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR a=52</div><div>   ]])</div><div>     end, {</div><div>@@ -19501,9 +19501,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR a=52</div><div>   ]])</div><div>     end, {</div><div>@@ -19517,7 +19517,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR ((a BETWEEN 2 AND 4) AND a!=3)</div><div>          OR a=86</div><div>          OR c=33033</div><div>@@ -19535,7 +19535,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR ((a BETWEEN 2 AND 4) AND a!=3)</div><div>          OR a=86</div><div>          OR c=33033</div><div>@@ -19557,7 +19557,7 @@ test:do_test(</div><div>          OR b=517</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR f='defghijkl'</div><div>          OR b=707</div><div>          OR c>=34035</div><div>@@ -19580,7 +19580,7 @@ test:do_test(</div><div>          OR b=517</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR f='defghijkl'</div><div>          OR b=707</div><div>          OR c>=34035</div><div>@@ -19602,7 +19602,7 @@ test:do_test(</div><div>       WHERE (d>=96.0 AND d<97.0 AND d IS NOT NULL)</div><div>          OR b=209</div><div>          OR b=399</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.524.1></div><div>@@ -19618,7 +19618,7 @@ test:do_test(</div><div>       WHERE (d>=96.0 AND d<97.0 AND d IS NOT NULL)</div><div>          OR b=209</div><div>          OR b=399</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.524.2></div><div>@@ -19632,11 +19632,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 18 AND 20) AND a!=19)</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR b=597</div><div>          OR a=95</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR b=432</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -19652,11 +19652,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 18 AND 20) AND a!=19)</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR b=597</div><div>          OR a=95</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR b=432</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -19680,7 +19680,7 @@ test:do_test(</div><div>          OR c=21021</div><div>          OR b=330</div><div>          OR b=231</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.526.1></div><div>@@ -19702,7 +19702,7 @@ test:do_test(</div><div>          OR c=21021</div><div>          OR b=330</div><div>          OR b=231</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.526.2></div><div>@@ -19715,7 +19715,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>          OR f IS NULL</div><div>   ]])</div><div>@@ -19730,7 +19730,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>          OR f IS NULL</div><div>   ]])</div><div>@@ -19746,9 +19746,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 99 AND 101) AND a!=100)</div><div>-         OR (g='fedcbaz' AND f GLOB 'pqrst*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'pqrst%')</div><div>          OR 1000000<b</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>          OR b=990</div><div>   ]])</div><div>     end, {</div><div>@@ -19763,9 +19763,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 99 AND 101) AND a!=100)</div><div>-         OR (g='fedcbaz' AND f GLOB 'pqrst*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'pqrst%')</div><div>          OR 1000000<b</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>          OR b=990</div><div>   ]])</div><div>     end, {</div><div>@@ -19781,7 +19781,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=165</div><div>          OR a=69</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.529.1></div><div>@@ -19796,7 +19796,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=165</div><div>          OR a=69</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.529.2></div><div>@@ -19809,13 +19809,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'defgh*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'defgh%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR b=784</div><div>          OR b=583</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR b=814</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR b=619</div><div>          OR (d>=80.0 AND d<81.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -19830,13 +19830,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'defgh*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'defgh%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR b=784</div><div>          OR b=583</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR b=814</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR b=619</div><div>          OR (d>=80.0 AND d<81.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -19853,7 +19853,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=86</div><div>          OR b=484</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR b=418</div><div>          OR b=509</div><div>          OR a=42</div><div>@@ -19876,7 +19876,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=86</div><div>          OR b=484</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR b=418</div><div>          OR b=509</div><div>          OR a=42</div><div>@@ -20007,7 +20007,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+      WHERE (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR c=5005</div><div>          OR ((a BETWEEN 50 AND 52) AND a!=51)</div><div>          OR a=93</div><div>@@ -20015,7 +20015,7 @@ test:do_test(</div><div>          OR b=619</div><div>          OR b=234</div><div>          OR b=55</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -20029,7 +20029,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+      WHERE (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR c=5005</div><div>          OR ((a BETWEEN 50 AND 52) AND a!=51)</div><div>          OR a=93</div><div>@@ -20037,7 +20037,7 @@ test:do_test(</div><div>          OR b=619</div><div>          OR b=234</div><div>          OR b=55</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -20053,11 +20053,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=355</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=806</div><div>          OR b=462</div><div>          OR b=531</div><div>-         OR (g='lkjihgf' AND f GLOB 'lmnop*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'lmnop%')</div><div>          OR f='mnopqrstu'</div><div>   ]])</div><div>     end, {</div><div>@@ -20073,11 +20073,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=355</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=806</div><div>          OR b=462</div><div>          OR b=531</div><div>-         OR (g='lkjihgf' AND f GLOB 'lmnop*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'lmnop%')</div><div>          OR f='mnopqrstu'</div><div>   ]])</div><div>     end, {</div><div>@@ -20093,9 +20093,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 60 AND 62) AND a!=61)</div><div>          OR f='pqrstuvwx'</div><div>-         OR (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'efghi%')</div><div>          OR b=495</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>          OR a=75</div><div>   ]])</div><div>     end, {</div><div>@@ -20111,9 +20111,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 60 AND 62) AND a!=61)</div><div>          OR f='pqrstuvwx'</div><div>-         OR (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'efghi%')</div><div>          OR b=495</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>          OR a=75</div><div>   ]])</div><div>     end, {</div><div>@@ -20127,8 +20127,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'efghi*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'efghi%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR b=748</div><div>          OR b=913</div><div>          OR (d>=5.0 AND d<6.0 AND d IS NOT NULL)</div><div>@@ -20145,8 +20145,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'efghi*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'efghi%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR b=748</div><div>          OR b=913</div><div>          OR (d>=5.0 AND d<6.0 AND d IS NOT NULL)</div><div>@@ -20167,7 +20167,7 @@ test:do_test(</div><div>          OR b=902</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR b=168</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR a=50</div><div>          OR f='uvwxyzabc'</div><div>          OR b=836</div><div>@@ -20189,7 +20189,7 @@ test:do_test(</div><div>          OR b=902</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR b=168</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR a=50</div><div>          OR f='uvwxyzabc'</div><div>          OR b=836</div><div>@@ -20243,13 +20243,13 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=814</div><div>          OR c=30030</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR (d>=34.0 AND d<35.0 AND d IS NOT NULL)</div><div>          OR a=16</div><div>          OR b=1048</div><div>          OR b=113</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR b=729</div><div>          OR a=54</div><div>   ]])</div><div>@@ -20266,13 +20266,13 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=814</div><div>          OR c=30030</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR (d>=34.0 AND d<35.0 AND d IS NOT NULL)</div><div>          OR a=16</div><div>          OR b=1048</div><div>          OR b=113</div><div>          OR (d>=61.0 AND d<62.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR b=729</div><div>          OR a=54</div><div>   ]])</div><div>@@ -20288,15 +20288,15 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=399</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>          OR b=814</div><div>          OR c=22022</div><div>          OR (d>=8.0 AND d<9.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR a=1</div><div>          OR b=311</div><div>          OR b=121</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR b=198</div><div>   ]])</div><div>     end, {</div><div>@@ -20311,15 +20311,15 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=399</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>          OR b=814</div><div>          OR c=22022</div><div>          OR (d>=8.0 AND d<9.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR a=1</div><div>          OR b=311</div><div>          OR b=121</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR b=198</div><div>   ]])</div><div>     end, {</div><div>@@ -20403,7 +20403,7 @@ test:do_test(</div><div>          OR a=22</div><div>          OR b=594</div><div>          OR (d>=15.0 AND d<16.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.545.1></div><div>@@ -20424,7 +20424,7 @@ test:do_test(</div><div>          OR a=22</div><div>          OR b=594</div><div>          OR (d>=15.0 AND d<16.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.545.2></div><div>@@ -20443,7 +20443,7 @@ test:do_test(</div><div>          OR (d>=25.0 AND d<26.0 AND d IS NOT NULL)</div><div>          OR (d>=69.0 AND d<70.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR f='mnopqrstu'</div><div>          OR (d>=17.0 AND d<18.0 AND d IS NOT NULL)</div><div>          OR b=902</div><div>@@ -20465,7 +20465,7 @@ test:do_test(</div><div>          OR (d>=25.0 AND d<26.0 AND d IS NOT NULL)</div><div>          OR (d>=69.0 AND d<70.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR f='mnopqrstu'</div><div>          OR (d>=17.0 AND d<18.0 AND d IS NOT NULL)</div><div>          OR b=902</div><div>@@ -20481,8 +20481,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='onmlkji' AND f GLOB 'zabcd*')</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+      WHERE (g='onmlkji' AND f LIKE 'zabcd%')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR a=13</div><div>   ]])</div><div>     end, {</div><div>@@ -20496,8 +20496,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='onmlkji' AND f GLOB 'zabcd*')</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+      WHERE (g='onmlkji' AND f LIKE 'zabcd%')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR a=13</div><div>   ]])</div><div>     end, {</div><div>@@ -20511,11 +20511,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR b=410</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR b=418</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -20529,11 +20529,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR b=410</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR b=418</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -20552,8 +20552,8 @@ test:do_test(</div><div>          OR a=56</div><div>          OR a=46</div><div>          OR (d>=100.0 AND d<101.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR (d>=41.0 AND d<42.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -20572,8 +20572,8 @@ test:do_test(</div><div>          OR a=56</div><div>          OR a=46</div><div>          OR (d>=100.0 AND d<101.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR (d>=41.0 AND d<42.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -20633,7 +20633,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=539</div><div>          OR b=418</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR b=759</div><div>   ]])</div><div>     end, {</div><div>@@ -20649,7 +20649,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=539</div><div>          OR b=418</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR b=759</div><div>   ]])</div><div>     end, {</div><div>@@ -20664,8 +20664,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=1001</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR c=34034</div><div>          OR a=84</div><div>   ]])</div><div>@@ -20681,8 +20681,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=1001</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR c=34034</div><div>          OR a=84</div><div>   ]])</div><div>@@ -20702,7 +20702,7 @@ test:do_test(</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 71 AND 73) AND a!=72)</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR b=322</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>          OR c=34034</div><div>@@ -20724,7 +20724,7 @@ test:do_test(</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 71 AND 73) AND a!=72)</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR b=322</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>          OR c=34034</div><div>@@ -20742,12 +20742,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE c=13013</div><div>-         OR (g='fedcbaz' AND f GLOB 'qrstu*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'qrstu%')</div><div>          OR (d>=42.0 AND d<43.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=47</div><div>          OR (d>=79.0 AND d<80.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=828</div><div>   ]])</div><div>     end, {</div><div>@@ -20762,12 +20762,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE c=13013</div><div>-         OR (g='fedcbaz' AND f GLOB 'qrstu*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'qrstu%')</div><div>          OR (d>=42.0 AND d<43.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=47</div><div>          OR (d>=79.0 AND d<80.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=828</div><div>   ]])</div><div>     end, {</div><div>@@ -20783,7 +20783,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=451</div><div>          OR b=836</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.555.1></div><div>@@ -20798,7 +20798,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=451</div><div>          OR b=836</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.555.2></div><div>@@ -20848,7 +20848,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE f='tuvwxyzab'</div><div>-         OR (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'efghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.557.1></div><div>@@ -20862,7 +20862,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE f='tuvwxyzab'</div><div>-         OR (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'efghi%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.557.2></div><div>@@ -20881,7 +20881,7 @@ test:do_test(</div><div>          OR d<0.0</div><div>          OR b=982</div><div>          OR (d>=2.0 AND d<3.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>          OR e IS NULL</div><div>          OR c=32032</div><div>@@ -20904,7 +20904,7 @@ test:do_test(</div><div>          OR d<0.0</div><div>          OR b=982</div><div>          OR (d>=2.0 AND d<3.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>          OR e IS NULL</div><div>          OR c=32032</div><div>@@ -20922,9 +20922,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=62</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.559.1></div><div>@@ -20938,9 +20938,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=62</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.559.2></div><div>@@ -20994,8 +20994,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=44</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.561.1></div><div>@@ -21009,8 +21009,8 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=44</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.561.2></div><div>@@ -21026,7 +21026,7 @@ test:do_test(</div><div>       WHERE b=883</div><div>          OR b=311</div><div>          OR b=880</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR a=88</div><div>          OR b=154</div><div>@@ -21048,7 +21048,7 @@ test:do_test(</div><div>       WHERE b=883</div><div>          OR b=311</div><div>          OR b=880</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR a=88</div><div>          OR b=154</div><div>@@ -21067,12 +21067,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+      WHERE (g='onmlkji' AND f LIKE 'xyzab%')</div><div>          OR a=10</div><div>          OR b=190</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>          OR b=385</div><div>          OR a=82</div><div>@@ -21090,12 +21090,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+      WHERE (g='onmlkji' AND f LIKE 'xyzab%')</div><div>          OR a=10</div><div>          OR b=190</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>          OR b=385</div><div>          OR a=82</div><div>@@ -21151,7 +21151,7 @@ test:do_test(</div><div>          OR a=49</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>          OR c=33033</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>          OR (d>=81.0 AND d<82.0 AND d IS NOT NULL)</div><div>          OR g IS NULL</div><div>          OR b=220</div><div>@@ -21174,7 +21174,7 @@ test:do_test(</div><div>          OR a=49</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>          OR c=33033</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>          OR (d>=81.0 AND d<82.0 AND d IS NOT NULL)</div><div>          OR g IS NULL</div><div>          OR b=220</div><div>@@ -21191,7 +21191,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>          OR b=212</div><div>          OR b=418</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>@@ -21207,7 +21207,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>          OR b=212</div><div>          OR b=418</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>@@ -21283,8 +21283,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.569.1></div><div>@@ -21297,8 +21297,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.569.2></div><div>@@ -21356,7 +21356,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE c=18018</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR b=410</div><div>          OR b=858</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>@@ -21373,7 +21373,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE c=18018</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR b=410</div><div>          OR b=858</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>@@ -21389,7 +21389,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>          OR b=781</div><div>   ]])</div><div>     end, {</div><div>@@ -21403,7 +21403,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>          OR b=781</div><div>   ]])</div><div>     end, {</div><div>@@ -21420,10 +21420,10 @@ test:do_test(</div><div>       WHERE b=1070</div><div>          OR ((a BETWEEN 50 AND 52) AND a!=51)</div><div>          OR a=54</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR a=9</div><div>          OR (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -21440,10 +21440,10 @@ test:do_test(</div><div>       WHERE b=1070</div><div>          OR ((a BETWEEN 50 AND 52) AND a!=51)</div><div>          OR a=54</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR a=9</div><div>          OR (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -21460,8 +21460,8 @@ test:do_test(</div><div>       WHERE a=55</div><div>          OR a=62</div><div>          OR a=63</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>          OR ((a BETWEEN 99 AND 101) AND a!=100)</div><div>   ]])</div><div>     end, {</div><div>@@ -21478,8 +21478,8 @@ test:do_test(</div><div>       WHERE a=55</div><div>          OR a=62</div><div>          OR a=63</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>          OR ((a BETWEEN 99 AND 101) AND a!=100)</div><div>   ]])</div><div>     end, {</div><div>@@ -21527,9 +21527,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=553</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR (d>=59.0 AND d<60.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=583</div><div>          OR a=56</div><div>   ]])</div><div>@@ -21546,9 +21546,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=553</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR (d>=59.0 AND d<60.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=583</div><div>          OR a=56</div><div>   ]])</div><div>@@ -21565,7 +21565,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=83</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR a=1</div><div>          OR ((a BETWEEN 17 AND 19) AND a!=18)</div><div>          OR ((a BETWEEN 49 AND 51) AND a!=50)</div><div>@@ -21584,7 +21584,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=83</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR a=1</div><div>          OR ((a BETWEEN 17 AND 19) AND a!=18)</div><div>          OR ((a BETWEEN 49 AND 51) AND a!=50)</div><div>@@ -21635,7 +21635,7 @@ test:do_test(</div><div>          OR a=92</div><div>          OR a=63</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.579.1></div><div>@@ -21652,7 +21652,7 @@ test:do_test(</div><div>          OR a=92</div><div>          OR a=63</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.579.2></div><div>@@ -21668,7 +21668,7 @@ test:do_test(</div><div>       WHERE b=440</div><div>          OR f='vwxyzabcd'</div><div>          OR b=190</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR (d>=42.0 AND d<43.0 AND d IS NOT NULL)</div><div>          OR b=88</div><div>          OR b=58</div><div>@@ -21687,7 +21687,7 @@ test:do_test(</div><div>       WHERE b=440</div><div>          OR f='vwxyzabcd'</div><div>          OR b=190</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR (d>=42.0 AND d<43.0 AND d IS NOT NULL)</div><div>          OR b=88</div><div>          OR b=58</div><div>@@ -21707,7 +21707,7 @@ test:do_test(</div><div>          OR c=24024</div><div>          OR (d>=82.0 AND d<83.0 AND d IS NOT NULL)</div><div>          OR b=1001</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR d>1e10</div><div>          OR b=531</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>@@ -21728,7 +21728,7 @@ test:do_test(</div><div>          OR c=24024</div><div>          OR (d>=82.0 AND d<83.0 AND d IS NOT NULL)</div><div>          OR b=1001</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR d>1e10</div><div>          OR b=531</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>@@ -21774,7 +21774,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 71 AND 73) AND a!=72)</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR ((a BETWEEN 80 AND 82) AND a!=81)</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>@@ -21795,7 +21795,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 71 AND 73) AND a!=72)</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR ((a BETWEEN 80 AND 82) AND a!=81)</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>@@ -21820,8 +21820,8 @@ test:do_test(</div><div>          OR b=806</div><div>          OR b=605</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.584.1></div><div>@@ -21839,8 +21839,8 @@ test:do_test(</div><div>          OR b=806</div><div>          OR b=605</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.584.2></div><div>@@ -21856,9 +21856,9 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 84 AND 86) AND a!=85)</div><div>          OR b=572</div><div>          OR c=10010</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR a=29</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.585.1></div><div>@@ -21874,9 +21874,9 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 84 AND 86) AND a!=85)</div><div>          OR b=572</div><div>          OR c=10010</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR a=29</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.585.2></div><div>@@ -21962,9 +21962,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE c=5005</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR b=143</div><div>          OR a=68</div><div>          OR a=77</div><div>@@ -21982,9 +21982,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE c=5005</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR b=143</div><div>          OR a=68</div><div>          OR a=77</div><div>@@ -22002,10 +22002,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=5.0 AND d<6.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 76 AND 78) AND a!=77)</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR a=99</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>   ]])</div><div>@@ -22021,10 +22021,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=5.0 AND d<6.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 76 AND 78) AND a!=77)</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR a=99</div><div>          OR ((a BETWEEN 12 AND 14) AND a!=13)</div><div>   ]])</div><div>@@ -22039,12 +22039,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR ((a BETWEEN 88 AND 90) AND a!=89)</div><div>          OR (d>=13.0 AND d<14.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR b=971</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.590.1></div><div>@@ -22057,12 +22057,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR ((a BETWEEN 88 AND 90) AND a!=89)</div><div>          OR (d>=13.0 AND d<14.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR b=971</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.590.2></div><div>@@ -22075,12 +22075,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?lmno*' AND f GLOB 'klmn*')</div><div>+      WHERE (f LIKE '_lmno%' AND f LIKE 'klmn%')</div><div>          OR b=806</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR b=1015</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.591.1></div><div>@@ -22093,12 +22093,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?lmno*' AND f GLOB 'klmn*')</div><div>+      WHERE (f LIKE '_lmno%' AND f LIKE 'klmn%')</div><div>          OR b=806</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR b=1015</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.591.2></div><div>@@ -22119,7 +22119,7 @@ test:do_test(</div><div>          OR a=26</div><div>          OR b=1048</div><div>          OR b=561</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 55 AND 57) AND a!=56)</div><div>          OR a=56</div><div>   ]])</div><div>@@ -22142,7 +22142,7 @@ test:do_test(</div><div>          OR a=26</div><div>          OR b=1048</div><div>          OR b=561</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 55 AND 57) AND a!=56)</div><div>          OR a=56</div><div>   ]])</div><div>@@ -22165,7 +22165,7 @@ test:do_test(</div><div>          OR b=113</div><div>          OR (d>=16.0 AND d<17.0 AND d IS NOT NULL)</div><div>          OR b=385</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.593.1></div><div>@@ -22186,7 +22186,7 @@ test:do_test(</div><div>          OR b=113</div><div>          OR (d>=16.0 AND d<17.0 AND d IS NOT NULL)</div><div>          OR b=385</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.593.2></div><div>@@ -22204,7 +22204,7 @@ test:do_test(</div><div>          OR b=674</div><div>          OR b=825</div><div>          OR b=704</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 58 AND 60) AND a!=59)</div><div>          OR a=76</div><div>@@ -22227,7 +22227,7 @@ test:do_test(</div><div>          OR b=674</div><div>          OR b=825</div><div>          OR b=704</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 58 AND 60) AND a!=59)</div><div>          OR a=76</div><div>@@ -22246,7 +22246,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=869</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.595.1></div><div>@@ -22260,7 +22260,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=869</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.595.2></div><div>@@ -22303,12 +22303,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='rqponml' AND f GLOB 'hijkl*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+      WHERE (g='rqponml' AND f LIKE 'hijkl%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR a=8</div><div>          OR a=72</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.597.1></div><div>@@ -22321,12 +22321,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='rqponml' AND f GLOB 'hijkl*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+      WHERE (g='rqponml' AND f LIKE 'hijkl%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR a=8</div><div>          OR a=72</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.597.2></div><div>@@ -22342,7 +22342,7 @@ test:do_test(</div><div>       WHERE a=20</div><div>          OR ((a BETWEEN 74 AND 76) AND a!=75)</div><div>          OR b=341</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR b=814</div><div>          OR b=1026</div><div>          OR a=14</div><div>@@ -22364,7 +22364,7 @@ test:do_test(</div><div>       WHERE a=20</div><div>          OR ((a BETWEEN 74 AND 76) AND a!=75)</div><div>          OR b=341</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR b=814</div><div>          OR b=1026</div><div>          OR a=14</div><div>@@ -22387,8 +22387,8 @@ test:do_test(</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>          OR b=839</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>          OR c=7007</div><div>   ]])</div><div>     end, {</div><div>@@ -22406,8 +22406,8 @@ test:do_test(</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>          OR b=839</div><div>          OR (d>=51.0 AND d<52.0 AND d IS NOT NULL)</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>          OR c=7007</div><div>   ]])</div><div>     end, {</div><div>@@ -22421,7 +22421,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+      WHERE (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR a=21</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>          OR (d>=3.0 AND d<4.0 AND d IS NOT NULL)</div><div>@@ -22443,7 +22443,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+      WHERE (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR a=21</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>          OR (d>=3.0 AND d<4.0 AND d IS NOT NULL)</div><div>@@ -22469,11 +22469,11 @@ test:do_test(</div><div>          OR f='bcdefghij'</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=762</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.601.1></div><div>@@ -22490,11 +22490,11 @@ test:do_test(</div><div>          OR f='bcdefghij'</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=762</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.601.2></div><div>@@ -22574,7 +22574,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>          OR (d>=40.0 AND d<41.0 AND d IS NOT NULL)</div><div>          OR b=1067</div><div>          OR b=231</div><div>@@ -22595,7 +22595,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>          OR (d>=40.0 AND d<41.0 AND d IS NOT NULL)</div><div>          OR b=1067</div><div>          OR b=231</div><div>@@ -22620,7 +22620,7 @@ test:do_test(</div><div>          OR b=396</div><div>          OR b=1059</div><div>          OR a=69</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR b=440</div><div>          OR b=825</div><div>   ]])</div><div>@@ -22640,7 +22640,7 @@ test:do_test(</div><div>          OR b=396</div><div>          OR b=1059</div><div>          OR a=69</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR b=440</div><div>          OR b=825</div><div>   ]])</div><div>@@ -22658,7 +22658,7 @@ test:do_test(</div><div>       WHERE (d>=26.0 AND d<27.0 AND d IS NOT NULL)</div><div>          OR b=308</div><div>          OR c<=10</div><div>-         OR (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>          OR f='ghijklmno'</div><div>          OR b=289</div><div>          OR a=5</div><div>@@ -22680,7 +22680,7 @@ test:do_test(</div><div>       WHERE (d>=26.0 AND d<27.0 AND d IS NOT NULL)</div><div>          OR b=308</div><div>          OR c<=10</div><div>-         OR (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>          OR f='ghijklmno'</div><div>          OR b=289</div><div>          OR a=5</div><div>@@ -22703,9 +22703,9 @@ test:do_test(</div><div>          OR (d>=17.0 AND d<18.0 AND d IS NOT NULL)</div><div>          OR b=993</div><div>          OR ((a BETWEEN 43 AND 45) AND a!=44)</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR b=663</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR b=869</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>          OR b=121</div><div>@@ -22725,9 +22725,9 @@ test:do_test(</div><div>          OR (d>=17.0 AND d<18.0 AND d IS NOT NULL)</div><div>          OR b=993</div><div>          OR ((a BETWEEN 43 AND 45) AND a!=44)</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR b=663</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR b=869</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>          OR b=121</div><div>@@ -22743,9 +22743,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'efghi*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'efghi%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>          OR b=770</div><div>   ]])</div><div>     end, {</div><div>@@ -22759,9 +22759,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'efghi*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'efghi%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>          OR b=770</div><div>   ]])</div><div>     end, {</div><div>@@ -22776,10 +22776,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 80 AND 82) AND a!=81)</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.609.1></div><div>@@ -22793,10 +22793,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 80 AND 82) AND a!=81)</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.609.2></div><div>@@ -22855,16 +22855,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='onmlkji' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='onmlkji' AND f LIKE 'zabcd%')</div><div>          OR b=1092</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR a=77</div><div>          OR a=63</div><div>          OR b=762</div><div>          OR b=894</div><div>          OR b=685</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.611.1></div><div>@@ -22877,16 +22877,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='onmlkji' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='onmlkji' AND f LIKE 'zabcd%')</div><div>          OR b=1092</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR a=77</div><div>          OR a=63</div><div>          OR b=762</div><div>          OR b=894</div><div>          OR b=685</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.611.2></div><div>@@ -22899,7 +22899,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>          OR b=231</div><div>   ]])</div><div>@@ -22914,7 +22914,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>          OR b=231</div><div>   ]])</div><div>@@ -22930,7 +22930,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=828</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>   ]])</div><div>     end, {</div><div>@@ -22945,7 +22945,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=828</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>   ]])</div><div>     end, {</div><div>@@ -22959,13 +22959,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+      WHERE (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>          OR b=520</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>          OR (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR a=21</div><div>   ]])</div><div>     end, {</div><div>@@ -22979,13 +22979,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+      WHERE (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>          OR b=520</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>          OR (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR a=21</div><div>   ]])</div><div>     end, {</div><div>@@ -23000,7 +23000,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=553</div><div>-         OR (g='lkjihgf' AND f GLOB 'lmnop*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'lmnop%')</div><div>          OR b=1034</div><div>          OR b=418</div><div>          OR a=57</div><div>@@ -23019,7 +23019,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=553</div><div>-         OR (g='lkjihgf' AND f GLOB 'lmnop*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'lmnop%')</div><div>          OR b=1034</div><div>          OR b=418</div><div>          OR a=57</div><div>@@ -23038,9 +23038,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=43</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>          OR b=418</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>          OR b=594</div><div>          OR a=21</div><div>@@ -23060,9 +23060,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=43</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>          OR b=418</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>          OR b=594</div><div>          OR a=21</div><div>@@ -23082,7 +23082,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=671</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>   ]])</div><div>     end, {</div><div>@@ -23097,7 +23097,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=671</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>   ]])</div><div>     end, {</div><div>@@ -23148,7 +23148,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=806</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>          OR b=275</div><div>@@ -23166,7 +23166,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=806</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>          OR b=275</div><div>@@ -23184,12 +23184,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE c=24024</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR b=429</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR b=110</div><div>          OR a=39</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.620.1></div><div>@@ -23203,12 +23203,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE c=24024</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR b=429</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR b=110</div><div>          OR a=39</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.620.2></div><div>@@ -23287,7 +23287,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=509</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>          OR b=718</div><div>          OR a=4</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>@@ -23307,7 +23307,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=509</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>-         OR (g='vutsrqp' AND f GLOB 'nopqr*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'nopqr%')</div><div>          OR b=718</div><div>          OR a=4</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>@@ -23325,7 +23325,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR b=1026</div><div>          OR a=93</div><div>          OR c=18018</div><div>@@ -23341,7 +23341,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR b=1026</div><div>          OR a=93</div><div>          OR c=18018</div><div>@@ -23422,11 +23422,11 @@ test:do_test(</div><div>       WHERE b=990</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 41 AND 43) AND a!=42)</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR (d>=86.0 AND d<87.0 AND d IS NOT NULL)</div><div>          OR b=531</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR f='qrstuvwxy'</div><div>   ]])</div><div>     end, {</div><div>@@ -23443,11 +23443,11 @@ test:do_test(</div><div>       WHERE b=990</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 41 AND 43) AND a!=42)</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR (d>=86.0 AND d<87.0 AND d IS NOT NULL)</div><div>          OR b=531</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR f='qrstuvwxy'</div><div>   ]])</div><div>     end, {</div><div>@@ -23462,9 +23462,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=60</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR b=627</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR (d>=78.0 AND d<79.0 AND d IS NOT NULL)</div><div>          OR b=883</div><div>@@ -23484,9 +23484,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=60</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR b=627</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR (d>=78.0 AND d<79.0 AND d IS NOT NULL)</div><div>          OR b=883</div><div>@@ -23572,13 +23572,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=28</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>          OR b=69</div><div>          OR ((a BETWEEN 85 AND 87) AND a!=86)</div><div>          OR b=781</div><div>          OR a=64</div><div>          OR b=91</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR a=16</div><div>          OR b=278</div><div>          OR a=26</div><div>@@ -23595,13 +23595,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=28</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>          OR b=69</div><div>          OR ((a BETWEEN 85 AND 87) AND a!=86)</div><div>          OR b=781</div><div>          OR a=64</div><div>          OR b=91</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR a=16</div><div>          OR b=278</div><div>          OR a=26</div><div>@@ -23710,7 +23710,7 @@ test:do_test(</div><div>       WHERE f='yzabcdefg'</div><div>          OR ((a BETWEEN 48 AND 50) AND a!=49)</div><div>          OR a=100</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>          OR a=62</div><div>          OR a=67</div><div>          OR b=605</div><div>@@ -23733,7 +23733,7 @@ test:do_test(</div><div>       WHERE f='yzabcdefg'</div><div>          OR ((a BETWEEN 48 AND 50) AND a!=49)</div><div>          OR a=100</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>          OR a=62</div><div>          OR a=67</div><div>          OR b=605</div><div>@@ -23787,9 +23787,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+      WHERE (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR b=751</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>          OR a=67</div><div>          OR b=102</div><div>@@ -23805,9 +23805,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+      WHERE (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR b=751</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>          OR a=67</div><div>          OR b=102</div><div>@@ -23862,14 +23862,14 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE c=2002</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR ((a BETWEEN 41 AND 43) AND a!=42)</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR b=33</div><div>          OR b=817</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -23884,14 +23884,14 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE c=2002</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR ((a BETWEEN 41 AND 43) AND a!=42)</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR b=33</div><div>          OR b=817</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -23905,8 +23905,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='srqponm' AND f GLOB 'cdefg*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+      WHERE (g='srqponm' AND f LIKE 'cdefg%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR a=80</div><div>          OR a=53</div><div>          OR a=62</div><div>@@ -23926,8 +23926,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='srqponm' AND f GLOB 'cdefg*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+      WHERE (g='srqponm' AND f LIKE 'cdefg%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR a=80</div><div>          OR a=53</div><div>          OR a=62</div><div>@@ -23951,7 +23951,7 @@ test:do_test(</div><div>          OR b=652</div><div>          OR a=72</div><div>          OR b=209</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR a=38</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>          OR d>1e10</div><div>@@ -23971,7 +23971,7 @@ test:do_test(</div><div>          OR b=652</div><div>          OR a=72</div><div>          OR b=209</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR a=38</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>          OR d>1e10</div><div>@@ -24016,11 +24016,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=179</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR b=509</div><div>          OR ((a BETWEEN 58 AND 60) AND a!=59)</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR f='bcdefghij'</div><div>   ]])</div><div>     end, {</div><div>@@ -24035,11 +24035,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=179</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR b=509</div><div>          OR ((a BETWEEN 58 AND 60) AND a!=59)</div><div>          OR (d>=49.0 AND d<50.0 AND d IS NOT NULL)</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR f='bcdefghij'</div><div>   ]])</div><div>     end, {</div><div>@@ -24149,13 +24149,13 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>          OR b=421</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR b=704</div><div>          OR a=90</div><div>          OR a=78</div><div>          OR 1000000<b</div><div>          OR (d>=80.0 AND d<81.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>   ]])</div><div>     end, {</div><div>@@ -24171,13 +24171,13 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>          OR b=421</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR b=704</div><div>          OR a=90</div><div>          OR a=78</div><div>          OR 1000000<b</div><div>          OR (d>=80.0 AND d<81.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>   ]])</div><div>     end, {</div><div>@@ -24191,7 +24191,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'pqrst%')</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>   ]])</div><div>     end, {</div><div>@@ -24205,7 +24205,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'pqrst%')</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>   ]])</div><div>     end, {</div><div>@@ -24226,7 +24226,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 25 AND 27) AND a!=26)</div><div>          OR e IS NULL</div><div>          OR a=48</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.649.1></div><div>@@ -24246,7 +24246,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 25 AND 27) AND a!=26)</div><div>          OR e IS NULL</div><div>          OR a=48</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.649.2></div><div>@@ -24292,7 +24292,7 @@ test:do_test(</div><div>       WHERE b=275</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR (d>=53.0 AND d<54.0 AND d IS NOT NULL)</div><div>          OR f='ijklmnopq'</div><div>   ]])</div><div>@@ -24310,7 +24310,7 @@ test:do_test(</div><div>       WHERE b=275</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR (d>=53.0 AND d<54.0 AND d IS NOT NULL)</div><div>          OR f='ijklmnopq'</div><div>   ]])</div><div>@@ -24360,7 +24360,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE f='zabcdefgh'</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR a=54</div><div>          OR b=770</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>@@ -24380,7 +24380,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE f='zabcdefgh'</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR a=54</div><div>          OR b=770</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>@@ -24446,7 +24446,7 @@ test:do_test(</div><div>       WHERE b=223</div><div>          OR a=14</div><div>          OR ((a BETWEEN 74 AND 76) AND a!=75)</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>          OR b=539</div><div>          OR (d>=48.0 AND d<49.0 AND d IS NOT NULL)</div><div>@@ -24467,7 +24467,7 @@ test:do_test(</div><div>       WHERE b=223</div><div>          OR a=14</div><div>          OR ((a BETWEEN 74 AND 76) AND a!=75)</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>          OR b=539</div><div>          OR (d>=48.0 AND d<49.0 AND d IS NOT NULL)</div><div>@@ -24486,7 +24486,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=99</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>          OR a=73</div><div>          OR a=56</div><div>          OR b=253</div><div>@@ -24504,7 +24504,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=99</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>          OR a=73</div><div>          OR a=56</div><div>          OR b=253</div><div>@@ -24524,8 +24524,8 @@ test:do_test(</div><div>       WHERE b=927</div><div>          OR b=300</div><div>          OR b=223</div><div>-         OR (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=154</div><div>          OR b=759</div><div>   ]])</div><div>@@ -24543,8 +24543,8 @@ test:do_test(</div><div>       WHERE b=927</div><div>          OR b=300</div><div>          OR b=223</div><div>-         OR (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=154</div><div>          OR b=759</div><div>   ]])</div><div>@@ -24562,7 +24562,7 @@ test:do_test(</div><div>       WHERE b=242</div><div>          OR b=905</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>          OR (d>=96.0 AND d<97.0 AND d IS NOT NULL)</div><div>          OR a=24</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>@@ -24584,7 +24584,7 @@ test:do_test(</div><div>       WHERE b=242</div><div>          OR b=905</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'ijklm*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ijklm%')</div><div>          OR (d>=96.0 AND d<97.0 AND d IS NOT NULL)</div><div>          OR a=24</div><div>          OR ((a BETWEEN 67 AND 69) AND a!=68)</div><div>@@ -24606,10 +24606,10 @@ test:do_test(</div><div>       WHERE b=190</div><div>          OR a=72</div><div>          OR b=377</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR (d>=93.0 AND d<94.0 AND d IS NOT NULL)</div><div>          OR b=476</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.659.1></div><div>@@ -24625,10 +24625,10 @@ test:do_test(</div><div>       WHERE b=190</div><div>          OR a=72</div><div>          OR b=377</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR (d>=93.0 AND d<94.0 AND d IS NOT NULL)</div><div>          OR b=476</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.659.2></div><div>@@ -24644,12 +24644,12 @@ test:do_test(</div><div>       WHERE b=245</div><div>          OR b=638</div><div>          OR (d>=62.0 AND d<63.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR f='opqrstuvw'</div><div>          OR (d>=86.0 AND d<87.0 AND d IS NOT NULL)</div><div>          OR b=817</div><div>          OR a=85</div><div>-         OR (g='lkjihgf' AND f GLOB 'mnopq*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.660.1></div><div>@@ -24665,12 +24665,12 @@ test:do_test(</div><div>       WHERE b=245</div><div>          OR b=638</div><div>          OR (d>=62.0 AND d<63.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR f='opqrstuvw'</div><div>          OR (d>=86.0 AND d<87.0 AND d IS NOT NULL)</div><div>          OR b=817</div><div>          OR a=85</div><div>-         OR (g='lkjihgf' AND f GLOB 'mnopq*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.660.2></div><div>@@ -24749,9 +24749,9 @@ test:do_test(</div><div>          OR (d>=85.0 AND d<86.0 AND d IS NOT NULL)</div><div>          OR c<=10</div><div>          OR ((a BETWEEN 75 AND 77) AND a!=76)</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR b=553</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR b=1045</div><div>   ]])</div><div>     end, {</div><div>@@ -24769,9 +24769,9 @@ test:do_test(</div><div>          OR (d>=85.0 AND d<86.0 AND d IS NOT NULL)</div><div>          OR c<=10</div><div>          OR ((a BETWEEN 75 AND 77) AND a!=76)</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR b=553</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR b=1045</div><div>   ]])</div><div>     end, {</div><div>@@ -24788,12 +24788,12 @@ test:do_test(</div><div>       WHERE b=440</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>          OR ((a BETWEEN 44 AND 46) AND a!=45)</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>          OR a=89</div><div>          OR c=18018</div><div>          OR b=154</div><div>          OR b=506</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR a=78</div><div>          OR b=751</div><div>   ]])</div><div>@@ -24811,12 +24811,12 @@ test:do_test(</div><div>       WHERE b=440</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>          OR ((a BETWEEN 44 AND 46) AND a!=45)</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>          OR a=89</div><div>          OR c=18018</div><div>          OR b=154</div><div>          OR b=506</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR a=78</div><div>          OR b=751</div><div>   ]])</div><div>@@ -24832,13 +24832,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=407</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR b=209</div><div>          OR b=814</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR a=44</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR (d>=99.0 AND d<100.0 AND d IS NOT NULL)</div><div>          OR b=1092</div><div>   ]])</div><div>@@ -24854,13 +24854,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=407</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR b=209</div><div>          OR b=814</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR a=44</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR (d>=99.0 AND d<100.0 AND d IS NOT NULL)</div><div>          OR b=1092</div><div>   ]])</div><div>@@ -25002,10 +25002,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=27</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR b=121</div><div>          OR ((a BETWEEN 7 AND 9) AND a!=8)</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR a=67</div><div>          OR ((a BETWEEN 30 AND 32) AND a!=31)</div><div>          OR c=1001</div><div>@@ -25024,10 +25024,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=27</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR b=121</div><div>          OR ((a BETWEEN 7 AND 9) AND a!=8)</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR a=67</div><div>          OR ((a BETWEEN 30 AND 32) AND a!=31)</div><div>          OR c=1001</div><div>@@ -25046,7 +25046,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=99</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR (d>=46.0 AND d<47.0 AND d IS NOT NULL)</div><div>@@ -25063,7 +25063,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=99</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR (d>=98.0 AND d<99.0 AND d IS NOT NULL)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR (d>=46.0 AND d<47.0 AND d IS NOT NULL)</div><div>@@ -25083,9 +25083,9 @@ test:do_test(</div><div>          OR (d>=62.0 AND d<63.0 AND d IS NOT NULL)</div><div>          OR b=355</div><div>          OR b=814</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR a=81</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR b=542</div><div>          OR b=795</div><div>   ]])</div><div>@@ -25104,9 +25104,9 @@ test:do_test(</div><div>          OR (d>=62.0 AND d<63.0 AND d IS NOT NULL)</div><div>          OR b=355</div><div>          OR b=814</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR a=81</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR b=542</div><div>          OR b=795</div><div>   ]])</div><div>@@ -25124,10 +25124,10 @@ test:do_test(</div><div>       WHERE (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>          OR b=363</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>          OR b=619</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR a=73</div><div>   ]])</div><div>     end, {</div><div>@@ -25144,10 +25144,10 @@ test:do_test(</div><div>       WHERE (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>          OR b=363</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 64 AND 66) AND a!=65)</div><div>          OR b=619</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>          OR a=73</div><div>   ]])</div><div>     end, {</div><div>@@ -25163,9 +25163,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=935</div><div>          OR a=42</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR b=330</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.673.1></div><div>@@ -25180,9 +25180,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=935</div><div>          OR a=42</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR b=330</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.673.2></div><div>@@ -25201,7 +25201,7 @@ test:do_test(</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>          OR (d>=19.0 AND d<20.0 AND d IS NOT NULL)</div><div>          OR a=64</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR a=89</div><div>   ]])</div><div>     end, {</div><div>@@ -25221,7 +25221,7 @@ test:do_test(</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>          OR (d>=19.0 AND d<20.0 AND d IS NOT NULL)</div><div>          OR a=64</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR a=89</div><div>   ]])</div><div>     end, {</div><div>@@ -25240,9 +25240,9 @@ test:do_test(</div><div>          OR b=663</div><div>          OR c=17017</div><div>          OR b=561</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR b=495</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR b=352</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>   ]])</div><div>@@ -25262,9 +25262,9 @@ test:do_test(</div><div>          OR b=663</div><div>          OR c=17017</div><div>          OR b=561</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR b=495</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR b=352</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>   ]])</div><div>@@ -25280,7 +25280,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=100.0 AND d<101.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR f='klmnopqrs'</div><div>          OR f='lmnopqrst'</div><div>   ]])</div><div>@@ -25296,7 +25296,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=100.0 AND d<101.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>          OR f='klmnopqrs'</div><div>          OR f='lmnopqrst'</div><div>   ]])</div><div>@@ -25342,16 +25342,16 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=36</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>          OR b=682</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>          OR b=91</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>          OR c=12012</div><div>          OR b=267</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.678.1></div><div>@@ -25365,16 +25365,16 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=36</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>          OR b=682</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>          OR b=91</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>          OR c=12012</div><div>          OR b=267</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.678.2></div><div>@@ -25390,12 +25390,12 @@ test:do_test(</div><div>       WHERE b=594</div><div>          OR f='hijklmnop'</div><div>          OR ((a BETWEEN 65 AND 67) AND a!=66)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR b=707</div><div>          OR b=363</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR b=157</div><div>-         OR (g='tsrqpon' AND f GLOB 'yzabc*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'yzabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.679.1></div><div>@@ -25411,12 +25411,12 @@ test:do_test(</div><div>       WHERE b=594</div><div>          OR f='hijklmnop'</div><div>          OR ((a BETWEEN 65 AND 67) AND a!=66)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR b=707</div><div>          OR b=363</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR b=157</div><div>-         OR (g='tsrqpon' AND f GLOB 'yzabc*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'yzabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.679.2></div><div>@@ -25473,7 +25473,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR b=674</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>          OR c=3003</div><div>@@ -25492,7 +25492,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR b=674</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>          OR c=3003</div><div>@@ -25554,7 +25554,7 @@ test:do_test(</div><div>          OR b=707</div><div>          OR f='vwxyzabcd'</div><div>          OR b=286</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR b=693</div><div>          OR ((a BETWEEN 6 AND 8) AND a!=7)</div><div>   ]])</div><div>@@ -25576,7 +25576,7 @@ test:do_test(</div><div>          OR b=707</div><div>          OR f='vwxyzabcd'</div><div>          OR b=286</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR b=693</div><div>          OR ((a BETWEEN 6 AND 8) AND a!=7)</div><div>   ]])</div><div>@@ -25596,8 +25596,8 @@ test:do_test(</div><div>          OR a=52</div><div>          OR (d>=64.0 AND d<65.0 AND d IS NOT NULL)</div><div>          OR d<0.0</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR b=168</div><div>          OR (d>=24.0 AND d<25.0 AND d IS NOT NULL)</div><div>          OR f='uvwxyzabc'</div><div>@@ -25619,8 +25619,8 @@ test:do_test(</div><div>          OR a=52</div><div>          OR (d>=64.0 AND d<65.0 AND d IS NOT NULL)</div><div>          OR d<0.0</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR b=168</div><div>          OR (d>=24.0 AND d<25.0 AND d IS NOT NULL)</div><div>          OR f='uvwxyzabc'</div><div>@@ -25638,12 +25638,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 4 AND 6) AND a!=5)</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR f='rstuvwxyz'</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR a=14</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -25659,12 +25659,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 4 AND 6) AND a!=5)</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR f='rstuvwxyz'</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR a=14</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -25681,9 +25681,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 13 AND 15) AND a!=14)</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR f='mnopqrstu'</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>          OR a=38</div><div>          OR c=26026</div><div>@@ -25701,9 +25701,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 13 AND 15) AND a!=14)</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR f='mnopqrstu'</div><div>-         OR (g='fedcbaz' AND f GLOB 'tuvwx*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>          OR a=38</div><div>          OR c=26026</div><div>@@ -25719,11 +25719,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR ((a BETWEEN 71 AND 73) AND a!=72)</div><div>          OR a=7</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>   ]])</div><div>     end, {</div><div>@@ -25737,11 +25737,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR ((a BETWEEN 71 AND 73) AND a!=72)</div><div>          OR a=7</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>   ]])</div><div>     end, {</div><div>@@ -25759,8 +25759,8 @@ test:do_test(</div><div>          OR b=938</div><div>          OR b=484</div><div>          OR b=652</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR f='opqrstuvw'</div><div>   ]])</div><div>     end, {</div><div>@@ -25778,8 +25778,8 @@ test:do_test(</div><div>          OR b=938</div><div>          OR b=484</div><div>          OR b=652</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR f='opqrstuvw'</div><div>   ]])</div><div>     end, {</div><div>@@ -25835,12 +25835,12 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=25</div><div>          OR ((a BETWEEN 43 AND 45) AND a!=44)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>          OR b=443</div><div>          OR b=564</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=531</div><div>          OR b=1081</div><div>          OR a=96</div><div>@@ -25858,12 +25858,12 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=25</div><div>          OR ((a BETWEEN 43 AND 45) AND a!=44)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>          OR b=443</div><div>          OR b=564</div><div>-         OR (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=531</div><div>          OR b=1081</div><div>          OR a=96</div><div>@@ -25880,7 +25880,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=36</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.691.1></div><div>@@ -25894,7 +25894,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=36</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.691.2></div><div>@@ -25907,7 +25907,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>          OR b=531</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>          OR (d>=3.0 AND d<4.0 AND d IS NOT NULL)</div><div>@@ -25923,7 +25923,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>          OR b=531</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>          OR (d>=3.0 AND d<4.0 AND d IS NOT NULL)</div><div>@@ -25975,8 +25975,8 @@ test:do_test(</div><div>          OR b=718</div><div>          OR a=18</div><div>          OR a=3</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR c=28028</div><div>   ]])</div><div>     end, {</div><div>@@ -25998,8 +25998,8 @@ test:do_test(</div><div>          OR b=718</div><div>          OR a=18</div><div>          OR a=3</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR c=28028</div><div>   ]])</div><div>     end, {</div><div>@@ -26062,7 +26062,7 @@ test:do_test(</div><div>          OR (d>=19.0 AND d<20.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 30 AND 32) AND a!=31)</div><div>          OR (d>=29.0 AND d<30.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>          OR (d>=91.0 AND d<92.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -26081,7 +26081,7 @@ test:do_test(</div><div>          OR (d>=19.0 AND d<20.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 30 AND 32) AND a!=31)</div><div>          OR (d>=29.0 AND d<30.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>          OR (d>=91.0 AND d<92.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -26095,7 +26095,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR b=883</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>          OR b=938</div><div>@@ -26115,7 +26115,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR b=883</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>          OR b=938</div><div>@@ -26167,7 +26167,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR ((a BETWEEN 74 AND 76) AND a!=75)</div><div>@@ -26185,7 +26185,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR ((a BETWEEN 74 AND 76) AND a!=75)</div><div>@@ -26271,12 +26271,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>-         OR (g='srqponm' AND f GLOB 'cdefg*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+      WHERE (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>+         OR (g='srqponm' AND f LIKE 'cdefg%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR f='lmnopqrst'</div><div>          OR ((a BETWEEN 11 AND 13) AND a!=12)</div><div>          OR b=872</div><div>@@ -26294,12 +26294,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?abcd*' AND f GLOB 'zabc*')</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>-         OR (g='srqponm' AND f GLOB 'cdefg*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+      WHERE (f LIKE '_abcd%' AND f LIKE 'zabc%')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>+         OR (g='srqponm' AND f LIKE 'cdefg%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR f='lmnopqrst'</div><div>          OR ((a BETWEEN 11 AND 13) AND a!=12)</div><div>          OR b=872</div><div>@@ -26319,14 +26319,14 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 71 AND 73) AND a!=72)</div><div>          OR a=20</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>          OR b=1004</div><div>          OR b=77</div><div>          OR b=927</div><div>          OR a=99</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.703.1></div><div>@@ -26341,14 +26341,14 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 71 AND 73) AND a!=72)</div><div>          OR a=20</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>          OR b=1004</div><div>          OR b=77</div><div>          OR b=927</div><div>          OR a=99</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.703.2></div><div>@@ -26394,7 +26394,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=572</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.705.1></div><div>@@ -26408,7 +26408,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=572</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.705.2></div><div>@@ -26424,8 +26424,8 @@ test:do_test(</div><div>       WHERE (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 54 AND 56) AND a!=55)</div><div>          OR f='lmnopqrst'</div><div>-         OR (f GLOB '?lmno*' AND f GLOB 'klmn*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (f LIKE '_lmno%' AND f LIKE 'klmn%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR a=23</div><div>          OR (d>=69.0 AND d<70.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -26443,8 +26443,8 @@ test:do_test(</div><div>       WHERE (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 54 AND 56) AND a!=55)</div><div>          OR f='lmnopqrst'</div><div>-         OR (f GLOB '?lmno*' AND f GLOB 'klmn*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (f LIKE '_lmno%' AND f LIKE 'klmn%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR a=23</div><div>          OR (d>=69.0 AND d<70.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -26463,13 +26463,13 @@ test:do_test(</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR b=605</div><div>          OR (d>=46.0 AND d<47.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>          OR b=759</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>          OR a=40</div><div>          OR f='ghijklmno'</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.707.1></div><div>@@ -26486,13 +26486,13 @@ test:do_test(</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR b=605</div><div>          OR (d>=46.0 AND d<47.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>          OR b=759</div><div>-         OR (f GLOB '?zabc*' AND f GLOB 'yzab*')</div><div>+         OR (f LIKE '_zabc%' AND f LIKE 'yzab%')</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>          OR a=40</div><div>          OR f='ghijklmno'</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.707.2></div><div>@@ -26601,7 +26601,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'efghi%')</div><div>          OR a=34</div><div>          OR ((a BETWEEN 6 AND 8) AND a!=7)</div><div>          OR (d>=75.0 AND d<76.0 AND d IS NOT NULL)</div><div>@@ -26619,7 +26619,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'efghi*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'efghi%')</div><div>          OR a=34</div><div>          OR ((a BETWEEN 6 AND 8) AND a!=7)</div><div>          OR (d>=75.0 AND d<76.0 AND d IS NOT NULL)</div><div>@@ -26637,16 +26637,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR a=52</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR (d>=24.0 AND d<25.0 AND d IS NOT NULL)</div><div>          OR f='ghijklmno'</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR b=319</div><div>          OR a=34</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR f='hijklmnop'</div><div>   ]])</div><div>     end, {</div><div>@@ -26660,16 +26660,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR a=52</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR (d>=24.0 AND d<25.0 AND d IS NOT NULL)</div><div>          OR f='ghijklmno'</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR b=319</div><div>          OR a=34</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR f='hijklmnop'</div><div>   ]])</div><div>     end, {</div><div>@@ -26683,7 +26683,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>          OR (d>=71.0 AND d<72.0 AND d IS NOT NULL)</div><div>          OR a=47</div><div>@@ -26699,7 +26699,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>          OR (d>=71.0 AND d<72.0 AND d IS NOT NULL)</div><div>          OR a=47</div><div>@@ -26781,11 +26781,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE c=31031</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>          OR b=256</div><div>          OR ((a BETWEEN 77 AND 79) AND a!=78)</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR b=715</div><div>          OR b=212</div><div>          OR b=99</div><div>@@ -26804,11 +26804,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE c=31031</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>          OR b=256</div><div>          OR ((a BETWEEN 77 AND 79) AND a!=78)</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR b=715</div><div>          OR b=212</div><div>          OR b=99</div><div>@@ -26899,7 +26899,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR ((a BETWEEN 62 AND 64) AND a!=63)</div><div>   ]])</div><div>     end, {</div><div>@@ -26913,7 +26913,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR ((a BETWEEN 62 AND 64) AND a!=63)</div><div>   ]])</div><div>     end, {</div><div>@@ -26929,11 +26929,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 43 AND 45) AND a!=44)</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR a=43</div><div>          OR (d>=14.0 AND d<15.0 AND d IS NOT NULL)</div><div>          OR b=729</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.720.1></div><div>@@ -26948,11 +26948,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 43 AND 45) AND a!=44)</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR a=43</div><div>          OR (d>=14.0 AND d<15.0 AND d IS NOT NULL)</div><div>          OR b=729</div><div>-         OR (g='vutsrqp' AND f GLOB 'opqrs*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'opqrs%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.720.2></div><div>@@ -26972,7 +26972,7 @@ test:do_test(</div><div>          OR c=8008</div><div>          OR f='opqrstuvw'</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.721.1></div><div>@@ -26992,7 +26992,7 @@ test:do_test(</div><div>          OR c=8008</div><div>          OR f='opqrstuvw'</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.721.2></div><div>@@ -27008,9 +27008,9 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 40 AND 42) AND a!=41)</div><div>          OR (d>=62.0 AND d<63.0 AND d IS NOT NULL)</div><div>          OR c<=10</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR a=35</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR b=1089</div><div>          OR a=73</div><div>          OR b=737</div><div>@@ -27031,9 +27031,9 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 40 AND 42) AND a!=41)</div><div>          OR (d>=62.0 AND d<63.0 AND d IS NOT NULL)</div><div>          OR c<=10</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR a=35</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR b=1089</div><div>          OR a=73</div><div>          OR b=737</div><div>@@ -27053,7 +27053,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 0 AND 2) AND a!=1)</div><div>          OR (d>=79.0 AND d<80.0 AND d IS NOT NULL)</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=762</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>          OR a=80</div><div>@@ -27071,7 +27071,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 0 AND 2) AND a!=1)</div><div>          OR (d>=79.0 AND d<80.0 AND d IS NOT NULL)</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=762</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>          OR a=80</div><div>@@ -27092,10 +27092,10 @@ test:do_test(</div><div>          OR ((a BETWEEN 80 AND 82) AND a!=81)</div><div>          OR b=979</div><div>          OR a=36</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>          OR (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>          OR a=55</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.724.1></div><div>@@ -27113,10 +27113,10 @@ test:do_test(</div><div>          OR ((a BETWEEN 80 AND 82) AND a!=81)</div><div>          OR b=979</div><div>          OR a=36</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>          OR (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>          OR a=55</div><div>-         OR (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.724.2></div><div>@@ -27131,8 +27131,8 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=75</div><div>          OR a=61</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.725.1></div><div>@@ -27147,8 +27147,8 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=75</div><div>          OR a=61</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.725.2></div><div>@@ -27162,7 +27162,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=1004</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR (d>=7.0 AND d<8.0 AND d IS NOT NULL)</div><div>          OR a=56</div><div>   ]])</div><div>@@ -27178,7 +27178,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=1004</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR (d>=7.0 AND d<8.0 AND d IS NOT NULL)</div><div>          OR a=56</div><div>   ]])</div><div>@@ -27194,13 +27194,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=93</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR a=83</div><div>          OR b=828</div><div>          OR b=454</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR b=924</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>          OR a=50</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -27216,13 +27216,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=93</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR a=83</div><div>          OR b=828</div><div>          OR b=454</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR b=924</div><div>-         OR (g='lkjihgf' AND f GLOB 'opqrs*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'opqrs%')</div><div>          OR a=50</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -27269,7 +27269,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=55</div><div>          OR a=65</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.729.1></div><div>@@ -27284,7 +27284,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=55</div><div>          OR a=65</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.729.2></div><div>@@ -27300,7 +27300,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 72 AND 74) AND a!=73)</div><div>          OR b=605</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 72 AND 74) AND a!=73)</div><div>          OR f='ijklmnopq'</div><div>          OR ((a BETWEEN 86 AND 88) AND a!=87)</div><div>@@ -27322,7 +27322,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 72 AND 74) AND a!=73)</div><div>          OR b=605</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 72 AND 74) AND a!=73)</div><div>          OR f='ijklmnopq'</div><div>          OR ((a BETWEEN 86 AND 88) AND a!=87)</div><div>@@ -27342,7 +27342,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=476</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR b=982</div><div>          OR a=43</div><div>          OR b=355</div><div>@@ -27359,7 +27359,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=476</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR b=982</div><div>          OR a=43</div><div>          OR b=355</div><div>@@ -27377,8 +27377,8 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=85</div><div>          OR b=718</div><div>-         OR (g='fedcbaz' AND f GLOB 'pqrst*')</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'pqrst%')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR (d>=25.0 AND d<26.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -27394,8 +27394,8 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=85</div><div>          OR b=718</div><div>-         OR (g='fedcbaz' AND f GLOB 'pqrst*')</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'pqrst%')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR (d>=25.0 AND d<26.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -27515,12 +27515,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+      WHERE (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR b=465</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR a=37</div><div>          OR b=1056</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR (d>=4.0 AND d<5.0 AND d IS NOT NULL)</div><div>          OR b=1023</div><div>   ]])</div><div>@@ -27535,12 +27535,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+      WHERE (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR b=465</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR a=37</div><div>          OR b=1056</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR (d>=4.0 AND d<5.0 AND d IS NOT NULL)</div><div>          OR b=1023</div><div>   ]])</div><div>@@ -27557,7 +27557,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=76</div><div>          OR a=8</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>          OR b=495</div><div>          OR b=663</div><div>          OR a=98</div><div>@@ -27576,7 +27576,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=76</div><div>          OR a=8</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>          OR b=495</div><div>          OR b=663</div><div>          OR a=98</div><div>@@ -27595,7 +27595,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=1081</div><div>          OR b=542</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>          OR b=828</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>@@ -27615,7 +27615,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=1081</div><div>          OR b=542</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>          OR b=828</div><div>          OR (d>=67.0 AND d<68.0 AND d IS NOT NULL)</div><div>@@ -27745,9 +27745,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=880</div><div>          OR b=696</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR b=308</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>   ]])</div><div>     end, {</div><div>@@ -27763,9 +27763,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=880</div><div>          OR b=696</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR b=308</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>   ]])</div><div>     end, {</div><div>@@ -27779,7 +27779,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR a=24</div><div>          OR f IS NULL</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>@@ -27798,7 +27798,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR a=24</div><div>          OR f IS NULL</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>@@ -27819,7 +27819,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=94</div><div>          OR (d>=74.0 AND d<75.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR b=792</div><div>          OR a=77</div><div>          OR a=26</div><div>@@ -27839,7 +27839,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=94</div><div>          OR (d>=74.0 AND d<75.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR b=792</div><div>          OR a=77</div><div>          OR a=26</div><div>@@ -27935,11 +27935,11 @@ test:do_test(</div><div>          OR c=19019</div><div>          OR a=42</div><div>          OR b=938</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.747.1></div><div>@@ -27958,11 +27958,11 @@ test:do_test(</div><div>          OR c=19019</div><div>          OR a=42</div><div>          OR b=938</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.747.2></div><div>@@ -27977,7 +27977,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=179</div><div>          OR a=50</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.748.1></div><div>@@ -27992,7 +27992,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=179</div><div>          OR a=50</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.748.2></div><div>@@ -28005,12 +28005,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>          OR f='xyzabcdef'</div><div>          OR ((a BETWEEN 49 AND 51) AND a!=50)</div><div>          OR b=575</div><div>          OR b=385</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR a=46</div><div>          OR b=220</div><div>@@ -28027,12 +28027,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>          OR f='xyzabcdef'</div><div>          OR ((a BETWEEN 49 AND 51) AND a!=50)</div><div>          OR b=575</div><div>          OR b=385</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>          OR a=46</div><div>          OR b=220</div><div>@@ -28055,7 +28055,7 @@ test:do_test(</div><div>          OR (d>=80.0 AND d<81.0 AND d IS NOT NULL)</div><div>          OR c=31031</div><div>          OR b=869</div><div>-         OR (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+         OR (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR b=245</div><div>          OR a=92</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>@@ -28078,7 +28078,7 @@ test:do_test(</div><div>          OR (d>=80.0 AND d<81.0 AND d IS NOT NULL)</div><div>          OR c=31031</div><div>          OR b=869</div><div>-         OR (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+         OR (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR b=245</div><div>          OR a=92</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>@@ -28099,8 +28099,8 @@ test:do_test(</div><div>          OR c=28028</div><div>          OR (d>=40.0 AND d<41.0 AND d IS NOT NULL)</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR ((a BETWEEN 17 AND 19) AND a!=18)</div><div>          OR c=9009</div><div>          OR a=17</div><div>@@ -28121,8 +28121,8 @@ test:do_test(</div><div>          OR c=28028</div><div>          OR (d>=40.0 AND d<41.0 AND d IS NOT NULL)</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>-         OR (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>+         OR (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR ((a BETWEEN 17 AND 19) AND a!=18)</div><div>          OR c=9009</div><div>          OR a=17</div><div>@@ -28141,7 +28141,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=57.0 AND d<58.0 AND d IS NOT NULL)</div><div>          OR b=762</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR f='tuvwxyzab'</div><div>          OR (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>@@ -28161,7 +28161,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=57.0 AND d<58.0 AND d IS NOT NULL)</div><div>          OR b=762</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR f='tuvwxyzab'</div><div>          OR (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>@@ -28219,7 +28219,7 @@ test:do_test(</div><div>          OR a=14</div><div>          OR c=16016</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR f='jklmnopqr'</div><div>          OR (d>=25.0 AND d<26.0 AND d IS NOT NULL)</div><div>          OR (d>=96.0 AND d<97.0 AND d IS NOT NULL)</div><div>@@ -28240,7 +28240,7 @@ test:do_test(</div><div>          OR a=14</div><div>          OR c=16016</div><div>          OR (d>=21.0 AND d<22.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR f='jklmnopqr'</div><div>          OR (d>=25.0 AND d<26.0 AND d IS NOT NULL)</div><div>          OR (d>=96.0 AND d<97.0 AND d IS NOT NULL)</div><div>@@ -28258,12 +28258,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=949</div><div>-         OR (g='srqponm' AND f GLOB 'cdefg*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='srqponm' AND f LIKE 'cdefg%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>          OR c<=10</div><div>          OR a=14</div><div>          OR b=608</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>          OR b=121</div><div>          OR b=333</div><div>@@ -28281,12 +28281,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=949</div><div>-         OR (g='srqponm' AND f GLOB 'cdefg*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='srqponm' AND f LIKE 'cdefg%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>          OR c<=10</div><div>          OR a=14</div><div>          OR b=608</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>          OR b=121</div><div>          OR b=333</div><div>@@ -28303,7 +28303,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=355</div><div>          OR b=627</div><div>          OR b=1001</div><div>@@ -28321,7 +28321,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'rstuv%')</div><div>          OR b=355</div><div>          OR b=627</div><div>          OR b=1001</div><div>@@ -28339,7 +28339,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR (d>=79.0 AND d<80.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -28353,7 +28353,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'efghi*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'efghi%')</div><div>          OR (d>=79.0 AND d<80.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -28370,11 +28370,11 @@ test:do_test(</div><div>       WHERE b=685</div><div>          OR a=14</div><div>          OR b=990</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR f='efghijklm'</div><div>          OR c=1001</div><div>          OR b=784</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>          OR (d>=69.0 AND d<70.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -28391,11 +28391,11 @@ test:do_test(</div><div>       WHERE b=685</div><div>          OR a=14</div><div>          OR b=990</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR f='efghijklm'</div><div>          OR c=1001</div><div>          OR b=784</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>          OR (d>=69.0 AND d<70.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -28410,7 +28410,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=54</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR c=26026</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>   ]])</div><div>@@ -28426,7 +28426,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=54</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR c=26026</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>   ]])</div><div>@@ -28441,13 +28441,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>          OR c=24024</div><div>          OR a=98</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR a=5</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR f='pqrstuvwx'</div><div>          OR f='bcdefghij'</div><div>          OR b=1001</div><div>@@ -28464,13 +28464,13 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>          OR c=24024</div><div>          OR a=98</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR a=5</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR f='pqrstuvwx'</div><div>          OR f='bcdefghij'</div><div>          OR b=1001</div><div>@@ -28488,11 +28488,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=781</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>          OR (d>=99.0 AND d<100.0 AND d IS NOT NULL)</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR f='lmnopqrst'</div><div>          OR a=39</div><div>          OR a=100</div><div>@@ -28510,11 +28510,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=781</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>          OR (d>=99.0 AND d<100.0 AND d IS NOT NULL)</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR f='lmnopqrst'</div><div>          OR a=39</div><div>          OR a=100</div><div>@@ -28533,11 +28533,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE c=4004</div><div>          OR b=718</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR a=50</div><div>          OR (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>          OR b=363</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>          OR b=1023</div><div>   ]])</div><div>     end, {</div><div>@@ -28553,11 +28553,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE c=4004</div><div>          OR b=718</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR a=50</div><div>          OR (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>          OR b=363</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>          OR b=1023</div><div>   ]])</div><div>     end, {</div><div>@@ -28576,8 +28576,8 @@ test:do_test(</div><div>          OR b=473</div><div>          OR ((a BETWEEN 43 AND 45) AND a!=44)</div><div>          OR b=586</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.763.1></div><div>@@ -28595,8 +28595,8 @@ test:do_test(</div><div>          OR b=473</div><div>          OR ((a BETWEEN 43 AND 45) AND a!=44)</div><div>          OR b=586</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>-         OR (f GLOB '?vwxy*' AND f GLOB 'uvwx*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>+         OR (f LIKE '_vwxy%' AND f LIKE 'uvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.763.2></div><div>@@ -28609,7 +28609,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+      WHERE (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR (d>=58.0 AND d<59.0 AND d IS NOT NULL)</div><div>          OR (d>=13.0 AND d<14.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -28624,7 +28624,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+      WHERE (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR (d>=58.0 AND d<59.0 AND d IS NOT NULL)</div><div>          OR (d>=13.0 AND d<14.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -28639,11 +28639,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR ((a BETWEEN 76 AND 78) AND a!=77)</div><div>          OR a=47</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>-         OR (g='lkjihgf' AND f GLOB 'lmnop*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>+         OR (g='lkjihgf' AND f LIKE 'lmnop%')</div><div>          OR (d>=84.0 AND d<85.0 AND d IS NOT NULL)</div><div>          OR f='lmnopqrst'</div><div>   ]])</div><div>@@ -28658,11 +28658,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR ((a BETWEEN 76 AND 78) AND a!=77)</div><div>          OR a=47</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>-         OR (g='lkjihgf' AND f GLOB 'lmnop*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>+         OR (g='lkjihgf' AND f LIKE 'lmnop%')</div><div>          OR (d>=84.0 AND d<85.0 AND d IS NOT NULL)</div><div>          OR f='lmnopqrst'</div><div>   ]])</div><div>@@ -28680,7 +28680,7 @@ test:do_test(</div><div>       WHERE c>=34035</div><div>          OR a=29</div><div>          OR ((a BETWEEN 19 AND 21) AND a!=20)</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR f='abcdefghi'</div><div>          OR b=993</div><div>          OR ((a BETWEEN 52 AND 54) AND a!=53)</div><div>@@ -28700,7 +28700,7 @@ test:do_test(</div><div>       WHERE c>=34035</div><div>          OR a=29</div><div>          OR ((a BETWEEN 19 AND 21) AND a!=20)</div><div>-         OR (f GLOB '?wxyz*' AND f GLOB 'vwxy*')</div><div>+         OR (f LIKE '_wxyz%' AND f LIKE 'vwxy%')</div><div>          OR f='abcdefghi'</div><div>          OR b=993</div><div>          OR ((a BETWEEN 52 AND 54) AND a!=53)</div><div>@@ -28878,7 +28878,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 32 AND 34) AND a!=33)</div><div>          OR b=1045</div><div>          OR c=27027</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.771.1></div><div>@@ -28894,7 +28894,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 32 AND 34) AND a!=33)</div><div>          OR b=1045</div><div>          OR c=27027</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.771.2></div><div>@@ -28910,7 +28910,7 @@ test:do_test(</div><div>       WHERE a=87</div><div>          OR (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>          OR b=487</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.772.1></div><div>@@ -28926,7 +28926,7 @@ test:do_test(</div><div>       WHERE a=87</div><div>          OR (d>=47.0 AND d<48.0 AND d IS NOT NULL)</div><div>          OR b=487</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.772.2></div><div>@@ -29018,10 +29018,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=220</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR b=363</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>   ]])</div><div>@@ -29037,10 +29037,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=220</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR b=363</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'defgh*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'defgh%')</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>   ]])</div><div>@@ -29096,8 +29096,8 @@ test:do_test(</div><div>       WHERE b=1059</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>          OR b=960</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR b=894</div><div>          OR c=2002</div><div>   ]])</div><div>@@ -29115,8 +29115,8 @@ test:do_test(</div><div>       WHERE b=1059</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>          OR b=960</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR b=894</div><div>          OR c=2002</div><div>   ]])</div><div>@@ -29132,7 +29132,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=14</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.778.1></div><div>@@ -29146,7 +29146,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=14</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.778.2></div><div>@@ -29160,7 +29160,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=806</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>          OR b=795</div><div>          OR ((a BETWEEN 99 AND 101) AND a!=100)</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>@@ -29180,7 +29180,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=806</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>          OR b=795</div><div>          OR ((a BETWEEN 99 AND 101) AND a!=100)</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>@@ -29200,7 +29200,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=726</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>          OR f='abcdefghi'</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>@@ -29218,7 +29218,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=726</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>          OR f='abcdefghi'</div><div>          OR (d>=92.0 AND d<93.0 AND d IS NOT NULL)</div><div>@@ -29238,7 +29238,7 @@ test:do_test(</div><div>       WHERE a=59</div><div>          OR ((a BETWEEN 5 AND 7) AND a!=6)</div><div>          OR b=1081</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.781.1></div><div>@@ -29254,7 +29254,7 @@ test:do_test(</div><div>       WHERE a=59</div><div>          OR ((a BETWEEN 5 AND 7) AND a!=6)</div><div>          OR b=1081</div><div>-         OR (g='fedcbaz' AND f GLOB 'stuvw*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'stuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.781.2></div><div>@@ -29267,15 +29267,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR b=1037</div><div>          OR b=132</div><div>          OR c=1001</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR (d>=58.0 AND d<59.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR a=32</div><div>   ]])</div><div>     end, {</div><div>@@ -29289,15 +29289,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR b=1037</div><div>          OR b=132</div><div>          OR c=1001</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR (d>=58.0 AND d<59.0 AND d IS NOT NULL)</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR a=32</div><div>   ]])</div><div>     end, {</div><div>@@ -29355,7 +29355,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=1001</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>          OR a=83</div><div>@@ -29371,7 +29371,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=1001</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>          OR a=83</div><div>@@ -29389,13 +29389,13 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>          OR b=36</div><div>-         OR (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>+         OR (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>          OR ((a BETWEEN 46 AND 48) AND a!=47)</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>          OR (d>=91.0 AND d<92.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 26 AND 28) AND a!=27)</div><div>   ]])</div><div>@@ -29412,13 +29412,13 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>          OR b=36</div><div>-         OR (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>+         OR (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>          OR ((a BETWEEN 46 AND 48) AND a!=47)</div><div>          OR ((a BETWEEN 31 AND 33) AND a!=32)</div><div>          OR (d>=91.0 AND d<92.0 AND d IS NOT NULL)</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 26 AND 28) AND a!=27)</div><div>   ]])</div><div>@@ -29434,7 +29434,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=69</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR ((a BETWEEN 58 AND 60) AND a!=59)</div><div>          OR a=98</div><div>          OR b=300</div><div>@@ -29456,7 +29456,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=69</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR ((a BETWEEN 58 AND 60) AND a!=59)</div><div>          OR a=98</div><div>          OR b=300</div><div>@@ -29480,8 +29480,8 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR (d>=71.0 AND d<72.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 94 AND 96) AND a!=95)</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>          OR b=619</div><div>          OR c=6006</div><div>@@ -29503,8 +29503,8 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR (d>=71.0 AND d<72.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 94 AND 96) AND a!=95)</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>          OR b=619</div><div>          OR c=6006</div><div>@@ -29525,7 +29525,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 9 AND 11) AND a!=10)</div><div>          OR a=55</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.788.1></div><div>@@ -29540,7 +29540,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 9 AND 11) AND a!=10)</div><div>          OR a=55</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.788.2></div><div>@@ -29558,7 +29558,7 @@ test:do_test(</div><div>          OR b=201</div><div>          OR a=7</div><div>          OR (d>=26.0 AND d<27.0 AND d IS NOT NULL)</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR b=957</div><div>   ]])</div><div>     end, {</div><div>@@ -29577,7 +29577,7 @@ test:do_test(</div><div>          OR b=201</div><div>          OR a=7</div><div>          OR (d>=26.0 AND d<27.0 AND d IS NOT NULL)</div><div>-         OR (g='yxwvuts' AND f GLOB 'cdefg*')</div><div>+         OR (g='yxwvuts' AND f LIKE 'cdefg%')</div><div>          OR b=957</div><div>   ]])</div><div>     end, {</div><div>@@ -29593,10 +29593,10 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 90 AND 92) AND a!=91)</div><div>          OR a=74</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>          OR a=89</div><div>   ]])</div><div>     end, {</div><div>@@ -29612,10 +29612,10 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 90 AND 92) AND a!=91)</div><div>          OR a=74</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>-         OR (f GLOB '?tuvw*' AND f GLOB 'stuv*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>+         OR (f LIKE '_tuvw%' AND f LIKE 'stuv%')</div><div>          OR a=89</div><div>   ]])</div><div>     end, {</div><div>@@ -29636,7 +29636,7 @@ test:do_test(</div><div>          OR b=495</div><div>          OR b=564</div><div>          OR b=289</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.791.1></div><div>@@ -29656,7 +29656,7 @@ test:do_test(</div><div>          OR b=495</div><div>          OR b=564</div><div>          OR b=289</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.791.2></div><div>@@ -29669,7 +29669,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR a=69</div><div>          OR a=12</div><div>          OR b=718</div><div>@@ -29686,7 +29686,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR a=69</div><div>          OR a=12</div><div>          OR b=718</div><div>@@ -29703,7 +29703,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR f='klmnopqrs'</div><div>          OR b=674</div><div>          OR a=96</div><div>@@ -29712,7 +29712,7 @@ test:do_test(</div><div>          OR b=707</div><div>          OR f='cdefghijk'</div><div>          OR a=91</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.793.1></div><div>@@ -29725,7 +29725,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR f='klmnopqrs'</div><div>          OR b=674</div><div>          OR a=96</div><div>@@ -29734,7 +29734,7 @@ test:do_test(</div><div>          OR b=707</div><div>          OR f='cdefghijk'</div><div>          OR a=91</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.793.2></div><div>@@ -29747,12 +29747,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+      WHERE (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR b=564</div><div>          OR b=784</div><div>          OR b=418</div><div>          OR b=275</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR a=58</div><div>          OR c=11011</div><div>          OR b=660</div><div>@@ -29768,12 +29768,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+      WHERE (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR b=564</div><div>          OR b=784</div><div>          OR b=418</div><div>          OR b=275</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>          OR a=58</div><div>          OR c=11011</div><div>          OR b=660</div><div>@@ -29794,7 +29794,7 @@ test:do_test(</div><div>          OR b=1004</div><div>          OR ((a BETWEEN 28 AND 30) AND a!=29)</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>-         OR (g='mlkjihg' AND f GLOB 'hijkl*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'hijkl%')</div><div>          OR f='pqrstuvwx'</div><div>   ]])</div><div>     end, {</div><div>@@ -29813,7 +29813,7 @@ test:do_test(</div><div>          OR b=1004</div><div>          OR ((a BETWEEN 28 AND 30) AND a!=29)</div><div>          OR ((a BETWEEN 57 AND 59) AND a!=58)</div><div>-         OR (g='mlkjihg' AND f GLOB 'hijkl*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'hijkl%')</div><div>          OR f='pqrstuvwx'</div><div>   ]])</div><div>     end, {</div><div>@@ -29886,7 +29886,7 @@ test:do_test(</div><div>       WHERE a=19</div><div>          OR a=29</div><div>          OR b=476</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR b=91</div><div>   ]])</div><div>     end, {</div><div>@@ -29903,7 +29903,7 @@ test:do_test(</div><div>       WHERE a=19</div><div>          OR a=29</div><div>          OR b=476</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR b=91</div><div>   ]])</div><div>     end, {</div><div>@@ -29954,8 +29954,8 @@ test:do_test(</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>          OR b=44</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>          OR b=707</div><div>          OR b=322</div><div>   ]])</div><div>@@ -29975,8 +29975,8 @@ test:do_test(</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>          OR ((a BETWEEN 32 AND 34) AND a!=33)</div><div>          OR b=44</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>          OR b=707</div><div>          OR b=322</div><div>   ]])</div><div>@@ -29991,8 +29991,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+      WHERE (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>          OR f='jklmnopqr'</div><div>   ]])</div><div>@@ -30007,8 +30007,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+      WHERE (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR (d>=89.0 AND d<90.0 AND d IS NOT NULL)</div><div>          OR f='jklmnopqr'</div><div>   ]])</div><div>@@ -30024,14 +30024,14 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=946</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR a=47</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR (d>=93.0 AND d<94.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR b=80</div><div>          OR ((a BETWEEN 60 AND 62) AND a!=61)</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.802.1></div><div>@@ -30045,14 +30045,14 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=946</div><div>-         OR (g='ihgfedc' AND f GLOB 'abcde*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'abcde%')</div><div>          OR a=47</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR (d>=93.0 AND d<94.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>          OR b=80</div><div>          OR ((a BETWEEN 60 AND 62) AND a!=61)</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.802.2></div><div>@@ -30069,10 +30069,10 @@ test:do_test(</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>          OR b=1015</div><div>          OR a=57</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR ((a BETWEEN 47 AND 49) AND a!=48)</div><div>          OR ((a BETWEEN 98 AND 100) AND a!=99)</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>          OR (d>=4.0 AND d<5.0 AND d IS NOT NULL)</div><div>          OR b=165</div><div>   ]])</div><div>@@ -30091,10 +30091,10 @@ test:do_test(</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>          OR b=1015</div><div>          OR a=57</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR ((a BETWEEN 47 AND 49) AND a!=48)</div><div>          OR ((a BETWEEN 98 AND 100) AND a!=99)</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>          OR (d>=4.0 AND d<5.0 AND d IS NOT NULL)</div><div>          OR b=165</div><div>   ]])</div><div>@@ -30113,7 +30113,7 @@ test:do_test(</div><div>          OR a=73</div><div>          OR b=1048</div><div>          OR c>=34035</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>          OR a=72</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>          OR b=638</div><div>@@ -30133,7 +30133,7 @@ test:do_test(</div><div>          OR a=73</div><div>          OR b=1048</div><div>          OR c>=34035</div><div>-         OR (g='ihgfedc' AND f GLOB 'cdefg*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'cdefg%')</div><div>          OR a=72</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>          OR b=638</div><div>@@ -30181,10 +30181,10 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=50</div><div>          OR ((a BETWEEN 61 AND 63) AND a!=62)</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR a=32</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>          OR a=14</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>          OR b=946</div><div>@@ -30204,10 +30204,10 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=50</div><div>          OR ((a BETWEEN 61 AND 63) AND a!=62)</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR a=32</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>          OR a=14</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>          OR b=946</div><div>@@ -30228,7 +30228,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 88 AND 90) AND a!=89)</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.807.1></div><div>@@ -30244,7 +30244,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 88 AND 90) AND a!=89)</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.807.2></div><div>@@ -30259,7 +30259,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=6</div><div>          OR f='tuvwxyzab'</div><div>-         OR (g='mlkjihg' AND f GLOB 'hijkl*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'hijkl%')</div><div>          OR b=286</div><div>          OR b=781</div><div>   ]])</div><div>@@ -30276,7 +30276,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=6</div><div>          OR f='tuvwxyzab'</div><div>-         OR (g='mlkjihg' AND f GLOB 'hijkl*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'hijkl%')</div><div>          OR b=286</div><div>          OR b=781</div><div>   ]])</div><div>@@ -30291,12 +30291,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='jihgfed' AND f GLOB 'zabcd*')</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'zabcd%')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 79 AND 81) AND a!=80)</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR f='vwxyzabcd'</div><div>          OR b=275</div><div>   ]])</div><div>@@ -30311,12 +30311,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='jihgfed' AND f GLOB 'zabcd*')</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'zabcd%')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 79 AND 81) AND a!=80)</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR f='vwxyzabcd'</div><div>          OR b=275</div><div>   ]])</div><div>@@ -30332,10 +30332,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=30.0 AND d<31.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR (d>=64.0 AND d<65.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR a=59</div><div>   ]])</div><div>     end, {</div><div>@@ -30350,10 +30350,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=30.0 AND d<31.0 AND d IS NOT NULL)</div><div>-         OR (g='xwvutsr' AND f GLOB 'efghi*')</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'efghi%')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR (d>=64.0 AND d<65.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+         OR (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR a=59</div><div>   ]])</div><div>     end, {</div><div>@@ -30367,10 +30367,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+      WHERE (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR b=663</div><div>          OR f='ghijklmno'</div><div>          OR ((a BETWEEN 14 AND 16) AND a!=15)</div><div>@@ -30390,10 +30390,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+      WHERE (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR b=663</div><div>          OR f='ghijklmno'</div><div>          OR ((a BETWEEN 14 AND 16) AND a!=15)</div><div>@@ -30420,9 +30420,9 @@ test:do_test(</div><div>          OR b=597</div><div>          OR ((a BETWEEN 92 AND 94) AND a!=93)</div><div>          OR (d>=88.0 AND d<89.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?lmno*' AND f GLOB 'klmn*')</div><div>+         OR (f LIKE '_lmno%' AND f LIKE 'klmn%')</div><div>          OR b=168</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.812.1></div><div>@@ -30442,9 +30442,9 @@ test:do_test(</div><div>          OR b=597</div><div>          OR ((a BETWEEN 92 AND 94) AND a!=93)</div><div>          OR (d>=88.0 AND d<89.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?lmno*' AND f GLOB 'klmn*')</div><div>+         OR (f LIKE '_lmno%' AND f LIKE 'klmn%')</div><div>          OR b=168</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.812.2></div><div>@@ -30498,7 +30498,7 @@ test:do_test(</div><div>          OR a=75</div><div>          OR b=179</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>          OR b=850</div><div>          OR a=62</div><div>@@ -30519,7 +30519,7 @@ test:do_test(</div><div>          OR a=75</div><div>          OR b=179</div><div>          OR (d>=43.0 AND d<44.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'stuvw*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'stuvw%')</div><div>          OR (d>=65.0 AND d<66.0 AND d IS NOT NULL)</div><div>          OR b=850</div><div>          OR a=62</div><div>@@ -30583,7 +30583,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=176</div><div>          OR b=297</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR f='ijklmnopq'</div><div>   ]])</div><div>     end, {</div><div>@@ -30599,7 +30599,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=176</div><div>          OR b=297</div><div>-         OR (g='tsrqpon' AND f GLOB 'zabcd*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'zabcd%')</div><div>          OR f='ijklmnopq'</div><div>   ]])</div><div>     end, {</div><div>@@ -30653,9 +30653,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>          OR b=396</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR b=1012</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR b=784</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>          OR b=979</div><div>@@ -30676,9 +30676,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>          OR b=396</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR b=1012</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR b=784</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>          OR b=979</div><div>@@ -30726,9 +30726,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 79 AND 81) AND a!=80)</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.820.1></div><div>@@ -30742,9 +30742,9 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 79 AND 81) AND a!=80)</div><div>-         OR (f GLOB '?rstu*' AND f GLOB 'qrst*')</div><div>+         OR (f LIKE '_rstu%' AND f LIKE 'qrst%')</div><div>          OR ((a BETWEEN 23 AND 25) AND a!=24)</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.820.2></div><div>@@ -30830,7 +30830,7 @@ test:do_test(</div><div>          OR c=19019</div><div>          OR b=245</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>-         OR (f GLOB '?nopq*' AND f GLOB 'mnop*')</div><div>+         OR (f LIKE '_nopq%' AND f LIKE 'mnop%')</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR b=572</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>@@ -30853,7 +30853,7 @@ test:do_test(</div><div>          OR c=19019</div><div>          OR b=245</div><div>          OR ((a BETWEEN 97 AND 99) AND a!=98)</div><div>-         OR (f GLOB '?nopq*' AND f GLOB 'mnop*')</div><div>+         OR (f LIKE '_nopq%' AND f LIKE 'mnop%')</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR b=572</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>@@ -30915,7 +30915,7 @@ test:do_test(</div><div>          OR (d>=40.0 AND d<41.0 AND d IS NOT NULL)</div><div>          OR b=828</div><div>          OR b=363</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.825.1></div><div>@@ -30934,7 +30934,7 @@ test:do_test(</div><div>          OR (d>=40.0 AND d<41.0 AND d IS NOT NULL)</div><div>          OR b=828</div><div>          OR b=363</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.825.2></div><div>@@ -30947,7 +30947,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR a=41</div><div>          OR (d>=29.0 AND d<30.0 AND d IS NOT NULL)</div><div>          OR b=825</div><div>@@ -30963,7 +30963,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR a=41</div><div>          OR (d>=29.0 AND d<30.0 AND d IS NOT NULL)</div><div>          OR b=825</div><div>@@ -30986,7 +30986,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR b=561</div><div>          OR c=8008</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>          OR b=935</div><div>          OR c=1001</div><div>   ]])</div><div>@@ -31008,7 +31008,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR b=561</div><div>          OR c=8008</div><div>-         OR (g='hgfedcb' AND f GLOB 'ghijk*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'ghijk%')</div><div>          OR b=935</div><div>          OR c=1001</div><div>   ]])</div><div>@@ -31024,7 +31024,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 75 AND 77) AND a!=76)</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.828.1></div><div>@@ -31038,7 +31038,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 75 AND 77) AND a!=76)</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.828.2></div><div>@@ -31114,9 +31114,9 @@ test:do_test(</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>          OR f='zabcdefgh'</div><div>          OR b=861</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR a=28</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR b=311</div><div>   ]])</div><div>     end, {</div><div>@@ -31137,9 +31137,9 @@ test:do_test(</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>          OR f='zabcdefgh'</div><div>          OR b=861</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>          OR a=28</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR b=311</div><div>   ]])</div><div>     end, {</div><div>@@ -31154,10 +31154,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=575</div><div>-         OR (f GLOB '?nopq*' AND f GLOB 'mnop*')</div><div>+         OR (f LIKE '_nopq%' AND f LIKE 'mnop%')</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>          OR b=418</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR b=792</div><div>          OR b=861</div><div>          OR b=220</div><div>@@ -31175,10 +31175,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=575</div><div>-         OR (f GLOB '?nopq*' AND f GLOB 'mnop*')</div><div>+         OR (f LIKE '_nopq%' AND f LIKE 'mnop%')</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>          OR b=418</div><div>-         OR (f GLOB '?qrst*' AND f GLOB 'pqrs*')</div><div>+         OR (f LIKE '_qrst%' AND f LIKE 'pqrs%')</div><div>          OR b=792</div><div>          OR b=861</div><div>          OR b=220</div><div>@@ -31233,7 +31233,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR b=693</div><div>          OR a=73</div><div>          OR b=627</div><div>@@ -31243,7 +31243,7 @@ test:do_test(</div><div>          OR b=267</div><div>          OR b=872</div><div>          OR a=27</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.834.1></div><div>@@ -31256,7 +31256,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR b=693</div><div>          OR a=73</div><div>          OR b=627</div><div>@@ -31266,7 +31266,7 @@ test:do_test(</div><div>          OR b=267</div><div>          OR b=872</div><div>          OR a=27</div><div>-         OR (g='gfedcba' AND f GLOB 'klmno*')</div><div>+         OR (g='gfedcba' AND f LIKE 'klmno%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.834.2></div><div>@@ -31351,15 +31351,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR b=66</div><div>          OR b=322</div><div>          OR b=465</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR (d>=7.0 AND d<8.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 77 AND 79) AND a!=78)</div><div>-         OR (g='lkjihgf' AND f GLOB 'mnopq*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'mnopq%')</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR b=454</div><div>   ]])</div><div>@@ -31374,15 +31374,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR b=66</div><div>          OR b=322</div><div>          OR b=465</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR (d>=7.0 AND d<8.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 77 AND 79) AND a!=78)</div><div>-         OR (g='lkjihgf' AND f GLOB 'mnopq*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'mnopq%')</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR b=454</div><div>   ]])</div><div>@@ -31402,7 +31402,7 @@ test:do_test(</div><div>          OR c=15015</div><div>          OR (d>=84.0 AND d<85.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR b=803</div><div>   ]])</div><div>     end, {</div><div>@@ -31421,7 +31421,7 @@ test:do_test(</div><div>          OR c=15015</div><div>          OR (d>=84.0 AND d<85.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 3 AND 5) AND a!=4)</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR b=803</div><div>   ]])</div><div>     end, {</div><div>@@ -31436,12 +31436,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=1100</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 72 AND 74) AND a!=73)</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR a=75</div><div>          OR a=45</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR a=27</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>          OR b=850</div><div>@@ -31459,12 +31459,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=1100</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 72 AND 74) AND a!=73)</div><div>          OR ((a BETWEEN 68 AND 70) AND a!=69)</div><div>          OR a=75</div><div>          OR a=45</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR a=27</div><div>          OR (d>=77.0 AND d<78.0 AND d IS NOT NULL)</div><div>          OR b=850</div><div>@@ -31484,7 +31484,7 @@ test:do_test(</div><div>       WHERE b=751</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>          OR (d>=71.0 AND d<72.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>          OR a=89</div><div>          OR ((a BETWEEN 36 AND 38) AND a!=37)</div><div>@@ -31503,7 +31503,7 @@ test:do_test(</div><div>       WHERE b=751</div><div>          OR ((a BETWEEN 96 AND 98) AND a!=97)</div><div>          OR (d>=71.0 AND d<72.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>          OR a=89</div><div>          OR ((a BETWEEN 36 AND 38) AND a!=37)</div><div>@@ -31519,10 +31519,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR a=1</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.841.1></div><div>@@ -31535,10 +31535,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='wvutsrq' AND f GLOB 'jklmn*')</div><div>-         OR (g='yxwvuts' AND f GLOB 'bcdef*')</div><div>+      WHERE (g='wvutsrq' AND f LIKE 'jklmn%')</div><div>+         OR (g='yxwvuts' AND f LIKE 'bcdef%')</div><div>          OR a=1</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.841.2></div><div>@@ -31557,9 +31557,9 @@ test:do_test(</div><div>          OR c=8008</div><div>          OR ((a BETWEEN 41 AND 43) AND a!=42)</div><div>          OR b=960</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>          OR b=443</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.842.1></div><div>@@ -31578,9 +31578,9 @@ test:do_test(</div><div>          OR c=8008</div><div>          OR ((a BETWEEN 41 AND 43) AND a!=42)</div><div>          OR b=960</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>          OR b=443</div><div>-         OR (g='rqponml' AND f GLOB 'ijklm*')</div><div>+         OR (g='rqponml' AND f LIKE 'ijklm%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.842.2></div><div>@@ -31624,14 +31624,14 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=685</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>          OR b=520</div><div>          OR (d>=76.0 AND d<77.0 AND d IS NOT NULL)</div><div>          OR a=53</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>          OR b=938</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR c=25025</div><div>   ]])</div><div>     end, {</div><div>@@ -31646,14 +31646,14 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=685</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR (d>=63.0 AND d<64.0 AND d IS NOT NULL)</div><div>          OR b=520</div><div>          OR (d>=76.0 AND d<77.0 AND d IS NOT NULL)</div><div>          OR a=53</div><div>          OR ((a BETWEEN 91 AND 93) AND a!=92)</div><div>          OR b=938</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR c=25025</div><div>   ]])</div><div>     end, {</div><div>@@ -31700,7 +31700,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE f='abcdefghi'</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.846.1></div><div>@@ -31714,7 +31714,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE f='abcdefghi'</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.846.2></div><div>@@ -31802,7 +31802,7 @@ test:do_test(</div><div>       WHERE b=209</div><div>          OR b=806</div><div>          OR (d>=8.0 AND d<9.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.849.1></div><div>@@ -31818,7 +31818,7 @@ test:do_test(</div><div>       WHERE b=209</div><div>          OR b=806</div><div>          OR (d>=8.0 AND d<9.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'rstuv*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'rstuv%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.849.2></div><div>@@ -31863,10 +31863,10 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=4.0 AND d<5.0 AND d IS NOT NULL)</div><div>          OR a=45</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR a=69</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.851.1></div><div>@@ -31881,10 +31881,10 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=4.0 AND d<5.0 AND d IS NOT NULL)</div><div>          OR a=45</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR a=69</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.851.2></div><div>@@ -31899,9 +31899,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE c=9009</div><div>          OR (d>=85.0 AND d<86.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.852.1></div><div>@@ -31916,9 +31916,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE c=9009</div><div>          OR (d>=85.0 AND d<86.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR (d>=9.0 AND d<10.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'pqrst*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'pqrst%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.852.2></div><div>@@ -31937,7 +31937,7 @@ test:do_test(</div><div>          OR a=47</div><div>          OR c=24024</div><div>          OR a=27</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -31957,7 +31957,7 @@ test:do_test(</div><div>          OR a=47</div><div>          OR c=24024</div><div>          OR a=27</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -31971,9 +31971,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR a=19</div><div>   ]])</div><div>     end, {</div><div>@@ -31987,9 +31987,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR a=19</div><div>   ]])</div><div>     end, {</div><div>@@ -32006,7 +32006,7 @@ test:do_test(</div><div>       WHERE c=12012</div><div>          OR (d>=80.0 AND d<81.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 16 AND 18) AND a!=17)</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.855.1></div><div>@@ -32022,7 +32022,7 @@ test:do_test(</div><div>       WHERE c=12012</div><div>          OR (d>=80.0 AND d<81.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 16 AND 18) AND a!=17)</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.855.2></div><div>@@ -32036,7 +32036,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 38 AND 40) AND a!=39)</div><div>-         OR (f GLOB '?nopq*' AND f GLOB 'mnop*')</div><div>+         OR (f LIKE '_nopq%' AND f LIKE 'mnop%')</div><div>          OR b=429</div><div>          OR f='jklmnopqr'</div><div>          OR (d>=48.0 AND d<49.0 AND d IS NOT NULL)</div><div>@@ -32054,7 +32054,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 38 AND 40) AND a!=39)</div><div>-         OR (f GLOB '?nopq*' AND f GLOB 'mnop*')</div><div>+         OR (f LIKE '_nopq%' AND f LIKE 'mnop%')</div><div>          OR b=429</div><div>          OR f='jklmnopqr'</div><div>          OR (d>=48.0 AND d<49.0 AND d IS NOT NULL)</div><div>@@ -32071,7 +32071,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'mnopq%')</div><div>          OR b=190</div><div>   ]])</div><div>     end, {</div><div>@@ -32085,7 +32085,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'mnopq%')</div><div>          OR b=190</div><div>   ]])</div><div>     end, {</div><div>@@ -32099,7 +32099,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'yzabc%')</div><div>          OR b=674</div><div>          OR b=289</div><div>   ]])</div><div>@@ -32114,7 +32114,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'yzabc%')</div><div>          OR b=674</div><div>          OR b=289</div><div>   ]])</div><div>@@ -32131,8 +32131,8 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=17</div><div>          OR b=539</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.859.1></div><div>@@ -32147,8 +32147,8 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=17</div><div>          OR b=539</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.859.2></div><div>@@ -32259,12 +32259,12 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE f='ghijklmno'</div><div>          OR a=26</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR a=81</div><div>          OR (d>=3.0 AND d<4.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 28 AND 30) AND a!=29)</div><div>          OR b=275</div><div>-         OR (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>          OR b=311</div><div>          OR b=894</div><div>          OR b=872</div><div>@@ -32282,12 +32282,12 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE f='ghijklmno'</div><div>          OR a=26</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR a=81</div><div>          OR (d>=3.0 AND d<4.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 28 AND 30) AND a!=29)</div><div>          OR b=275</div><div>-         OR (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>          OR b=311</div><div>          OR b=894</div><div>          OR b=872</div><div>@@ -32376,12 +32376,12 @@ test:do_test(</div><div>       WHERE a=44</div><div>          OR b=55</div><div>          OR a=30</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR 1000000<b</div><div>          OR a=24</div><div>          OR b=1089</div><div>          OR (d>=75.0 AND d<76.0 AND d IS NOT NULL)</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.866.1></div><div>@@ -32397,12 +32397,12 @@ test:do_test(</div><div>       WHERE a=44</div><div>          OR b=55</div><div>          OR a=30</div><div>-         OR (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+         OR (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR 1000000<b</div><div>          OR a=24</div><div>          OR b=1089</div><div>          OR (d>=75.0 AND d<76.0 AND d IS NOT NULL)</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.866.2></div><div>@@ -32487,14 +32487,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 25 AND 27) AND a!=26)</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR f='xyzabcdef'</div><div>          OR b=517</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.869.1></div><div>@@ -32507,14 +32507,14 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>+      WHERE (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 25 AND 27) AND a!=26)</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR ((a BETWEEN 89 AND 91) AND a!=90)</div><div>          OR f='xyzabcdef'</div><div>          OR b=517</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.869.2></div><div>@@ -32555,9 +32555,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'yzabc*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'yzabc%')</div><div>          OR b=762</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR a=25</div><div>          OR ((a BETWEEN 65 AND 67) AND a!=66)</div><div>   ]])</div><div>@@ -32572,9 +32572,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='tsrqpon' AND f GLOB 'yzabc*')</div><div>+      WHERE (g='tsrqpon' AND f LIKE 'yzabc%')</div><div>          OR b=762</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR a=25</div><div>          OR ((a BETWEEN 65 AND 67) AND a!=66)</div><div>   ]])</div><div>@@ -32594,9 +32594,9 @@ test:do_test(</div><div>          OR b=839</div><div>          OR f='defghijkl'</div><div>          OR (d>=95.0 AND d<96.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR b=498</div><div>   ]])</div><div>     end, {</div><div>@@ -32615,9 +32615,9 @@ test:do_test(</div><div>          OR b=839</div><div>          OR f='defghijkl'</div><div>          OR (d>=95.0 AND d<96.0 AND d IS NOT NULL)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR (d>=52.0 AND d<53.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR b=498</div><div>   ]])</div><div>     end, {</div><div>@@ -32667,7 +32667,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=256</div><div>          OR b=586</div><div>          OR a=74</div><div>@@ -32686,7 +32686,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='mlkjihg' AND f GLOB 'jklmn*')</div><div>+      WHERE (g='mlkjihg' AND f LIKE 'jklmn%')</div><div>          OR b=256</div><div>          OR b=586</div><div>          OR a=74</div><div>@@ -32739,14 +32739,14 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=308</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR a=83</div><div>          OR c=23023</div><div>          OR (d>=57.0 AND d<58.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR a=58</div><div>          OR ((a BETWEEN 17 AND 19) AND a!=18)</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR c=4004</div><div>   ]])</div><div>     end, {</div><div>@@ -32762,14 +32762,14 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=308</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>          OR a=83</div><div>          OR c=23023</div><div>          OR (d>=57.0 AND d<58.0 AND d IS NOT NULL)</div><div>-         OR (g='lkjihgf' AND f GLOB 'nopqr*')</div><div>+         OR (g='lkjihgf' AND f LIKE 'nopqr%')</div><div>          OR a=58</div><div>          OR ((a BETWEEN 17 AND 19) AND a!=18)</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR c=4004</div><div>   ]])</div><div>     end, {</div><div>@@ -32789,7 +32789,7 @@ test:do_test(</div><div>          OR b=762</div><div>          OR b=157</div><div>          OR (d>=17.0 AND d<18.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.877.1></div><div>@@ -32808,7 +32808,7 @@ test:do_test(</div><div>          OR b=762</div><div>          OR b=157</div><div>          OR (d>=17.0 AND d<18.0 AND d IS NOT NULL)</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.877.2></div><div>@@ -32825,12 +32825,12 @@ test:do_test(</div><div>          OR a=1</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>          OR b=278</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR f='qrstuvwxy'</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR ((a BETWEEN 82 AND 84) AND a!=83)</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -32848,12 +32848,12 @@ test:do_test(</div><div>          OR a=1</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>          OR b=278</div><div>-         OR (g='xwvutsr' AND f GLOB 'defgh*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'defgh%')</div><div>          OR f='qrstuvwxy'</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR ((a BETWEEN 82 AND 84) AND a!=83)</div><div>-         OR (g='edcbazy' AND f GLOB 'uvwxy*')</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'uvwxy%')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -32872,9 +32872,9 @@ test:do_test(</div><div>          OR ((a BETWEEN 41 AND 43) AND a!=42)</div><div>          OR (d>=96.0 AND d<97.0 AND d IS NOT NULL)</div><div>          OR b=759</div><div>-         OR (f GLOB '?nopq*' AND f GLOB 'mnop*')</div><div>+         OR (f LIKE '_nopq%' AND f LIKE 'mnop%')</div><div>          OR ((a BETWEEN 45 AND 47) AND a!=46)</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.879.1></div><div>@@ -32892,9 +32892,9 @@ test:do_test(</div><div>          OR ((a BETWEEN 41 AND 43) AND a!=42)</div><div>          OR (d>=96.0 AND d<97.0 AND d IS NOT NULL)</div><div>          OR b=759</div><div>-         OR (f GLOB '?nopq*' AND f GLOB 'mnop*')</div><div>+         OR (f LIKE '_nopq%' AND f LIKE 'mnop%')</div><div>          OR ((a BETWEEN 45 AND 47) AND a!=46)</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.879.2></div><div>@@ -32916,7 +32916,7 @@ test:do_test(</div><div>          OR b=44</div><div>          OR f='zabcdefgh'</div><div>          OR b=979</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.880.1></div><div>@@ -32938,7 +32938,7 @@ test:do_test(</div><div>          OR b=44</div><div>          OR f='zabcdefgh'</div><div>          OR b=979</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.880.2></div><div>@@ -32988,7 +32988,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR a=90</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>          OR f='nopqrstuv'</div><div>   ]])</div><div>     end, {</div><div>@@ -33011,7 +33011,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR a=90</div><div>          OR (d>=66.0 AND d<67.0 AND d IS NOT NULL)</div><div>-         OR (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>          OR f='nopqrstuv'</div><div>   ]])</div><div>     end, {</div><div>@@ -33061,7 +33061,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>          OR d<0.0</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR c=9009</div><div>   ]])</div><div>     end, {</div><div>@@ -33083,7 +33083,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>          OR d<0.0</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR c=9009</div><div>   ]])</div><div>     end, {</div><div>@@ -33097,7 +33097,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+      WHERE (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR b=814</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -33112,7 +33112,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?uvwx*' AND f GLOB 'tuvw*')</div><div>+      WHERE (f LIKE '_uvwx%' AND f LIKE 'tuvw%')</div><div>          OR b=814</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -33127,7 +33127,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'mnopq%')</div><div>          OR b=333</div><div>          OR b=275</div><div>   ]])</div><div>@@ -33142,7 +33142,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'mnopq%')</div><div>          OR b=333</div><div>          OR b=275</div><div>   ]])</div><div>@@ -33157,7 +33157,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>   ]])</div><div>     end, {</div><div>@@ -33171,7 +33171,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+      WHERE (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>   ]])</div><div>     end, {</div><div>@@ -33187,7 +33187,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 11 AND 13) AND a!=12)</div><div>          OR b=253</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR b=286</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -33204,7 +33204,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 11 AND 13) AND a!=12)</div><div>          OR b=253</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR b=286</div><div>          OR (d>=10.0 AND d<11.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -33220,10 +33220,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=15.0 AND d<16.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 26 AND 28) AND a!=27)</div><div>          OR b=421</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR f='ijklmnopq'</div><div>          OR b=891</div><div>          OR b=1056</div><div>@@ -33240,10 +33240,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=15.0 AND d<16.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 26 AND 28) AND a!=27)</div><div>          OR b=421</div><div>-         OR (g='xwvutsr' AND f GLOB 'fghij*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'fghij%')</div><div>          OR f='ijklmnopq'</div><div>          OR b=891</div><div>          OR b=1056</div><div>@@ -33260,10 +33260,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE f='fghijklmn'</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR b=671</div><div>-         OR (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.890.1></div><div>@@ -33277,10 +33277,10 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE f='fghijklmn'</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>-         OR (g='edcbazy' AND f GLOB 'vwxyz*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>+         OR (g='edcbazy' AND f LIKE 'vwxyz%')</div><div>          OR b=671</div><div>-         OR (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+         OR (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.890.2></div><div>@@ -33293,10 +33293,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'lmnop*')</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'lmnop%')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -33310,10 +33310,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='lkjihgf' AND f GLOB 'lmnop*')</div><div>-         OR (g='srqponm' AND f GLOB 'fghij*')</div><div>+      WHERE (g='lkjihgf' AND f LIKE 'lmnop%')</div><div>+         OR (g='srqponm' AND f LIKE 'fghij%')</div><div>          OR ((a BETWEEN 4 AND 6) AND a!=5)</div><div>-         OR (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR (d>=11.0 AND d<12.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -33439,11 +33439,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 67 AND 69) AND a!=68)</div><div>          OR (d>=69.0 AND d<70.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR a=46</div><div>          OR b=187</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.895.1></div><div>@@ -33458,11 +33458,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 67 AND 69) AND a!=68)</div><div>          OR (d>=69.0 AND d<70.0 AND d IS NOT NULL)</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR a=46</div><div>          OR b=187</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.895.2></div><div>@@ -33522,7 +33522,7 @@ test:do_test(</div><div>          OR b=729</div><div>          OR ((a BETWEEN 81 AND 83) AND a!=82)</div><div>          OR a=58</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR b=608</div><div>   ]])</div><div>     end, {</div><div>@@ -33543,7 +33543,7 @@ test:do_test(</div><div>          OR b=729</div><div>          OR ((a BETWEEN 81 AND 83) AND a!=82)</div><div>          OR a=58</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR b=608</div><div>   ]])</div><div>     end, {</div><div>@@ -33561,7 +33561,7 @@ test:do_test(</div><div>          OR f='efghijklm'</div><div>          OR (d>=48.0 AND d<49.0 AND d IS NOT NULL)</div><div>          OR a=26</div><div>-         OR (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+         OR (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.898.1></div><div>@@ -33578,7 +33578,7 @@ test:do_test(</div><div>          OR f='efghijklm'</div><div>          OR (d>=48.0 AND d<49.0 AND d IS NOT NULL)</div><div>          OR a=26</div><div>-         OR (f GLOB '?efgh*' AND f GLOB 'defg*')</div><div>+         OR (f LIKE '_efgh%' AND f LIKE 'defg%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.898.2></div><div>@@ -33592,11 +33592,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE a=59</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR a=7</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR b=762</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.899.1></div><div>@@ -33610,11 +33610,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE a=59</div><div>-         OR (g='wvutsrq' AND f GLOB 'mnopq*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'mnopq%')</div><div>          OR a=7</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR b=762</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.899.2></div><div>@@ -33627,7 +33627,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR b=539</div><div>          OR b=399</div><div>   ]])</div><div>@@ -33642,7 +33642,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='gfedcba' AND f GLOB 'nopqr*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'nopqr%')</div><div>          OR b=539</div><div>          OR b=399</div><div>   ]])</div><div>@@ -33687,10 +33687,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+      WHERE (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR f='lmnopqrst'</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.902.1></div><div>@@ -33703,10 +33703,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>-         OR (g='rqponml' AND f GLOB 'klmno*')</div><div>+      WHERE (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>+         OR (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR f='lmnopqrst'</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.902.2></div><div>@@ -33751,14 +33751,14 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=1067</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR b=520</div><div>          OR b=399</div><div>          OR b=209</div><div>          OR a=68</div><div>-         OR (g='fedcbaz' AND f GLOB 'qrstu*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.904.1></div><div>@@ -33773,14 +33773,14 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=1067</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR b=520</div><div>          OR b=399</div><div>          OR b=209</div><div>          OR a=68</div><div>-         OR (g='fedcbaz' AND f GLOB 'qrstu*')</div><div>+         OR (g='fedcbaz' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.904.2></div><div>@@ -33798,7 +33798,7 @@ test:do_test(</div><div>          OR b=55</div><div>          OR (d>=34.0 AND d<35.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 20 AND 22) AND a!=21)</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR ((a BETWEEN 0 AND 2) AND a!=1)</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>   ]])</div><div>@@ -33818,7 +33818,7 @@ test:do_test(</div><div>          OR b=55</div><div>          OR (d>=34.0 AND d<35.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 20 AND 22) AND a!=21)</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR ((a BETWEEN 0 AND 2) AND a!=1)</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>   ]])</div><div>@@ -33837,7 +33837,7 @@ test:do_test(</div><div>          OR a=2</div><div>          OR b=784</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR b=850</div><div>   ]])</div><div>     end, {</div><div>@@ -33855,7 +33855,7 @@ test:do_test(</div><div>          OR a=2</div><div>          OR b=784</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>-         OR (g='ihgfedc' AND f GLOB 'defgh*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'defgh%')</div><div>          OR b=850</div><div>   ]])</div><div>     end, {</div><div>@@ -33903,17 +33903,17 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR a=18</div><div>          OR a=30</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>          OR ((a BETWEEN 84 AND 86) AND a!=85)</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>          OR b=792</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR ((a BETWEEN 19 AND 21) AND a!=20)</div><div>          OR c=26026</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.908.1></div><div>@@ -33926,17 +33926,17 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='jihgfed' AND f GLOB 'zabcd*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'zabcd%')</div><div>          OR a=18</div><div>          OR a=30</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>          OR ((a BETWEEN 84 AND 86) AND a!=85)</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>          OR b=792</div><div>-         OR (f GLOB '?mnop*' AND f GLOB 'lmno*')</div><div>+         OR (f LIKE '_mnop%' AND f LIKE 'lmno%')</div><div>          OR ((a BETWEEN 19 AND 21) AND a!=20)</div><div>          OR c=26026</div><div>-         OR (g='rqponml' AND f GLOB 'hijkl*')</div><div>+         OR (g='rqponml' AND f LIKE 'hijkl%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.908.2></div><div>@@ -33949,11 +33949,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+      WHERE (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>          OR b=968</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>          OR a=78</div><div>          OR ((a BETWEEN 90 AND 92) AND a!=91)</div><div>@@ -33969,11 +33969,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+      WHERE (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>          OR b=968</div><div>          OR ((a BETWEEN 63 AND 65) AND a!=64)</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR (d>=72.0 AND d<73.0 AND d IS NOT NULL)</div><div>          OR a=78</div><div>          OR ((a BETWEEN 90 AND 92) AND a!=91)</div><div>@@ -34096,7 +34096,7 @@ test:do_test(</div><div>          OR (d>=78.0 AND d<79.0 AND d IS NOT NULL)</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>          OR a=81</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>          OR f='mnopqrstu'</div><div>   ]])</div><div>     end, {</div><div>@@ -34117,7 +34117,7 @@ test:do_test(</div><div>          OR (d>=78.0 AND d<79.0 AND d IS NOT NULL)</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>          OR a=81</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>          OR f='mnopqrstu'</div><div>   ]])</div><div>     end, {</div><div>@@ -34177,7 +34177,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 20 AND 22) AND a!=21)</div><div>          OR ((a BETWEEN 27 AND 29) AND a!=28)</div><div>          OR b=319</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR ((a BETWEEN 14 AND 16) AND a!=15)</div><div>   ]])</div><div>     end, {</div><div>@@ -34197,7 +34197,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 20 AND 22) AND a!=21)</div><div>          OR ((a BETWEEN 27 AND 29) AND a!=28)</div><div>          OR b=319</div><div>-         OR (g='qponmlk' AND f GLOB 'opqrs*')</div><div>+         OR (g='qponmlk' AND f LIKE 'opqrs%')</div><div>          OR ((a BETWEEN 14 AND 16) AND a!=15)</div><div>   ]])</div><div>     end, {</div><div>@@ -34214,7 +34214,7 @@ test:do_test(</div><div>       WHERE b=179</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>          OR a=46</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>          OR a=25</div><div>          OR (d>=5.0 AND d<6.0 AND d IS NOT NULL)</div><div>@@ -34237,7 +34237,7 @@ test:do_test(</div><div>       WHERE b=179</div><div>          OR ((a BETWEEN 95 AND 97) AND a!=96)</div><div>          OR a=46</div><div>-         OR (g='kjihgfe' AND f GLOB 'uvwxy*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 53 AND 55) AND a!=54)</div><div>          OR a=25</div><div>          OR (d>=5.0 AND d<6.0 AND d IS NOT NULL)</div><div>@@ -34257,7 +34257,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR (d>=15.0 AND d<16.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -34271,7 +34271,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR (d>=15.0 AND d<16.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -34286,7 +34286,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=748</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR a=32</div><div>          OR b=110</div><div>          OR b=297</div><div>@@ -34308,7 +34308,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=748</div><div>-         OR (g='utsrqpo' AND f GLOB 'wxyza*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'wxyza%')</div><div>          OR a=32</div><div>          OR b=110</div><div>          OR b=297</div><div>@@ -34332,13 +34332,13 @@ test:do_test(</div><div>       WHERE (d>=33.0 AND d<34.0 AND d IS NOT NULL)</div><div>          OR b=905</div><div>          OR a=97</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR c=27027</div><div>          OR f='bcdefghij'</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR (d>=25.0 AND d<26.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.919.1></div><div>@@ -34354,13 +34354,13 @@ test:do_test(</div><div>       WHERE (d>=33.0 AND d<34.0 AND d IS NOT NULL)</div><div>          OR b=905</div><div>          OR a=97</div><div>-         OR (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR c=27027</div><div>          OR f='bcdefghij'</div><div>          OR (d>=54.0 AND d<55.0 AND d IS NOT NULL)</div><div>          OR (d>=25.0 AND d<26.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.919.2></div><div>@@ -34403,13 +34403,13 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=594</div><div>          OR b=80</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR b=421</div><div>          OR b=418</div><div>          OR b=828</div><div>          OR a=88</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -34425,13 +34425,13 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=594</div><div>          OR b=80</div><div>-         OR (g='tsrqpon' AND f GLOB 'bcdef*')</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'bcdef%')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR b=421</div><div>          OR b=418</div><div>          OR b=828</div><div>          OR a=88</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR (d>=60.0 AND d<61.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -34446,11 +34446,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=17.0 AND d<18.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>          OR b=366</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>          OR c=16016</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR c=9009</div><div>   ]])</div><div>     end, {</div><div>@@ -34465,11 +34465,11 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=17.0 AND d<18.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'xyzab*')</div><div>+         OR (g='jihgfed' AND f LIKE 'xyzab%')</div><div>          OR b=366</div><div>          OR (d>=28.0 AND d<29.0 AND d IS NOT NULL)</div><div>          OR c=16016</div><div>-         OR (g='edcbazy' AND f GLOB 'wxyza*')</div><div>+         OR (g='edcbazy' AND f LIKE 'wxyza%')</div><div>          OR c=9009</div><div>   ]])</div><div>     end, {</div><div>@@ -34485,7 +34485,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=33</div><div>          OR f='qrstuvwxy'</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR b=858</div><div>   ]])</div><div>     end, {</div><div>@@ -34501,7 +34501,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=33</div><div>          OR f='qrstuvwxy'</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR b=858</div><div>   ]])</div><div>     end, {</div><div>@@ -34516,7 +34516,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=861</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>          OR (d>=29.0 AND d<30.0 AND d IS NOT NULL)</div><div>          OR b=682</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>@@ -34534,7 +34534,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=861</div><div>-         OR (f GLOB '?xyza*' AND f GLOB 'wxyz*')</div><div>+         OR (f LIKE '_xyza%' AND f LIKE 'wxyz%')</div><div>          OR (d>=29.0 AND d<30.0 AND d IS NOT NULL)</div><div>          OR b=682</div><div>          OR ((a BETWEEN 93 AND 95) AND a!=94)</div><div>@@ -34584,7 +34584,7 @@ test:do_test(</div><div>       WHERE f='abcdefghi'</div><div>          OR c=9009</div><div>          OR b=663</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR b=91</div><div>   ]])</div><div>     end, {</div><div>@@ -34601,7 +34601,7 @@ test:do_test(</div><div>       WHERE f='abcdefghi'</div><div>          OR c=9009</div><div>          OR b=663</div><div>-         OR (g='wvutsrq' AND f GLOB 'klmno*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'klmno%')</div><div>          OR b=91</div><div>   ]])</div><div>     end, {</div><div>@@ -34615,15 +34615,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR ((a BETWEEN 29 AND 31) AND a!=30)</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR b=1015</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR b=916</div><div>          OR (d>=31.0 AND d<32.0 AND d IS NOT NULL)</div><div>          OR b=69</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.927.1></div><div>@@ -34636,15 +34636,15 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='kjihgfe' AND f GLOB 'qrstu*')</div><div>+      WHERE (g='kjihgfe' AND f LIKE 'qrstu%')</div><div>          OR ((a BETWEEN 29 AND 31) AND a!=30)</div><div>-         OR (f GLOB '?opqr*' AND f GLOB 'nopq*')</div><div>+         OR (f LIKE '_opqr%' AND f LIKE 'nopq%')</div><div>          OR b=1015</div><div>-         OR (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+         OR (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR b=916</div><div>          OR (d>=31.0 AND d<32.0 AND d IS NOT NULL)</div><div>          OR b=69</div><div>-         OR (g='hgfedcb' AND f GLOB 'fghij*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'fghij%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.927.2></div><div>@@ -34664,7 +34664,7 @@ test:do_test(</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>          OR a=63</div><div>          OR f='mnopqrstu'</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR b=495</div><div>          OR a=35</div><div>          OR a=22</div><div>@@ -34687,7 +34687,7 @@ test:do_test(</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>          OR a=63</div><div>          OR f='mnopqrstu'</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR b=495</div><div>          OR a=35</div><div>          OR a=22</div><div>@@ -34704,7 +34704,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=869</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>          OR b=289</div><div>          OR a=62</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>@@ -34721,7 +34721,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=869</div><div>-         OR (g='rqponml' AND f GLOB 'jklmn*')</div><div>+         OR (g='rqponml' AND f LIKE 'jklmn%')</div><div>          OR b=289</div><div>          OR a=62</div><div>          OR ((a BETWEEN 9 AND 11) AND a!=10)</div><div>@@ -34774,7 +34774,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR b=1078</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>          OR b=429</div><div>   ]])</div><div>@@ -34792,7 +34792,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 57 AND 59) AND a!=58)</div><div>          OR b=1078</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ijklm*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ijklm%')</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>          OR b=429</div><div>   ]])</div><div>@@ -34876,7 +34876,7 @@ test:do_test(</div><div>       WHERE (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>          OR b=858</div><div>          OR a=58</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>          OR c=21021</div><div>          OR ((a BETWEEN 45 AND 47) AND a!=46)</div><div>          OR b=616</div><div>@@ -34897,7 +34897,7 @@ test:do_test(</div><div>       WHERE (d>=56.0 AND d<57.0 AND d IS NOT NULL)</div><div>          OR b=858</div><div>          OR a=58</div><div>-         OR (g='onmlkji' AND f GLOB 'xyzab*')</div><div>+         OR (g='onmlkji' AND f LIKE 'xyzab%')</div><div>          OR c=21021</div><div>          OR ((a BETWEEN 45 AND 47) AND a!=46)</div><div>          OR b=616</div><div>@@ -34917,7 +34917,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=682</div><div>          OR b=99</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR b=531</div><div>   ]])</div><div>     end, {</div><div>@@ -34933,7 +34933,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=682</div><div>          OR b=99</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR b=531</div><div>   ]])</div><div>     end, {</div><div>@@ -34948,13 +34948,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 56 AND 58) AND a!=57)</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR b=726</div><div>          OR a=79</div><div>          OR a=47</div><div>          OR b=212</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR c=8008</div><div>   ]])</div><div>     end, {</div><div>@@ -34969,13 +34969,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 56 AND 58) AND a!=57)</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>-         OR (f GLOB '?jklm*' AND f GLOB 'ijkl*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>+         OR (f LIKE '_jklm%' AND f LIKE 'ijkl%')</div><div>          OR b=726</div><div>          OR a=79</div><div>          OR a=47</div><div>          OR b=212</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>          OR c=8008</div><div>   ]])</div><div>     end, {</div><div>@@ -34993,7 +34993,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 60 AND 62) AND a!=61)</div><div>          OR a=5</div><div>          OR b=33</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>          OR a=59</div><div>          OR b=44</div><div>          OR (d>=14.0 AND d<15.0 AND d IS NOT NULL)</div><div>@@ -35014,7 +35014,7 @@ test:do_test(</div><div>          OR ((a BETWEEN 60 AND 62) AND a!=61)</div><div>          OR a=5</div><div>          OR b=33</div><div>-         OR (f GLOB '?yzab*' AND f GLOB 'xyza*')</div><div>+         OR (f LIKE '_yzab%' AND f LIKE 'xyza%')</div><div>          OR a=59</div><div>          OR b=44</div><div>          OR (d>=14.0 AND d<15.0 AND d IS NOT NULL)</div><div>@@ -35213,8 +35213,8 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE a=96</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>          OR ((a BETWEEN 37 AND 39) AND a!=38)</div><div>          OR a=85</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>@@ -35236,8 +35236,8 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE a=96</div><div>          OR (d>=23.0 AND d<24.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'vwxyz*')</div><div>-         OR (f GLOB '?fghi*' AND f GLOB 'efgh*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'vwxyz%')</div><div>+         OR (f LIKE '_fghi%' AND f LIKE 'efgh%')</div><div>          OR ((a BETWEEN 37 AND 39) AND a!=38)</div><div>          OR a=85</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>@@ -35299,17 +35299,17 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>          OR a=60</div><div>          OR a=4</div><div>          OR b=520</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR a=44</div><div>          OR a=36</div><div>          OR (d>=76.0 AND d<77.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>          OR b=715</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.945.1></div><div>@@ -35322,17 +35322,17 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'hijkl%')</div><div>          OR a=60</div><div>          OR a=4</div><div>          OR b=520</div><div>-         OR (g='ihgfedc' AND f GLOB 'bcdef*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'bcdef%')</div><div>          OR a=44</div><div>          OR a=36</div><div>          OR (d>=76.0 AND d<77.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>          OR b=715</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.945.2></div><div>@@ -35349,10 +35349,10 @@ test:do_test(</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>          OR (d>=15.0 AND d<16.0 AND d IS NOT NULL)</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>          OR a=24</div><div>          OR (d>=99.0 AND d<100.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.946.1></div><div>@@ -35369,10 +35369,10 @@ test:do_test(</div><div>          OR ((a BETWEEN 56 AND 58) AND a!=57)</div><div>          OR (d>=15.0 AND d<16.0 AND d IS NOT NULL)</div><div>          OR (d>=55.0 AND d<56.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'yzabc*')</div><div>+         OR (g='jihgfed' AND f LIKE 'yzabc%')</div><div>          OR a=24</div><div>          OR (d>=99.0 AND d<100.0 AND d IS NOT NULL)</div><div>-         OR (f GLOB '?bcde*' AND f GLOB 'abcd*')</div><div>+         OR (f LIKE '_bcde%' AND f LIKE 'abcd%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.946.2></div><div>@@ -35385,12 +35385,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR b=132</div><div>          OR f='ghijklmno'</div><div>          OR b=740</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR b=1059</div><div>   ]])</div><div>     end, {</div><div>@@ -35404,12 +35404,12 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='utsrqpo' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='utsrqpo' AND f LIKE 'vwxyz%')</div><div>          OR b=132</div><div>          OR f='ghijklmno'</div><div>          OR b=740</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR b=1059</div><div>   ]])</div><div>     end, {</div><div>@@ -35459,10 +35459,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR b=1026</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'lmnop*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'lmnop%')</div><div>          OR b=355</div><div>          OR b=641</div><div>          OR (d>=53.0 AND d<54.0 AND d IS NOT NULL)</div><div>@@ -35478,10 +35478,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+      WHERE (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR b=1026</div><div>          OR (d>=1.0 AND d<2.0 AND d IS NOT NULL)</div><div>-         OR (g='wvutsrq' AND f GLOB 'lmnop*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'lmnop%')</div><div>          OR b=355</div><div>          OR b=641</div><div>          OR (d>=53.0 AND d<54.0 AND d IS NOT NULL)</div><div>@@ -35506,7 +35506,7 @@ test:do_test(</div><div>          OR f='opqrstuvw'</div><div>          OR a=41</div><div>          OR a=83</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR b=751</div><div>   ]])</div><div>     end, {</div><div>@@ -35529,7 +35529,7 @@ test:do_test(</div><div>          OR f='opqrstuvw'</div><div>          OR a=41</div><div>          OR a=83</div><div>-         OR (g='nmlkjih' AND f GLOB 'cdefg*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'cdefg%')</div><div>          OR b=751</div><div>   ]])</div><div>     end, {</div><div>@@ -35579,7 +35579,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR f='bcdefghij'</div><div>          OR f='hijklmnop'</div><div>          OR a=65</div><div>@@ -35602,7 +35602,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='qponmlk' AND f GLOB 'qrstu*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'qrstu%')</div><div>          OR f='bcdefghij'</div><div>          OR f='hijklmnop'</div><div>          OR a=65</div><div>@@ -35625,11 +35625,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>          OR ((a BETWEEN 79 AND 81) AND a!=80)</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR b=1100</div><div>          OR c=6006</div><div>          OR c=4004</div><div>@@ -35647,11 +35647,11 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+      WHERE (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>          OR ((a BETWEEN 79 AND 81) AND a!=80)</div><div>-         OR (g='kjihgfe' AND f GLOB 'stuvw*')</div><div>-         OR (g='qponmlk' AND f GLOB 'pqrst*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'stuvw%')</div><div>+         OR (g='qponmlk' AND f LIKE 'pqrst%')</div><div>          OR b=1100</div><div>          OR c=6006</div><div>          OR c=4004</div><div>@@ -35728,7 +35728,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=42.0 AND d<43.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR b=737</div><div>@@ -35745,7 +35745,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=42.0 AND d<43.0 AND d IS NOT NULL)</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR ((a BETWEEN 21 AND 23) AND a!=22)</div><div>          OR (d>=12.0 AND d<13.0 AND d IS NOT NULL)</div><div>          OR b=737</div><div>@@ -35761,7 +35761,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='rqponml' AND f GLOB 'klmno*')</div><div>+      WHERE (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 5 AND 7) AND a!=6)</div><div>   ]])</div><div>     end, {</div><div>@@ -35775,7 +35775,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='rqponml' AND f GLOB 'klmno*')</div><div>+      WHERE (g='rqponml' AND f LIKE 'klmno%')</div><div>          OR ((a BETWEEN 5 AND 7) AND a!=6)</div><div>   ]])</div><div>     end, {</div><div>@@ -35789,7 +35789,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR c=32032</div><div>          OR f='opqrstuvw'</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>@@ -35807,7 +35807,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='hgfedcb' AND f GLOB 'hijkl*')</div><div>+      WHERE (g='hgfedcb' AND f LIKE 'hijkl%')</div><div>          OR c=32032</div><div>          OR f='opqrstuvw'</div><div>          OR ((a BETWEEN 66 AND 68) AND a!=67)</div><div>@@ -35875,11 +35875,11 @@ test:do_test(</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>          OR ((a BETWEEN 86 AND 88) AND a!=87)</div><div>          OR b=146</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR ((a BETWEEN 73 AND 75) AND a!=74)</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 60 AND 62) AND a!=61)</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR b=704</div><div>   ]])</div><div>     end, {</div><div>@@ -35897,11 +35897,11 @@ test:do_test(</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>          OR ((a BETWEEN 86 AND 88) AND a!=87)</div><div>          OR b=146</div><div>-         OR (g='ponmlkj' AND f GLOB 'rstuv*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'rstuv%')</div><div>          OR ((a BETWEEN 73 AND 75) AND a!=74)</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>          OR ((a BETWEEN 60 AND 62) AND a!=61)</div><div>-         OR (g='ihgfedc' AND f GLOB 'efghi*')</div><div>+         OR (g='ihgfedc' AND f LIKE 'efghi%')</div><div>          OR b=704</div><div>   ]])</div><div>     end, {</div><div>@@ -35950,7 +35950,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE c=17017</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR b=971</div><div>          OR a=37</div><div>          OR a=7</div><div>@@ -35970,7 +35970,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE c=17017</div><div>-         OR (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+         OR (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR b=971</div><div>          OR a=37</div><div>          OR a=7</div><div>@@ -35990,7 +35990,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE f='tuvwxyzab'</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.963.1></div><div>@@ -36004,7 +36004,7 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE f='tuvwxyzab'</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.963.2></div><div>@@ -36019,7 +36019,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=638</div><div>          OR (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR b=165</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>          OR f='stuvwxyza'</div><div>@@ -36041,7 +36041,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=638</div><div>          OR (d>=44.0 AND d<45.0 AND d IS NOT NULL)</div><div>-         OR (g='gfedcba' AND f GLOB 'lmnop*')</div><div>+         OR (g='gfedcba' AND f LIKE 'lmnop%')</div><div>          OR b=165</div><div>          OR ((a BETWEEN 10 AND 12) AND a!=11)</div><div>          OR f='stuvwxyza'</div><div>@@ -36067,7 +36067,7 @@ test:do_test(</div><div>          OR a=93</div><div>          OR b=858</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.965.1></div><div>@@ -36086,7 +36086,7 @@ test:do_test(</div><div>          OR a=93</div><div>          OR b=858</div><div>          OR (d>=18.0 AND d<19.0 AND d IS NOT NULL)</div><div>-         OR (g='jihgfed' AND f GLOB 'vwxyz*')</div><div>+         OR (g='jihgfed' AND f LIKE 'vwxyz%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.965.2></div><div>@@ -36157,7 +36157,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR a=5</div><div>          OR b=396</div><div>@@ -36174,7 +36174,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='qponmlk' AND f GLOB 'mnopq*')</div><div>+      WHERE (g='qponmlk' AND f LIKE 'mnopq%')</div><div>          OR ((a BETWEEN 24 AND 26) AND a!=25)</div><div>          OR a=5</div><div>          OR b=396</div><div>@@ -36191,7 +36191,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=748</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>@@ -36210,7 +36210,7 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>          OR b=748</div><div>          OR (d>=97.0 AND d<98.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 69 AND 71) AND a!=70)</div><div>@@ -36231,7 +36231,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=30.0 AND d<31.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR a=50</div><div>          OR a=46</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>@@ -36249,7 +36249,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=30.0 AND d<31.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 8 AND 10) AND a!=9)</div><div>-         OR (f GLOB '?pqrs*' AND f GLOB 'opqr*')</div><div>+         OR (f LIKE '_pqrs%' AND f LIKE 'opqr%')</div><div>          OR a=50</div><div>          OR a=46</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>@@ -36312,7 +36312,7 @@ test:do_test(</div><div>          OR c=16016</div><div>          OR b=1078</div><div>          OR b=960</div><div>-         OR (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.972.1></div><div>@@ -36330,7 +36330,7 @@ test:do_test(</div><div>          OR c=16016</div><div>          OR b=1078</div><div>          OR b=960</div><div>-         OR (g='hgfedcb' AND f GLOB 'jklmn*')</div><div>+         OR (g='hgfedcb' AND f LIKE 'jklmn%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.972.2></div><div>@@ -36345,7 +36345,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=1081</div><div>          OR ((a BETWEEN 19 AND 21) AND a!=20)</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 73 AND 75) AND a!=74)</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR a=6</div><div>@@ -36363,7 +36363,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=1081</div><div>          OR ((a BETWEEN 19 AND 21) AND a!=20)</div><div>-         OR (g='ponmlkj' AND f GLOB 'tuvwx*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'tuvwx%')</div><div>          OR ((a BETWEEN 73 AND 75) AND a!=74)</div><div>          OR (d>=38.0 AND d<39.0 AND d IS NOT NULL)</div><div>          OR a=6</div><div>@@ -36379,10 +36379,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR a=92</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR f='fghijklmn'</div><div>          OR a=100</div><div>          OR b=209</div><div>@@ -36402,10 +36402,10 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='fedcbaz' AND f GLOB 'rstuv*')</div><div>-         OR (g='rqponml' AND f GLOB 'lmnop*')</div><div>+      WHERE (g='fedcbaz' AND f LIKE 'rstuv%')</div><div>+         OR (g='rqponml' AND f LIKE 'lmnop%')</div><div>          OR a=92</div><div>-         OR (f GLOB '?klmn*' AND f GLOB 'jklm*')</div><div>+         OR (f LIKE '_klmn%' AND f LIKE 'jklm%')</div><div>          OR f='fghijklmn'</div><div>          OR a=100</div><div>          OR b=209</div><div>@@ -36458,13 +36458,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 51 AND 53) AND a!=52)</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR b=91</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>          OR b=77</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.976.1></div><div>@@ -36478,13 +36478,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 51 AND 53) AND a!=52)</div><div>-         OR (g='utsrqpo' AND f GLOB 'uvwxy*')</div><div>-         OR (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+         OR (g='utsrqpo' AND f LIKE 'uvwxy%')</div><div>+         OR (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR b=91</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>          OR b=77</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>-         OR (g='vutsrqp' AND f GLOB 'pqrst*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>+         OR (g='vutsrqp' AND f LIKE 'pqrst%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.976.2></div><div>@@ -36582,13 +36582,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=737</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>          OR a=40</div><div>          OR f='uvwxyzabc'</div><div>          OR b=311</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR b=927</div><div>          OR (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -36604,13 +36604,13 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=737</div><div>-         OR (g='wvutsrq' AND f GLOB 'ijklm*')</div><div>-         OR (f GLOB '?ghij*' AND f GLOB 'fghi*')</div><div>+         OR (g='wvutsrq' AND f LIKE 'ijklm%')</div><div>+         OR (f LIKE '_ghij%' AND f LIKE 'fghi%')</div><div>          OR a=40</div><div>          OR f='uvwxyzabc'</div><div>          OR b=311</div><div>-         OR (g='nmlkjih' AND f GLOB 'bcdef*')</div><div>-         OR (f GLOB '?hijk*' AND f GLOB 'ghij*')</div><div>+         OR (g='nmlkjih' AND f LIKE 'bcdef%')</div><div>+         OR (f LIKE '_hijk%' AND f LIKE 'ghij%')</div><div>          OR b=927</div><div>          OR (d>=50.0 AND d<51.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -36657,16 +36657,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR b=487</div><div>          OR f='tuvwxyzab'</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR b=971</div><div>          OR c=19019</div><div>          OR a=39</div><div>-         OR (f GLOB '?nopq*' AND f GLOB 'mnop*')</div><div>+         OR (f LIKE '_nopq%' AND f LIKE 'mnop%')</div><div>          OR b=550</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>          OR b=660</div><div>   ]])</div><div>     end, {</div><div>@@ -36680,16 +36680,16 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='xwvutsr' AND f GLOB 'ghijk*')</div><div>+      WHERE (g='xwvutsr' AND f LIKE 'ghijk%')</div><div>          OR b=487</div><div>          OR f='tuvwxyzab'</div><div>-         OR (g='onmlkji' AND f GLOB 'wxyza*')</div><div>+         OR (g='onmlkji' AND f LIKE 'wxyza%')</div><div>          OR b=971</div><div>          OR c=19019</div><div>          OR a=39</div><div>-         OR (f GLOB '?nopq*' AND f GLOB 'mnop*')</div><div>+         OR (f LIKE '_nopq%' AND f LIKE 'mnop%')</div><div>          OR b=550</div><div>-         OR (g='kjihgfe' AND f GLOB 'tuvwx*')</div><div>+         OR (g='kjihgfe' AND f LIKE 'tuvwx%')</div><div>          OR b=660</div><div>   ]])</div><div>     end, {</div><div>@@ -36735,7 +36735,7 @@ test:do_test(</div><div>          OR b=630</div><div>          OR b=935</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR f='yzabcdefg'</div><div>          OR ((a BETWEEN 37 AND 39) AND a!=38)</div><div>   ]])</div><div>@@ -36754,7 +36754,7 @@ test:do_test(</div><div>          OR b=630</div><div>          OR b=935</div><div>          OR (d>=20.0 AND d<21.0 AND d IS NOT NULL)</div><div>-         OR (g='srqponm' AND f GLOB 'defgh*')</div><div>+         OR (g='srqponm' AND f LIKE 'defgh%')</div><div>          OR f='yzabcdefg'</div><div>          OR ((a BETWEEN 37 AND 39) AND a!=38)</div><div>   ]])</div><div>@@ -36774,7 +36774,7 @@ test:do_test(</div><div>          OR (d>=86.0 AND d<87.0 AND d IS NOT NULL)</div><div>          OR f='abcdefghi'</div><div>          OR b=696</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>          OR b=682</div><div>          OR a=32</div><div>          OR ((a BETWEEN 34 AND 36) AND a!=35)</div><div>@@ -36797,7 +36797,7 @@ test:do_test(</div><div>          OR (d>=86.0 AND d<87.0 AND d IS NOT NULL)</div><div>          OR f='abcdefghi'</div><div>          OR b=696</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>          OR b=682</div><div>          OR a=32</div><div>          OR ((a BETWEEN 34 AND 36) AND a!=35)</div><div>@@ -36815,8 +36815,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (g='gfedcba' AND f GLOB 'lmnop*')</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'lmnop%')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR b=311</div><div>   ]])</div><div>     end, {</div><div>@@ -36830,8 +36830,8 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (g='gfedcba' AND f GLOB 'lmnop*')</div><div>-         OR (f GLOB '?ijkl*' AND f GLOB 'hijk*')</div><div>+      WHERE (g='gfedcba' AND f LIKE 'lmnop%')</div><div>+         OR (f LIKE '_ijkl%' AND f LIKE 'hijk%')</div><div>          OR b=311</div><div>   ]])</div><div>     end, {</div><div>@@ -36884,7 +36884,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 98 AND 100) AND a!=99)</div><div>          OR b=110</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR b=484</div><div>          OR (d>=82.0 AND d<83.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -36902,7 +36902,7 @@ test:do_test(</div><div>       WHERE ((a BETWEEN 98 AND 100) AND a!=99)</div><div>          OR b=110</div><div>          OR ((a BETWEEN 38 AND 40) AND a!=39)</div><div>-         OR (g='tsrqpon' AND f GLOB 'xyzab*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'xyzab%')</div><div>          OR b=484</div><div>          OR (d>=82.0 AND d<83.0 AND d IS NOT NULL)</div><div>   ]])</div><div>@@ -36925,7 +36925,7 @@ test:do_test(</div><div>          OR c=27027</div><div>          OR b=1026</div><div>          OR c=6006</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -36947,7 +36947,7 @@ test:do_test(</div><div>          OR c=27027</div><div>          OR b=1026</div><div>          OR c=6006</div><div>-         OR (g='ponmlkj' AND f GLOB 'uvwxy*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'uvwxy%')</div><div>          OR (d>=73.0 AND d<74.0 AND d IS NOT NULL)</div><div>   ]])</div><div>     end, {</div><div>@@ -36963,11 +36963,11 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE (d>=79.0 AND d<80.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR a=97</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR b=674</div><div>          OR c=14014</div><div>          OR b=69</div><div>@@ -36985,11 +36985,11 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE (d>=79.0 AND d<80.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 18 AND 20) AND a!=19)</div><div>-         OR (g='qponmlk' AND f GLOB 'nopqr*')</div><div>+         OR (g='qponmlk' AND f LIKE 'nopqr%')</div><div>          OR a=97</div><div>          OR (d>=45.0 AND d<46.0 AND d IS NOT NULL)</div><div>          OR ((a BETWEEN 22 AND 24) AND a!=23)</div><div>-         OR (g='mlkjihg' AND f GLOB 'ghijk*')</div><div>+         OR (g='mlkjihg' AND f LIKE 'ghijk%')</div><div>          OR b=674</div><div>          OR c=14014</div><div>          OR b=69</div><div>@@ -37039,12 +37039,12 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=451</div><div>          OR ((a BETWEEN 11 AND 13) AND a!=12)</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR b=539</div><div>          OR a=26</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR b=465</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.991.1></div><div>@@ -37059,12 +37059,12 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=451</div><div>          OR ((a BETWEEN 11 AND 13) AND a!=12)</div><div>-         OR (g='tsrqpon' AND f GLOB 'abcde*')</div><div>+         OR (g='tsrqpon' AND f LIKE 'abcde%')</div><div>          OR b=539</div><div>          OR a=26</div><div>-         OR (g='srqponm' AND f GLOB 'efghi*')</div><div>+         OR (g='srqponm' AND f LIKE 'efghi%')</div><div>          OR b=465</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>   ]])</div><div>     end, {</div><div>         -- <where7-2.991.2></div><div>@@ -37135,9 +37135,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>-      WHERE (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+      WHERE (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR a=13</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR b=322</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>          OR b=377</div><div>@@ -37156,9 +37156,9 @@ test:do_test(</div><div>     function()</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>-      WHERE (f GLOB '?cdef*' AND f GLOB 'bcde*')</div><div>+      WHERE (f LIKE '_cdef%' AND f LIKE 'bcde%')</div><div>          OR a=13</div><div>-         OR (f GLOB '?stuv*' AND f GLOB 'rstu*')</div><div>+         OR (f LIKE '_stuv%' AND f LIKE 'rstu%')</div><div>          OR b=322</div><div>          OR ((a BETWEEN 33 AND 35) AND a!=34)</div><div>          OR b=377</div><div>@@ -37181,9 +37181,9 @@ test:do_test(</div><div>          OR b=990</div><div>          OR (d>=36.0 AND d<37.0 AND d IS NOT NULL)</div><div>          OR b=605</div><div>-         OR (g='srqponm' AND f GLOB 'cdefg*')</div><div>+         OR (g='srqponm' AND f LIKE 'cdefg%')</div><div>          OR (d>=36.0 AND d<37.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>          OR b=968</div><div>          OR a=66</div><div>   ]])</div><div>@@ -37202,9 +37202,9 @@ test:do_test(</div><div>          OR b=990</div><div>          OR (d>=36.0 AND d<37.0 AND d IS NOT NULL)</div><div>          OR b=605</div><div>-         OR (g='srqponm' AND f GLOB 'cdefg*')</div><div>+         OR (g='srqponm' AND f LIKE 'cdefg%')</div><div>          OR (d>=36.0 AND d<37.0 AND d IS NOT NULL)</div><div>-         OR (g='vutsrqp' AND f GLOB 'qrstu*')</div><div>+         OR (g='vutsrqp' AND f LIKE 'qrstu%')</div><div>          OR b=968</div><div>          OR a=66</div><div>   ]])</div><div>@@ -37220,12 +37220,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t2</div><div>       WHERE b=1059</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR (d>=17.0 AND d<18.0 AND d IS NOT NULL)</div><div>          OR (d>=37.0 AND d<38.0 AND d IS NOT NULL)</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>   ]])</div><div>     end, {</div><div>@@ -37240,12 +37240,12 @@ test:do_test(</div><div>         return count_steps_sort([[</div><div>      SELECT a FROM t3</div><div>       WHERE b=1059</div><div>-         OR (g='srqponm' AND f GLOB 'ghijk*')</div><div>-         OR (g='utsrqpo' AND f GLOB 'tuvwx*')</div><div>-         OR (g='nmlkjih' AND f GLOB 'fghij*')</div><div>+         OR (g='srqponm' AND f LIKE 'ghijk%')</div><div>+         OR (g='utsrqpo' AND f LIKE 'tuvwx%')</div><div>+         OR (g='nmlkjih' AND f LIKE 'fghij%')</div><div>          OR (d>=17.0 AND d<18.0 AND d IS NOT NULL)</div><div>          OR (d>=37.0 AND d<38.0 AND d IS NOT NULL)</div><div>-         OR (g='onmlkji' AND f GLOB 'abcde*')</div><div>+         OR (g='onmlkji' AND f LIKE 'abcde%')</div><div>          OR ((a BETWEEN 39 AND 41) AND a!=40)</div><div>   ]])</div><div>     end, {</div><div>@@ -37261,7 +37261,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE ((a BETWEEN 41 AND 43) AND a!=42)</div><div>          OR f='nopqrstuv'</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR a=42</div><div>          OR b=729</div><div>          OR b=297</div><div>@@ -37282,7 +37282,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE ((a BETWEEN 41 AND 43) AND a!=42)</div><div>          OR f='nopqrstuv'</div><div>-         OR (g='ponmlkj' AND f GLOB 'stuvw*')</div><div>+         OR (g='ponmlkj' AND f LIKE 'stuvw%')</div><div>          OR a=42</div><div>          OR b=729</div><div>          OR b=297</div><div>@@ -37337,9 +37337,9 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=451</div><div>          OR b=660</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>          OR b=781</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR b=198</div><div>          OR b=1023</div><div>          OR a=98</div><div>@@ -37359,9 +37359,9 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=451</div><div>          OR b=660</div><div>-         OR (g='onmlkji' AND f GLOB 'yzabc*')</div><div>+         OR (g='onmlkji' AND f LIKE 'yzabc%')</div><div>          OR b=781</div><div>-         OR (g='jihgfed' AND f GLOB 'wxyza*')</div><div>+         OR (g='jihgfed' AND f LIKE 'wxyza%')</div><div>          OR b=198</div><div>          OR b=1023</div><div>          OR a=98</div><div>@@ -37383,7 +37383,7 @@ test:do_test(</div><div>          OR a=86</div><div>          OR c=17017</div><div>          OR ((a BETWEEN 85 AND 87) AND a!=86)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR a=80</div><div>          OR b=773</div><div>   ]])</div><div>@@ -37402,7 +37402,7 @@ test:do_test(</div><div>          OR a=86</div><div>          OR c=17017</div><div>          OR ((a BETWEEN 85 AND 87) AND a!=86)</div><div>-         OR (g='gfedcba' AND f GLOB 'mnopq*')</div><div>+         OR (g='gfedcba' AND f LIKE 'mnopq%')</div><div>          OR a=80</div><div>          OR b=773</div><div>   ]])</div><div>@@ -37419,7 +37419,7 @@ test:do_test(</div><div>      SELECT a FROM t2</div><div>       WHERE b=1092</div><div>          OR a=23</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR d<0.0</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>          OR a=91</div><div>@@ -37437,7 +37437,7 @@ test:do_test(</div><div>      SELECT a FROM t3</div><div>       WHERE b=1092</div><div>          OR a=23</div><div>-         OR (f GLOB '?defg*' AND f GLOB 'cdef*')</div><div>+         OR (f LIKE '_defg%' AND f LIKE 'cdef%')</div><div>          OR d<0.0</div><div>          OR (d>=22.0 AND d<23.0 AND d IS NOT NULL)</div><div>          OR a=91</div><div class=""><br class=""></div></div><br class=""><div class="">
<div dir="auto" style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;">--</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;">WBR, Nikita Tatunov.</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><a href="mailto:n.tatunov@tarantool.org" class="">n.tatunov@tarantool.org</a></div></div>
</div>
<br class=""></div></body></html>