On Tue, Apr 18, 2017 at 9:38 PM, Jesper Pedersen <jesper.peder...@redhat.com> wrote: > Hi, > > The lwlock dtrace probes define LWLockMode as int, and the > TRACE_POSTGRESQL_LWLOCK methods are called using both a variable and > constant definition. > > This leads to a mix of argument definitions depending on the call site, as > seen in probes.txt file. > > A fix is to explicit cast 'mode' to int such that all call sites will use > the > > argument #2 4 signed bytes > > definition. Attached patch does this. >
I think this fix is harmless and has some value in terms of consistency. One minor suggestion is that you should leave a space after typecasting. - TRACE_POSTGRESQL_LWLOCK_WAIT_DONE(T_NAME(lock), mode); + TRACE_POSTGRESQL_LWLOCK_WAIT_DONE(T_NAME(lock), (int)mode); There should be a space like "(int) mode". > I have verified all dtraces probes for their type, and only the lock__ > methods doesn't aligned with its actual types. > Do you see any problem with that? > > Depending on the feedback I can add this patch to the open item list in > order to fix it for PostgreSQL 10. > Is there any commit in PG-10 which has caused this behavior? If not, then I don't think it should be added to open items of PG-10. -- With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers