How can we find full query running in the database?

Note:  You can see running queries in pg_stat_activity table. If the query is huge in length like having 1000 lines, we are not able to see full query from pg_stat_activity table .

1. using pg_stat_activity table

2. using log file created in pg_log directory

3. using gp_toolkit schema tables and views

Note: Amount of code you see depends on the client you use. In pgAdmin you can see only 1000 of them. You can dump the SQL using psql -c "copy (select * from pg_stat_activity) to stdout CSV header delimiter '|';"  For example

[gpadmin@sachi ~]$ psql -c "copy (select * from pg_stat_activity) to stdout CSV header delimiter '|';" 

datid|datname|procpid|sess_id|usesysid|usename|current_query|waiting|query_start|backend_start|client_addr|client_port|application_name|xact_start

16993|sachi|7245|5593|10|gpadmin|"copy (select * from pg_stat_activity) to stdout CSV header delimiter '|';"|f|2015-01-19 13:24:23.540755-05|2015-01-19 13:24:23.538773-05||-1|psql|2015-01-19 13:24:23.540755-05

If you still not able to see full text of the query, increase the parameter.

pgstat_track_activity_query_size

Sets the maximum length limit for the query text stored in current_query column of the system catalog view pg_stat_activity. The minimum length is 1024 characters.

VALUE RANGE

integer

DEFAULT

1024

SET CLASSIFICATIONS

local

system

restart

For example

Run this on master- gpconfig -c pgstat_track_activity_query_size -v 100001

This will increase the length of current_query column of pg_stat_activity table