pg_dump_deterministic_order.t

application/x-troff

Filename: pg_dump_deterministic_order.t
Type: application/x-troff
Part: 1
Message: [PATCH] pg_dump: Sort overloaded functions in deterministic order
#!/bin/sh

echo 1..1

createdb test 1> /dev/null 2> /dev/null

psql -d test -q -f - <<EOF
SET client_min_messages = fatal;
DROP SCHEMA pgdump_deterministic_order CASCADE;
CREATE SCHEMA pgdump_deterministic_order;
SET search_path = pgdump_deterministic_order;
CREATE FUNCTION f(a int) RETURNS BOOLEAN AS \$\$ SELECT TRUE; \$\$ LANGUAGE sql;
CREATE FUNCTION f(a text) RETURNS BOOLEAN AS \$\$ SELECT TRUE; \$\$ LANGUAGE sql;
EOF

pg_dump -n pgdump_deterministic_order -s -f /tmp/pg_dump_deterministic_order.1 test

psql -d test -q -f - <<EOF
SET client_min_messages = fatal;
DROP SCHEMA pgdump_deterministic_order CASCADE;
CREATE SCHEMA pgdump_deterministic_order;
SET search_path = pgdump_deterministic_order;
CREATE FUNCTION f(a text) RETURNS BOOLEAN AS \$\$ SELECT TRUE; \$\$ LANGUAGE sql;
CREATE FUNCTION f(a int) RETURNS BOOLEAN AS \$\$ SELECT TRUE; \$\$ LANGUAGE sql;
EOF

pg_dump -n pgdump_deterministic_order -s -f /tmp/pg_dump_deterministic_order.2 test

cmp -s /tmp/pg_dump_deterministic_order.1 /tmp/pg_dump_deterministic_order.2
if [ $? -eq 0 ]; then
    echo "ok 1 - pg_dump deterministic order of overloaded functions"
else
    echo "not ok 1 - pg_dump deterministic order of overloaded functions"
fi