diff options
author | Tom Lane | 2006-10-19 22:44:11 +0000 |
---|---|---|
committer | Tom Lane | 2006-10-19 22:44:11 +0000 |
commit | 34aa411b2768cc80ad3b26393fbfc502562e13e0 (patch) | |
tree | 472a6a5405036112ad69a6ed00c887552b38e83c | |
parent | 536615654124300a6f7d3c8db220f657874c9ada (diff) |
Marginal improvement in logging: include the function name when logging
a fastpath function call.
-rw-r--r-- | src/backend/tcop/fastpath.c | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/src/backend/tcop/fastpath.c b/src/backend/tcop/fastpath.c index baad3237f2..f5a705bd9d 100644 --- a/src/backend/tcop/fastpath.c +++ b/src/backend/tcop/fastpath.c @@ -51,6 +51,7 @@ struct fp_info Oid namespace; /* other stuff from pg_proc */ Oid rettype; Oid argtypes[FUNC_MAX_ARGS]; + char fname[NAMEDATALEN]; /* function name for logging */ }; @@ -229,6 +230,7 @@ fetch_fp_info(Oid func_id, struct fp_info * fip) fip->namespace = pp->pronamespace; fip->rettype = pp->prorettype; memcpy(fip->argtypes, pp->proargtypes.values, pp->pronargs * sizeof(Oid)); + strlcpy(fip->fname, NameStr(pp->proname), NAMEDATALEN); ReleaseSysCache(func_htp); @@ -316,15 +318,6 @@ HandleFunctionRequest(StringInfo msgBuf) fid = (Oid) pq_getmsgint(msgBuf, 4); /* function oid */ - /* Log as soon as we have the function OID */ - if (log_statement == LOGSTMT_ALL) - { - ereport(LOG, - (errmsg("fastpath function call: function OID %u", - fid))); - was_logged = true; - } - /* * There used to be a lame attempt at caching lookup info here. Now we * just do the lookups on every call. @@ -332,6 +325,15 @@ HandleFunctionRequest(StringInfo msgBuf) fip = &my_fp; fetch_fp_info(fid, fip); + /* Log as soon as we have the function OID and name */ + if (log_statement == LOGSTMT_ALL) + { + ereport(LOG, + (errmsg("fastpath function call: \"%s\" (OID %u)", + fip->fname, fid))); + was_logged = true; + } + /* * Check permission to access and call function. Since we didn't go * through a normal name lookup, we need to check schema usage too. @@ -404,8 +406,8 @@ HandleFunctionRequest(StringInfo msgBuf) break; case 2: ereport(LOG, - (errmsg("duration: %s ms fastpath function call: function OID %u", - msec_str, fid))); + (errmsg("duration: %s ms fastpath function call: \"%s\" (OID %u)", + msec_str, fip->fname, fid))); break; } |