A question about seeing what’s in a pipe came up on the comp.databases.oracle.server newsgroup a few days ago – it was quite a simple question and one which really ought to have a simple reply:
I’m trying to work out how many messages are queued in a pipe and how long said messages are. Anyone got any ideas?
So far, the best I can come up with is something silly like receiving DBMS_PIPE messages, unpacking them, counting and adding lengths and then repacking and requeuing the messages.
What I would like is something like this: select * from DBA_ALL_ABOUT_PIPES;
And DBA_ALL_ABOUT_PIPES has the name, type of pipe (public or private), size, number of queued messages and length of messages.
Well, there is a view gv$db_pipes, which lists some of the rows from x$kglob for namespace 7. So that’s a starting point.

