[patch] executor and slru dtrace probes
I attached patch which was already sent on february/april, but it was
lost in time. It is originally from Robert Lor and Theo Schlossnagle.
It contains two DTrace probe groups. One is related to monitoring SLRU
and second is about executor nodes.
I merged it with the head.
Original end of mail thread is here:
http://archives.postgresql.org/pgsql-hackers/2009-04/msg00148.php
Zdenek
Attachments:
slru_executor_dtrace.patchtext/x-patch; CHARSET=US-ASCII; name=slru_executor_dtrace.patchDownload+97-0
--On 13. November 2009 23:29:41 +0100 Zdenek Kotala <Zdenek.Kotala@Sun.COM>
wrote:
t contains two DTrace probe groups. One is related to monitoring SLRU
and second is about executor nodes.I merged it with the head.
Original end of mail thread is here:
http://archives.postgresql.org/pgsql-hackers/2009-04/msg00148.php
I've started to review this.
It seems to me the attached patch wasn't adjusted or discussed again to
address Tom's complaints? At least the executor probes contained here hold
still the same issues mentioned by Tom in the discussion linked here.
--
Thanks
Bernd
Dne 8.12.09 00:27, Bernd Helmle napsal(a):
--On 13. November 2009 23:29:41 +0100 Zdenek Kotala
<Zdenek.Kotala@Sun.COM> wrote:t contains two DTrace probe groups. One is related to monitoring SLRU
and second is about executor nodes.I merged it with the head.
Original end of mail thread is here:
http://archives.postgresql.org/pgsql-hackers/2009-04/msg00148.php
I've started to review this.
It seems to me the attached patch wasn't adjusted or discussed again to
address Tom's complaints? At least the executor probes contained here
hold still the same issues mentioned by Tom in the discussion linked here.
I did not make any change. I only revival patch and merge it with head.
I think that SLRU probes are OK and acceptable.
Tom's issues with executor probes are still there and I expect
discussion about them. IIRC Theo uses these probes in production.
If you think that it is better I could split patch into two separate
patches and both can be reviewed separately.
thanks Zdenek
On Dec 8, 2009, at 5:10 AM, Zdenek Kotala wrote:
Dne 8.12.09 00:27, Bernd Helmle napsal(a):
--On 13. November 2009 23:29:41 +0100 Zdenek Kotala <Zdenek.Kotala@Sun.COM> wrote:
t contains two DTrace probe groups. One is related to monitoring SLRU
and second is about executor nodes.I merged it with the head.
Original end of mail thread is here:
http://archives.postgresql.org/pgsql-hackers/2009-04/msg00148.php
I've started to review this.
It seems to me the attached patch wasn't adjusted or discussed again to address Tom's complaints? At least the executor probes contained here hold still the same issues mentioned by Tom in the discussion linked here.I did not make any change. I only revival patch and merge it with head. I think that SLRU probes are OK and acceptable.
Tom's issues with executor probes are still there and I expect discussion about them. IIRC Theo uses these probes in production.
If you think that it is better I could split patch into two separate patches and both can be reviewed separately.
I suppose I see it as a simple thing. The probes have no performance impact when they are not instrumented. I've used them on rare occasion to understand which exec nodes are causing which disk accesses. Seemed pretty darn useful at the time. There is (of course) some performance overhead when they are enabled, but that is intentionally performed by the operator, so it seems like a non-issue.
Now, there was some indication that there was a better place to probe that would be more comprehensive -- that should be addressed.
--
Theo Schlossnagle
Esoteric Curio -- http://lethargy.org/
OmniTI Computer Consulting, Inc. -- http://omniti.com/
--On 8. Dezember 2009 11:10:44 +0100 Zdenek Kotala <Zdenek.Kotala@Sun.COM>
wrote:
If you think that it is better I could split patch into two separate
patches and both can be reviewed separately.
I split up this patch into two separate patches: one for SLRU and one for
the executor probes. I've done some documentation on the SLRU part, maybe
you can look over it (to make sure i didn't break anything).
I left the executor probes out of the documentation for now, since it seems
not to be clear how they would manifest.
Out of curiosity: Why do we want to pass the SlruCtl pointer down to the
probes? I don't understand what those probes are going to do with those
pointers, can you explain?
--
Thanks
Bernd
Dne 10.12.09 15:51, Bernd Helmle napsal(a):
--On 8. Dezember 2009 11:10:44 +0100 Zdenek Kotala
<Zdenek.Kotala@Sun.COM> wrote:If you think that it is better I could split patch into two separate
patches and both can be reviewed separately.I split up this patch into two separate patches: one for SLRU and one
for the executor probes. I've done some documentation on the SLRU part,
maybe you can look over it (to make sure i didn't break anything).I left the executor probes out of the documentation for now, since it
seems not to be clear how they would manifest.Out of curiosity: Why do we want to pass the SlruCtl pointer down to the
probes? I don't understand what those probes are going to do with those
pointers, can you explain?
You need to determine which SLRU is used. Because SLRUs are initialized
during startup pointer should be same in all backends. If I think
more about it. Maybe it could be goot to add probe also into
SimpleLruInit to catch name of SLRUs.
Zdenek
--On 9. Dezember 2009 19:08:07 -0500 Theo Schlossnagle <jesus@omniti.com>
wrote:
Now, there was some indication that there was a better place to probe
that would be more comprehensive -- that should be addressed.
For now there exists no consensus where they should go in. Tom pointed out
various issues with ExecProcNode() and he's worried about the performance
penalty those probes might introduce. I admit I'm not very experienced with
dtrace, but maybe some worries exists because an expensive instrumented
executor probe can cause forged results?
--
Thanks
Bernd
--On 10. Dezember 2009 16:49:50 +0100 Zdenek Kotala <Zdenek.Kotala@Sun.COM>
wrote:
You need to determine which SLRU is used. Because SLRUs are initialized
during startup pointer should be same in all backends. If I think more
about it. Maybe it could be goot to add probe also into SimpleLruInit to
catch name of SLRUs.
Hi Zdenek,
do you plan to work on this further? I was about to mark the SLRU probes as
ready for committer...
--
Thanks
Bernd
On Mon, Dec 14, 2009 at 7:19 AM, Bernd Helmle <mailings@oopsware.de> wrote:
--On 10. Dezember 2009 16:49:50 +0100 Zdenek Kotala <Zdenek.Kotala@Sun.COM>
wrote:You need to determine which SLRU is used. Because SLRUs are initialized
during startup pointer should be same in all backends. If I think more
about it. Maybe it could be goot to add probe also into SimpleLruInit to
catch name of SLRUs.Hi Zdenek,
do you plan to work on this further? I was about to mark the SLRU probes as
ready for committer...
Since the author has pretty much admitted he didn't fix any of the
issues that were raised by the last committer review, I'm a little
confused about why you're asking for another one.
...Robert
--On 14. Dezember 2009 07:49:34 -0500 Robert Haas <robertmhaas@gmail.com>
wrote:
Since the author has pretty much admitted he didn't fix any of the
issues that were raised by the last committer review, I'm a little
confused about why you're asking for another one.
It wasn't clear to me what Zdenek meant with "If I think about it".
--
Thanks
Bernd
--On 14. Dezember 2009 20:33:12 +0100 Bernd Helmle <mailings@oopsware.de>
wrote:
Since the author has pretty much admitted he didn't fix any of the
issues that were raised by the last committer review, I'm a little
confused about why you're asking for another one.It wasn't clear to me what Zdenek meant with "If I think about it".
Oh, and i was under the opinion the last discussions were about executor
probes only (note the patch is split up into two parts now, SLRU and
executor probes). The latter won't be fixed, but it seems the SLRU part at
least is ready.
--
Thanks
Bernd
Bernd Helmle píše v po 14. 12. 2009 v 20:42 +0100:
--On 14. Dezember 2009 20:33:12 +0100 Bernd Helmle <mailings@oopsware.de>
wrote:Since the author has pretty much admitted he didn't fix any of the
issues that were raised by the last committer review, I'm a little
confused about why you're asking for another one.It wasn't clear to me what Zdenek meant with "If I think about it".
Oh, and i was under the opinion the last discussions were about executor
probes only (note the patch is split up into two parts now, SLRU and
executor probes). The latter won't be fixed, but it seems the SLRU part at
least is ready.
I would like to add SimpleLruInit probe. I'm busy with PG packaging,
but I hope that I will send updated version tomorrow.
Zdenek
Zdenek Kotala wrote:
Bernd Helmle píše v po 14. 12. 2009 v 20:42 +0100:
Oh, and i was under the opinion the last discussions were about executor
probes only (note the patch is split up into two parts now, SLRU and
executor probes). The latter won't be fixed, but it seems the SLRU part at
least is ready.I would like to add SimpleLruInit probe. I'm busy with PG packaging,
but I hope that I will send updated version tomorrow.
I'd like to see as many of these DTrace probes as possible make it into
8.5, and it's great that you've picked up these older ones and updated
them. It looks like a lot of progress was made on actually measuring
the overhead of adding these probes in even when they're not enabled,
which is good.
But I'm afraid we're already out of time for this one if you're still
tweaking the probes here. With a functional change like that, our
normal process at this point would be to have the reviewer re-evaluate
things before they head to a committer, and I don't feel like this patch
is quite at 100% yet--in particular, the probe documentation is
improving but still a bit rough. I don't feel like we're quite ready to
mark this one for commit for this one, and today we really want to clear
the queue for things for committers to deal with. Please send that
updated version, and let's keep working on this into the next
CommitFest, where it will be in the front of the queue rather than how
it ended up at the tail of this one just based on its submission date.
You're not really getting a fair chunk of time here between your review
and the end here because of problems lining up reviewer time, that
shouldn't happen next time.
--
Greg Smith 2ndQuadrant Baltimore, MD
PostgreSQL Training, Services and Support
greg@2ndQuadrant.com www.2ndQuadrant.com
--On 15. Dezember 2009 12:10:09 -0500 Greg Smith <greg@2ndquadrant.com>
wrote:
But I'm afraid we're already out of time for this one if you're still
tweaking the probes here. With a functional change like that, our
normal process at this point would be to have the reviewer re-evaluate
things before they head to a committer, and I don't feel like this patch
is quite at 100% yet--in particular, the probe documentation is improving
but still a bit rough. I don't feel like we're quite ready to mark this
one for commit for this one, and today we really want to clear the queue
for things for committers to deal with. Please send that updated
version, and let's keep working on this into the next CommitFest, where
it will be in the front of the queue rather than how it ended up at the
tail of this one just based on its submission date. You're not really
getting a fair chunk of time here between your review and the end here
because of problems lining up reviewer time, that shouldn't happen next
time.
That seems reasonable.
I hope i could contribute something, even this was the first time i got my
hands on reviewing this DTrace thingie.
--
Thanks
Bernd
Greg Smith píše v út 15. 12. 2009 v 12:10 -0500:
Please send that updated version, and let's keep working on this into
the next CommitFest, where it will be in the front of the queue rather
than how it ended up at the tail of this one just based on its
submission date. You're not really getting a fair chunk of time here
between your review and the end here because of problems lining up
reviewer time, that shouldn't happen next time.
Make sense.
Zdenek