Fix quoting of function names in RE-SQL. Fixes #3060
parent
2706d9cd8e
commit
db92907fe9
|
@ -982,8 +982,14 @@ class FunctionView(PGChildNodeView, DataTypeReader):
|
|||
if not status:
|
||||
return internal_server_error(errormsg=res)
|
||||
|
||||
name_with_default_args = self.qtIdent(self.conn,
|
||||
res['rows'][0]['nspname'],
|
||||
res['rows'][0][
|
||||
'proname']) + '(' + \
|
||||
res['rows'][0]['func_args'] + ')'
|
||||
# Add newline and tab before each argument to format
|
||||
name_with_default_args = res['rows'][0]['name_with_default_args'].replace(', ', ',\r\t').replace('(', '(\r\t')
|
||||
name_with_default_args = name_with_default_args.replace(
|
||||
', ', ',\r\t').replace('(', '(\r\t')
|
||||
|
||||
# Parse privilege data
|
||||
if 'acl' in resp_data:
|
||||
|
@ -1024,8 +1030,11 @@ class FunctionView(PGChildNodeView, DataTypeReader):
|
|||
if not status:
|
||||
return internal_server_error(errormsg=res)
|
||||
|
||||
name_with_default_args = self.qtIdent(self.conn,
|
||||
res['rows'][0]['nspname'], res['rows'][0]['proname']) + '(' + res['rows'][0]['func_args'] + ')'
|
||||
# Add newline and tab before each argument to format
|
||||
name_with_default_args = res['rows'][0]['name_with_default_args'].replace(', ', ',\r\t').replace('(', '(\r\t')
|
||||
name_with_default_args = name_with_default_args.replace(', ', ',\r\t').replace('(',
|
||||
'(\r\t')
|
||||
|
||||
# Generate sql for "SQL panel"
|
||||
# func_def is function signature with default arguments
|
||||
|
@ -1405,7 +1414,9 @@ class FunctionView(PGChildNodeView, DataTypeReader):
|
|||
if not status:
|
||||
return internal_server_error(errormsg=res)
|
||||
|
||||
name = res['rows'][0]['name']
|
||||
name = self.qtIdent(self.conn, res['rows'][0]['nspname'],
|
||||
res['rows'][0]['proname']) + '(' + \
|
||||
res['rows'][0]['func_with_identity_arguments'] + ')'
|
||||
|
||||
# Fetch only arguments
|
||||
argString = name[name.rfind('('):].strip('(').strip(')')
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
SELECT
|
||||
pg_get_functiondef({{fnid}}::oid) AS func_def,
|
||||
nspname || '.' || pr.proname || '(' || COALESCE(pg_catalog.pg_get_function_identity_arguments(pr.oid), '') || ')' as name,
|
||||
nspname || '.' || pr.proname || '(' || COALESCE(pg_catalog.pg_get_function_arguments(pr.oid), '') || ')' as name_with_default_args
|
||||
COALESCE(pg_catalog.pg_get_function_identity_arguments(pr.oid), '') as
|
||||
func_with_identity_arguments,
|
||||
nspname,
|
||||
pr.proname as proname,
|
||||
COALESCE(pg_catalog.pg_get_function_arguments(pr.oid), '') as func_args
|
||||
FROM
|
||||
pg_proc pr
|
||||
JOIN
|
||||
|
|
Loading…
Reference in New Issue