BUG #6760: make check fails on strings SQL T581 regex test

Поиск
Список
Период
Сортировка
От jez.wain@bull.net
Тема BUG #6760: make check fails on strings SQL T581 regex test
Дата
Msg-id E1StytD-0005g0-NX@wrigleys.postgresql.org
обсуждение исходный текст
Ответы Re: BUG #6760: make check fails on strings SQL T581 regex test  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
The following bug has been logged on the website:

Bug reference:      6760
Logged by:          jez wain
Email address:      jez.wain@bull.net
PostgreSQL version: 9.1.4
Operating system:   AIX 7.1
Description:=20=20=20=20=20=20=20=20

I built 9.1.4 from sources using the following configure command:

LDFLAGS=3D"-L/usr/local/lib" LIBS=3D"-lmass" CC=3Dxlc_r CFLAGS=3D"-qtune=3D=
auto
-qarch=3Dauto -qcache=3Dauto -O2 -I/usr/local/include" ./configure
--with-openssl --disable-nls --without-zlib

I edited the src/include/pg_config.h to comment out the #define
HAVE_WCSTOMBS_L 1 definition (see earlier bug report)

The "make" completed without error=20

Running make check  produced the following output:

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D creating temporary installation =
       =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D initializing database system    =
       =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D starting postmaster             =
       =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
running on port 57336 with PID 18874514
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D creating database "regression"  =
       =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
CREATE DATABASE
ALTER DATABASE
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D running regression test queries =
       =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
test tablespace               ... ok
parallel group (17 tests):  money txid float8 float4 oid int4 int2 text
varchar name char boolean int8 uuid bit enum numeric
     boolean                  ... ok
     char                     ... ok
     name                     ... ok
     varchar                  ... ok
     text                     ... ok
     int2                     ... ok
     int4                     ... ok
     int8                     ... ok
     oid                      ... ok
     float4                   ... ok
     float8                   ... FAILED
     bit                      ... ok
     numeric                  ... ok
     txid                     ... ok
     uuid                     ... ok
     enum                     ... ok
     money                    ... ok
test strings                  ... FAILED
test numerology               ... ok

  8< -----  TRUNCATED  ----- >8=20

The float8 failure appears to be a precision problem, I guess differences
between PowerPC and Intel x86 FP implementations.

The strings failure appears to be more problematic, with an error message:

"ERROR:  invalid regular expression: parentheses () not balanced".=20=20

Here are the contents of the "diff" file:

bash-4.2# cat /tmp/postgresql-9.1.4/src/test/regress/regression.diffs
*** /tmp/postgresql-9.1.4/src/test/regress/expected/float8.out  Fri Jun  1
01:07:09 2012
--- /tmp/postgresql-9.1.4/src/test/regress/results/float8.out   Wed Jul 25
10:36:03 2012
***************
*** 347,354 ****
   three |          f1          |       exp_ln_f1=20=20=20=20=20=20=20
  -------+----------------------+-----------------------
         |               1004.3 |                1004.3
!        | 1.2345678901234e+200 | 1.23456789012338e+200
!        | 1.2345678901234e-200 | 1.23456789012339e-200
  (3 rows)
=20=20
  -- cube root
--- 347,354 ----
   three |          f1          |       exp_ln_f1=20=20=20=20=20=20=20
  -------+----------------------+-----------------------
         |               1004.3 |                1004.3
!        | 1.2345678901234e+200 | 1.23456789012337e+200
!        | 1.2345678901234e-200 |  1.2345678901234e-200
  (3 rows)
=20=20
  -- cube root

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

*** /tmp/postgresql-9.1.4/src/test/regress/expected/strings.out Fri Jun  1
01:07:09 2012
--- /tmp/postgresql-9.1.4/src/test/regress/results/strings.out  Wed Jul 25
10:36:04 2012
***************
*** 315,332 ****
=20=20
  -- T581 regular expression substring (with SQL99's bizarre regexp syntax)
  SELECT SUBSTRING('abcdefg' FROM 'a#"(b_d)#"%' FOR '#') AS "bcd";
!  bcd=20
! -----
!  bcd
! (1 row)
!=20
  -- No match should return NULL
  SELECT SUBSTRING('abcdefg' FROM '#"(b_d)#"%' FOR '#') IS NULL AS "True";
!  True=20
! ------
!  t
! (1 row)
!=20
  -- Null inputs should return NULL
  SELECT SUBSTRING('abcdefg' FROM '(b|c)' FOR NULL) IS NULL AS "True";
   True=20
--- 315,326 ----
=20=20
  -- T581 regular expression substring (with SQL99's bizarre regexp syntax)
  SELECT SUBSTRING('abcdefg' FROM 'a#"(b_d)#"%' FOR '#') AS "bcd";
! ERROR:  invalid regular expression: parentheses () not balanced
! CONTEXT:  SQL function "substring" statement 1
  -- No match should return NULL
  SELECT SUBSTRING('abcdefg' FROM '#"(b_d)#"%' FOR '#') IS NULL AS "True";
! ERROR:  invalid regular expression: parentheses () not balanced
! CONTEXT:  SQL function "substring" statement 1
  -- Null inputs should return NULL
  SELECT SUBSTRING('abcdefg' FROM '(b|c)' FOR NULL) IS NULL AS "True";
   True=20

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

bash-4.2#=20

В списке pgsql-bugs по дате отправления:

Предыдущее
От: jez.wain@bull.net
Дата:
Сообщение: BUG #6758: ./configure script sets HAVE_WCSTOMBS_L 1
Следующее
От: Fujii Masao
Дата:
Сообщение: Re: BUG #6756: primary_conninfo is ignored if restore_command is set..