drop function test_multi(integer, text);
create function test_multi(part integer, username text)
returns setof integer as $$ cluster 'testcluster'; run on all; $$ language plproxy;
-select test_multi(0, 'foo');
+select test_multi(0, 'foo') order by 1;
test_multi
------------
0
drop function test_multi(integer, text);
create function test_multi(part integer, username text)
returns setof integer as $$ cluster 'testcluster'; run on any; $$ language plproxy;
-select test_multi(0, 'foo');
- test_multi
-------------
- 3
-(1 row)
-
-select test_multi(0, 'foo');
- test_multi
-------------
- 2
-(1 row)
-
-select test_multi(0, 'foo');
+-- expect that 20 calls use all partitions
+select distinct test_multi(0, 'foo') from generate_series(1,20) order by 1;
test_multi
------------
+ 0
1
-(1 row)
-
-select test_multi(0, 'foo');
- test_multi
-------------
+ 2
3
-(1 row)
+(4 rows)
drop function test_multi(integer, text);
create function test_multi(part integer, username text)
returns setof integer as $$ cluster 'testcluster'; run on all; $$ language plproxy;
-select test_multi(0, 'foo');
+select test_multi(0, 'foo') order by 1;
-- test RUN ON 2
drop function test_multi(integer, text);
drop function test_multi(integer, text);
create function test_multi(part integer, username text)
returns setof integer as $$ cluster 'testcluster'; run on any; $$ language plproxy;
-select test_multi(0, 'foo');
-select test_multi(0, 'foo');
-select test_multi(0, 'foo');
-select test_multi(0, 'foo');
+-- expect that 20 calls use all partitions
+select distinct test_multi(0, 'foo') from generate_series(1,20) order by 1;