SIMILAR TO: matching engine can fail for records that come from "UNION ALL" 
datasource
--------------------------------------------------------------------------------------

                 Key: CORE-4750
                 URL: http://tracker.firebirdsql.org/browse/CORE-4750
             Project: Firebird Core
          Issue Type: Bug
            Reporter: Pavel Zotov


Test:
====
select
     str
    ,ptn
    ,hash( trim(ptn) ) trim_ptn_hash
    ,iif( str similar to trim(ptn), 1, 0 ) "str similar to ptn"
from(
    select
    --'a1' str, '_' ptn from rdb$database union all select          -- false
    'a' str, '[[:DIGIT:]]' ptn from rdb$database union all select   -- false
    '4', '[^[:DIGIT:]]' from rdb$database union all select          -- false
    'a', '[^[:DIGIT:]]' from rdb$database                           -- TRUE!
);

-----------------------------------------------------------------------------

select
     str
    ,ptn
    ,hash( trim(ptn) ) trim_ptn_hash
    ,iif( str similar to trim(ptn), 1, 0 ) "str similar to ptn"
from(
    select
    'a1' str, '_' ptn from rdb$database union all select            -- false
    'a' str, '[[:DIGIT:]]' ptn from rdb$database union all select   -- false
    '4', '[^[:DIGIT:]]' from rdb$database union all select          -- false
    'a', '[^[:DIGIT:]]' from rdb$database                           -- TRUE!
);

------------------------------------------------------------------------

select
     str
    ,ptn
    ,hash( trim(ptn) ) trim_ptn_hash
    ,iif( str similar to trim(ptn), 1, 0 ) "str similar to ptn"
from(
    select
    'a' str, '[[:DIGIT:]]' ptn from rdb$database union all select   -- false
    '4', '[^[:DIGIT:]]' from rdb$database union all select          -- false
    'a', '[^[:DIGIT:]]' from rdb$database union all select          -- TRUE!
    'a1' str, '_' ptn from rdb$database                             -- false
);


Output for WI-T3.0.0.31780, WI-V2.5.4.26857, LI-T3.0.0.31780 and 
LI-V2.5.4.26821:

STR    PTN                  TRIM_PTN_HASH str similar to ptn 
====== ============ ===================== ================== 
a      [[:DIGIT:]]        106577696555053                  0 
4      [^[:DIGIT:]]      1710765161480237                  0 
a      [^[:DIGIT:]]      1710765161480237                  1 --- YES, it is 
correct.


STR    PTN                  TRIM_PTN_HASH str similar to ptn 
====== ============ ===================== ================== 
a1     _                               95                  0 
a      [[:DIGIT:]]        106577696555053                  0 
4      [^[:DIGIT:]]      1710765161480237                  0 
a      [^[:DIGIT:]]      1710765161480237                  0 
-----------------------------------------  <<<<<<<<<<<<<<  ???  <<<<<<<<<<<<<<


STR    PTN                  TRIM_PTN_HASH str similar to ptn 
====== ============ ===================== ================== 
a      [[:DIGIT:]]        106577696555053                  0 
4      [^[:DIGIT:]]      1710765161480237                  0 
a      [^[:DIGIT:]]      1710765161480237                  0  
-----------------------------------------  <<<<<<<<<<<<<<  ???  <<<<<<<<<<<<<<
a1     _                               95                  0 


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT
Develop your own process in accordance with the BPMN 2 standard
Learn Process modeling best practices with Bonita BPM through live exercises
http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_
source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to