Add relax-test-timing-constraints.patch

This commit is contained in:
Sandro Mani 2020-08-12 17:30:28 +02:00
parent de7ab7bb69
commit 688e75b770
2 changed files with 74 additions and 1 deletions

View File

@ -37,6 +37,10 @@ Source3: http://download.osgeo.org/%{name}/source/%{name}-%{prevversion}.tar.gz
Source4: filter-requires-perl-Pg.sh
URL: http://www.postgis.net
# From debian
# This should increase chances of tests passing even on busy or slow systems.
Patch0: relax-test-timing-constraints.patch
BuildRequires: perl-generators
BuildRequires: postgresql-server-devel >= %{pg_version_minimum}
BuildRequires: libpq-devel, json-c-devel, gcc-c++, pcre-devel, autoconf
@ -123,7 +127,7 @@ necessary for correct dump of schema from previous version of PostgreSQL.
%prep
%setup -q -n %{name}-%{version} -a 3
%autosetup -p1 -n %{name}-%{version} -a 3
%if %upgrade
(

View File

@ -0,0 +1,69 @@
Description: Relax timing constraints for some tests.
With a statement_timeout of 100ms, increase the allowed _timecheck interval
from 200ms or 250ms to 500ms. This should increase chances of tests passing
even on busy or slow systems.
Author: Markus Wanner <markus@bluegap.ch>
Forwarded: not-needed
--- a/regress/core/interrupt.sql
+++ b/regress/core/interrupt.sql
@@ -24,7 +24,7 @@ $$ LANGUAGE 'plpgsql' VOLATILE;
SET statement_timeout TO 100;
-- would run for many seconds if uninterruptible...
SELECT ST_Segmentize(ST_MakeLine(ST_Point(4,39), ST_Point(1,41)), 1e-100);
-SELECT _timecheck('segmentize', '250ms');
+SELECT _timecheck('segmentize', '500ms');
SET statement_timeout TO 0;
-- Not affected by old timeout
SELECT '1',ST_AsText(ST_Segmentize('LINESTRING(0 0,4 0)'::geometry, 2));
--- a/regress/core/interrupt_buffer.sql
+++ b/regress/core/interrupt_buffer.sql
@@ -36,7 +36,7 @@ select ST_Buffer(g,100) from _inputs WHE
--( select (st_dumppoints(st_buffer(st_makepoint(0,0),10000,100000))).geom g) foo;
-- it may take some more to interrupt st_buffer, see
-- https://travis-ci.org/postgis/postgis/builds/40211116#L2222-L2223
-SELECT _timecheck('buffer', '200ms');
+SELECT _timecheck('buffer', '500ms');
-- Not affected by old timeout
SELECT '1', ST_NPoints(ST_Buffer('POINT(4 0)'::geometry, 2, 1));
--- a/regress/core/interrupt_relate.sql
+++ b/regress/core/interrupt_relate.sql
@@ -34,29 +34,29 @@ UPDATE _time SET t = now(); -- reset tim
SET statement_timeout TO 100;
select ST_Contains(g,g) from _inputs WHERE id = 1; -- 6+ seconds
-SELECT _timecheck('contains', '200ms');
+SELECT _timecheck('contains', '500ms');
select ST_Covers(g,g) from _inputs WHERE id = 1; -- 6+ seconds
-SELECT _timecheck('covers', '200ms');
+SELECT _timecheck('covers', '500ms');
select ST_CoveredBy(g,g) from _inputs WHERE id = 1; -- 6+ seconds
-SELECT _timecheck('coveredby', '200ms');
+SELECT _timecheck('coveredby', '500ms');
select ST_Crosses(g,g) from _inputs WHERE id = 1; -- 6+ seconds
-SELECT _timecheck('crosses', '200ms');
+SELECT _timecheck('crosses', '500ms');
-- NOTE: we're reversing one of the operands to avoid the
-- short-circuit described in #3226
select ST_Equals(g,st_reverse(g)) from _inputs WHERE id = 1; -- 6+ seconds
-SELECT _timecheck('equals', '200ms');
+SELECT _timecheck('equals', '500ms');
select ST_Intersects(g,g) from _inputs WHERE id = 1; -- 6+ seconds
-SELECT _timecheck('intersects', '200ms');
+SELECT _timecheck('intersects', '500ms');
select ST_Overlaps(g,g) from _inputs WHERE id = 1; -- 6+ seconds
-SELECT _timecheck('overlaps', '200ms');
+SELECT _timecheck('overlaps', '500ms');
select ST_Relate(g,g) from _inputs WHERE id = 1; -- 6+ seconds
-SELECT _timecheck('relate', '200ms');
+SELECT _timecheck('relate', '500ms');
DROP FUNCTION _timecheck(text, interval);