summaryrefslogtreecommitdiff
path: root/mysql-test/t/func_regexp_pcre.test
Commit message (Collapse)AuthorAgeFilesLines
* smaller stack size on quantal-x86 and wheezy-x86Sergei Golubchik2017-10-101-4/+4
| | | | fixes failures of func_regexp_pcre
* MDEV-13412 main.func_regexp_pcre fails in buildbot on ppc64leSergei Golubchik2017-10-091-4/+4
| | | | | | | | | | | | | | | | | Caused by 2fcd8c12522. It used the documented pcre API -pcre_exec(NULL, NULL, NULL, -999, -999, 0, NULL, 0) to calculate the pcre stack frame size. Unfortunately, modern compilers broke it by cloning and inlining pcre match() function. 2fcd8c12522 tried to workaround it by setting the stack frame size to at least 500. It didn't work, 500 is not a universal constant. Now we fix our copy of pcre to not inline or clone match() - so that stack frame detection would work again - and detect at cmake time whether system pcre is broken or usable. Also use stack, not (much slower) malloc in bundled pcre, unless on Windows
* fix main.func_regexp_pcre on jessie-ppc64leSergei Golubchik2017-07-201-4/+4
| | | | apparently it uses a smaller per-thread stack
* MDEV-13173 An RLIKE that previously worked on 10.0 now returns "Got error ↵Sergei Golubchik2017-07-201-0/+19
| | | | | | | | | | | | 'pcre_exec: recursion limit of 100 exceeded' from regexp" 1. use Regexp_processor_pcre::set_recursion_limit() to set the recursion limit depending on the current available stack size 2. make pcre stack frame to be estimated no less than 500 bytes. sometimes pcre estimates it too low, even though the manual says 500+16 bytes (it was estimated only 188 for me, actual frame size was 512). 3. do it for embedded too
* MDEV-12420: pcre recursion overflow test caseDaniel Black2017-05-151-0/+4
|
* MDEV-8102 REGEXP function fails to match hex values when expression is ↵Alexander Barkov2015-05-141-0/+24
| | | | | | | stored as a variable We don't fix the bug itself, we just make regex functions display errors returned from pcre_exec() as MariaDB warnings.
* MDEV-6965 non-captured group \2 in regexp_replaceAlexander Barkov2014-11-101-0/+5
|
* MDEV-6027 RLIKE: "." no longer matching new line Alexander Barkov2014-04-231-0/+48
| | | | | | Added a new system variable: default_regex_flags='DOTALL,DUPNAMES,EXTENDED,EXTRA,MULTILINE,UNGREEDY'
* MDEV-4425 Regexp enhancementsAlexander Barkov2013-10-081-0/+4
| | | | | | | | | | | | | Do not pass PCRE_UCP flag for binary data. This makes bytes 0x80..FF not to belong to generic character classes \d (digit) and \w (word character). SELECT 0xFF RLIKE '\\w'; -> 0 Note, this change does not affect non-binary data, which is still examined with the PCRE_UCP flag by default.
* MDEV-4425 Regexp enhancementsAlexander Barkov2013-10-031-0/+7
| | | | | | | Adding tests with 0x00 characters from Bug#70470 REGEXP fails to find matches after NUL character
* MDEV-4425 Regexp enhancementsAlexander Barkov2013-10-031-0/+9
| | | | | | Adding more tests for case sensitivity, with various collation and (?i) flags combinations.
* MDEV-4425 REGEXP enhancementsAlexander Barkov2013-09-261-0/+331