On 28/11/2018 14:43, Alvaro Herrera wrote:
> On 2018-Nov-28, Amit Kapila wrote:
> 
>> The problem with this idea is that if someone specifies a particular
>> parameter using query and the query doesn't return any parameters,
>> then it can lead to inadvertent behavior.  For example, if user uses
>> something like pg_stat_statements_reset(<valid_user_id>,
>> <valid_db_id>, SELECT s.queryid FROM pg_stat_statements AS s WHERE
>> s.query = 'SELECT $1 AS "ONE"');  now, if the query doesn't return any
>> row, we will remove the stats for all queries that belong to
>> (userid,dbid).  It could be surprising for some users, that's why we
>> came up with option-4 where we keep the default value of parameters as
>> 0.
> 
> Right, I think option 4 is a clear improvement over option 1.  I can get
> behind that one.  Since not many people care to vote, I think this tips
> the scales enough to that side.

I think option 4 is the right choice, and with named parameters and
default values it will also be very convenient.

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Reply via email to