| From: | legrand legrand <legrand_legrand(at)hotmail(dot)com> | 
|---|---|
| To: | pgsql-hackers(at)postgresql(dot)org | 
| Subject: | Re: Multiple Wait Events for extensions | 
| Date: | 2018-10-24 18:18:13 | 
| Message-ID: | 1540405093025-0.post@n3.nabble.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
Would a hard coded solution as described here after possible for mid-term ?
note: 
actual result from 
    pgstat_report_wait_star(PG_WAIT_EXTENSION); 
is preserved.
Regards
PAscal
pgstat.h
/* ----------
 * Wait Events - Extension
 *
 * Use this category when an extension is waiting.
 * ----------
 */
typedef enum
{
	WAIT_EVENT_EXTENSION_EXT = PG_WAIT_EXTENSION,
	WAIT_EVENT_EXTENSION_1,
	WAIT_EVENT_EXTENSION_2,
	WAIT_EVENT_EXTENSION_3,
	WAIT_EVENT_EXTENSION_4,
	WAIT_EVENT_EXTENSION_5,
	WAIT_EVENT_EXTENSION_6,
	WAIT_EVENT_EXTENSION_7,
	WAIT_EVENT_EXTENSION_8,
	WAIT_EVENT_EXTENSION_9,
} WaitEventExtension;
pgstat.c
...
		case PG_WAIT_EXTENSION:
			{
				WaitEventExtension w = (WaitEventExtension) wait_event_info;
				event_name = pgstat_get_wait_extension(w);
			break;
			}	
...
/* ----------
 * pgstat_get_wait_extension() -
 *
 * Convert WaitEventExtension to string.
 * ----------
 */
static const char *
pgstat_get_wait_extension(WaitEventExtension w)
{
	const char *event_name = "unknown wait event";
	switch (w)
	{
		case WAIT_EVENT_EXTENSION_EXT:
			event_name = "Extension";
			break;
		case WAIT_EVENT_EXTENSION_1:
			event_name = "Extension_1";
			break;
		case WAIT_EVENT_EXTENSION_2:
			event_name = "Extension_2";
			break;
		case WAIT_EVENT_EXTENSION_3:
			event_name = "Extension_3";
			break;
		case WAIT_EVENT_EXTENSION_4:
			event_name = "Extension_4";
			break;
		case WAIT_EVENT_EXTENSION_5:
			event_name = "Extension_5";
			break;
		case WAIT_EVENT_EXTENSION_6:
			event_name = "Extension_6";
			break;
		case WAIT_EVENT_EXTENSION_7:
			event_name = "Extension_7";
			break;
		case WAIT_EVENT_EXTENSION_8:
			event_name = "Extension_8";
			break;
		case WAIT_EVENT_EXTENSION_9:
			event_name = "Extension_9";
			break;
			/* no default case, so that compiler will warn */
	}
	return event_name;
}
--
Sent from: http://www.postgresql-archive.org/PostgreSQL-hackers-f1928748.html
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Robert Haas | 2018-10-24 20:01:29 | Re: Side effect of CVE-2017-7484 fix? | 
| Previous Message | Alvaro Herrera | 2018-10-24 16:59:04 | Re: pgbench - add pseudo-random permutation function |