Oliver Fromme <olli@lurza.secnetix.de> writes:
> Tom Lane wrote:
>>> Oliver Fromme <olli@lurza.secnetix.de> writes:
>>>> The "current_query" column in the "pg_stat_activity" system
>>>> table seems to be limited to 255 characters. Is there a way
>>>> to increase that limit, in order to see queries completely
>>>> which are longer than 255 characters?
>>>
>>> You could fool with PGSTAT_ACTIVITY_SIZE in pgstat.h, but you probably
>>> need to keep it under 1000 --- note the comments associated with
>>> PGSTAT_NUM_TABENTRIES.
> Thanks! It appears that the size is ultimately limited
> by the MTU of the localhost interface, which is 16K on
> my platform (FreeBSD), so I should be able to increase
> PGSTAT_ACTIVITY_SIZE to something like 15K, right?
You'll probably find the overhead of the stats collector ballooning
quite a lot if you increase the max message size by a factor of 15 :-(.
But give it a try.
> Oh, by the way, while I'm at it, I think I found a small
> bug in the second of those formulas (PostgreSQL 7.3.5):
> #define PGSTAT_NUM_TABPURGE ((1000 - sizeof(PgStat_MsgHdr)) \
> / sizeof(PgStat_TableEntry))
> That should be sizeof(Oid), shouldn't it? The bug doesn't
> hurt because a Oid is much smaller than a PgStat_TableEntry,
> but it limits the number of them inside a PgStat_MsgTabpurge
> much more than necessary.
I think you are right. Jan?
regards, tom lane