summaryrefslogtreecommitdiff
path: root/src/pl/plpython/sql/plpython_params.sql
diff options
context:
space:
mode:
Diffstat (limited to 'src/pl/plpython/sql/plpython_params.sql')
-rw-r--r--src/pl/plpython/sql/plpython_params.sql9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/pl/plpython/sql/plpython_params.sql b/src/pl/plpython/sql/plpython_params.sql
index d97e0b8549..f580abe53d 100644
--- a/src/pl/plpython/sql/plpython_params.sql
+++ b/src/pl/plpython/sql/plpython_params.sql
@@ -14,7 +14,14 @@ $$ LANGUAGE plpythonu;
CREATE FUNCTION test_param_names2(u users) RETURNS text AS $$
assert u == args[0]
-return str(u)
+if isinstance(u, dict):
+ # stringify dict the hard way because otherwise the order is implementation-dependent
+ u_keys = list(u.keys())
+ u_keys.sort()
+ s = '{' + ', '.join([repr(k) + ': ' + repr(u[k]) for k in u_keys]) + '}'
+else:
+ s = str(u)
+return s
$$ LANGUAGE plpythonu;
-- use deliberately wrong parameter names