| From: | Jesper Pedersen <jesper(dot)pedersen(at)redhat(dot)com> |
|---|---|
| To: | pgsql-hackers(at)postgresql(dot)org |
| Subject: | dtrace probes |
| Date: | 2017-04-18 16:08:46 |
| Message-ID: | aa1785ba-0223-464d-6e1a-2f2c7db3e03f@redhat.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
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 have verified all dtraces probes for their type, and only the lock__
methods doesn't aligned with its actual types. However, that would
require a change to probes.d, and therefore PostgreSQL 11 material.
Depending on the feedback I can add this patch to the open item list in
order to fix it for PostgreSQL 10.
Best regards,
Jesper
| Attachment | Content-Type | Size |
|---|---|---|
| 0001-Explicit-cast-LWLockMode-which-an-enum-to-int-in-ord_v1.patch | text/x-patch | 3.5 KB |
| probes.txt | text/plain | 12.5 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Petr Jelinek | 2017-04-18 16:13:23 | Re: Why does logical replication launcher set application_name? |
| Previous Message | Petr Jelinek | 2017-04-18 16:00:43 | Re: Logical replication launcher uses wal_retrieve_retry_interval |