Re: Wait events monitoring future development - Mailing list pgsql-hackers

From Tsunakawa, Takayuki
Subject Re: Wait events monitoring future development
Date
Msg-id 0A3221C70F24FB45833433255569204D1F5C01D0@G01JPEXMBYT05
Whole thread Raw
In response to Re: Wait events monitoring future development  (Bruce Momjian <bruce@momjian.us>)
Responses Re: Wait events monitoring future development  (Jim Nasby <Jim.Nasby@BlueTreble.com>)
Re: Wait events monitoring future development  (Robert Haas <robertmhaas@gmail.com>)
List pgsql-hackers
From: pgsql-hackers-owner@postgresql.org
> If you want to know why people are against enabling this monitoring by
> default, above is the reason.  What percentage of people do you think would
> be willing to take a 10% performance penalty for monitoring like this?  I
> would bet very few, but the argument above doesn't seem to address the fact
> it is a small percentage.
> 
> In fact, the argument above goes even farther, saying that we should enable
> it all the time because people will be unwilling to enable it on their own.
> I have to question the value of the information if users are not willing
> to enable it.  And the solution proposed is to force the 10% default overhead
> on everyone, whether they are currently doing debugging, whether they will
> ever do this level of debugging, because people will be too scared to enable
> it.  (Yes, I think Oracle took this
> approach.)
> 
> We can talk about this feature all we want, but if we are not willing to
> be realistic in how much performance penalty the _average_ user is willing
> to lose to have this monitoring, I fear we will make little progress on
> this feature.

OK, 10% was an overstatement.  Anyway, As Amit said, we can discuss the default value based on the performance
evaluationbefore release.
 

As another idea, we can stand on the middle ground.  Interestingly, MySQL also enables their event monitoring
(PerformanceSchema) by default, but not all events are collected.  I guess highly encountered events are not collected
bydefault to minimize the overhead.
 

http://dev.mysql.com/doc/refman/5.7/en/performance-schema-quick-start.html
--------------------------------------------------
Assuming that the Performance Schema is available, it is enabled by default.
...
[mysqld]
performance_schema=ON
...
Initially, not all instruments and consumers are enabled, so the performance schema does not collect all events. To
turnall of these on and enable event timing, execute two statements (the row counts may differ depending on MySQL
version):
 
mysql> UPDATE setup_instruments SET ENABLED = 'YES', TIMED = 'YES';
Query OK, 560 rows affected (0.04 sec)
mysql> UPDATE setup_consumers SET ENABLED = 'YES';
Query OK, 10 rows affected (0.00 sec)
--------------------------------------------------


BTW, I remember EnterpriseDB has a wait event monitoring feature.  Is it disabled by default?  What was the overhead?

Regards
Takayuki Tsunakawa


pgsql-hackers by date:

Previous
From: Amit Langote
Date:
Subject: Re: Declarative partitioning
Next
From: "Tsunakawa, Takayuki"
Date:
Subject: Re: Wait events monitoring future development