Обсуждение: regression tests fails
Hi
I have a repeated problem with regress tests running on port 50848 with PID 5548
============== creating database "regression" ==============
CREATE DATABASE
ALTER DATABASE
============== running regression test queries ==============
test ddl ... ok
test xact ... ok
test rewrite ... ok
test toast ... ok
test permissions ... ok
test decoding_in_xact ... ok
test decoding_into_rel ... ok
test binary ... ok
test prepared ... ok
test replorigin ... ok
test time ... ok
test messages ... ok
test spill ... FAILED
============== shutting down postmaster ==============
Вложения
2016-11-16 5:54 GMT+01:00 Pavel Stehule <pavel.stehule@gmail.com>:
The result is in unstable order.master, Fedora 25,HiI have a repeated problem with regress tests
running on port 50848 with PID 5548
============== creating database "regression" ==============
CREATE DATABASE
ALTER DATABASE
============== running regression test queries ==============
test ddl ... ok
test xact ... ok
test rewrite ... ok
test toast ... ok
test permissions ... ok
test decoding_in_xact ... ok
test decoding_into_rel ... ok
test binary ... ok
test prepared ... ok
test replorigin ... ok
test time ... ok
test messages ... ok
test spill ... FAILED
============== shutting down postmaster ==============
I was wrong - there is ORDER BY clause
SELECT (regexp_split_to_array(data, ':'))[4], COUNT(*), (array_agg(data))[1], (array_agg(data))[count(*)]
FROM pg_logical_slot_get_changes('regression_slot', NULL,NULL) WHERE data ~ 'INSERT'
GROUP BY 1 ORDER BY 1;
SELECT (regexp_split_to_array(data, ':'))[4], COUNT(*), (array_agg(data))[1], (array_agg(data))[count(*)]
FROM pg_logical_slot_get_changes('regression_slot', NULL,NULL) WHERE data ~ 'INSERT'
GROUP BY 1 ORDER BY 1;
but result is sensitive on locales setting - doesn't work well with czech locales.
Regards
Pavel
PavelRegards
On 21 November 2016 at 14:45, Pavel Stehule <pavel.stehule@gmail.com> wrote: > SELECT (regexp_split_to_array(data, ':'))[4], COUNT(*), > (array_agg(data))[1], (array_agg(data))[count(*)] > FROM pg_logical_slot_get_changes('regression_slot', NULL,NULL) WHERE data > ~ 'INSERT' > GROUP BY 1 ORDER BY 1; > > but result is sensitive on locales setting - doesn't work well with czech > locales. Simple fix here is to append COLLATE "C" after the ORDER BY. -- Craig Ringer http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training & Services
2016-11-21 8:09 GMT+01:00 Craig Ringer <craig@2ndquadrant.com>:
On 21 November 2016 at 14:45, Pavel Stehule <pavel.stehule@gmail.com> wrote:
> SELECT (regexp_split_to_array(data, ':'))[4], COUNT(*),
> (array_agg(data))[1], (array_agg(data))[count(*)]
> FROM pg_logical_slot_get_changes('regression_slot', NULL,NULL) WHERE data
> ~ 'INSERT'
> GROUP BY 1 ORDER BY 1;
>
> but result is sensitive on locales setting - doesn't work well with czech
> locales.
Simple fix here is to append COLLATE "C" after the ORDER BY.
it needs little bit bigger change - COLLATE cannot be used with positional ORDER BY
Regards
Pavel
--
Craig Ringer http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
2016-11-21 8:13 GMT+01:00 Pavel Stehule <pavel.stehule@gmail.com>:
2016-11-21 8:09 GMT+01:00 Craig Ringer <craig@2ndquadrant.com>:On 21 November 2016 at 14:45, Pavel Stehule <pavel.stehule@gmail.com> wrote:
> SELECT (regexp_split_to_array(data, ':'))[4], COUNT(*),
> (array_agg(data))[1], (array_agg(data))[count(*)]
> FROM pg_logical_slot_get_changes('regression_slot', NULL,NULL) WHERE data
> ~ 'INSERT'
> GROUP BY 1 ORDER BY 1;
>
> but result is sensitive on locales setting - doesn't work well with czech
> locales.
Simple fix here is to append COLLATE "C" after the ORDER BY.it needs little bit bigger change - COLLATE cannot be used with positional ORDER BY
here is a patch
Regards
Pavel
RegardsPavel
--
Craig Ringer http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
Вложения
Pavel Stehule <pavel.stehule@gmail.com> writes: >> 2016-11-21 8:09 GMT+01:00 Craig Ringer <craig@2ndquadrant.com>: >>> Simple fix here is to append COLLATE "C" after the ORDER BY. > here is a patch Pushed, thanks. regards, tom lane