Re: DBMS_PIPE...

From: Thomas Kyte <tkyte_at_us.oracle.com>
Date: Tue, 02 Jun 1998 14:06:47 GMT
Message-ID: <357705a9.3363616_at_192.86.155.100>


A copy of this was sent to "sabrisa" <sabrisa_at_tm.net.my> (if that email address didn't require changing) On 2 Jun 1998 13:01:51 GMT, you wrote:

>dear world,
>i have quite serious problem. The scenerio is like this:
>I have a message with the size of 512 KBytes. I want to passed this
>message
>to the other session using DBMS_PIPE.
>
>I read from somewhere...thayt DBMS_PIPE can allocate 2 GBytes spaces.
>so how do i can use it...
>can somebody teach me.
>
>I have called ORACLE Support, but they seems don't even have any experience
>in this, so i need
>help..if someone had use this kind of process.
>
>thanks in advance... :)
>
>cheers

the max message size is 4k minus some overhead (so you'll have to break your message up into bite sized chunks to send it). Since dbms_pipe is PL/SQL anyway, you would have had to break it into 32k chunks at the very least...

You set the maxpipesize either in a create pipe or send message call. It defaults to 8k (2 messages outstanding on the pipe).

If you have a consumer grabbing results off of the pipe as fast as you have a producer filling the pipe, then you can use a small pipe size. If you do not have a consumer gabbing the results off, then you cannot put the whole message onto the pipe until some is taken off.

I would seriously consider putting a 512k message into a database table (Long in v7, clob in v8) and passing the primary key of this table over the pipe. Pipes live in the SGA and consume ram. You'll want to take advantage of the buffer system employed by tables (it might be cached, it might be flushed).

I use tables for any messages >4k in size myself all of the time.  

Thomas Kyte
tkyte_at_us.oracle.com
Oracle Government
Herndon VA  

http://govt.us.oracle.com/ -- downloadable utilities  



Opinions are mine and do not necessarily reflect those of Oracle Corporation  

Anti-Anti Spam Msg: if you want an answer emailed to you, you have to make it easy to get email to you. Any bounced email will be treated the same way i treat SPAM-- I delete it. Received on Tue Jun 02 1998 - 16:06:47 CEST

Original text of this message