Results 1 to 10 of 10
  1. #1
    Join Date
    Feb 2006
    Posts
    13

    Unanswered: dbms_output: buffer overflow

    Hello,

    Is there a way to increase (or free) the buffer used by the package dbms_output? I use the maximum value: set serveroutput on size 1000000, but I still get the overflow thingy...

    I am using Oracle 8.

    Thanks!

  2. #2
    Join Date
    Jun 2003
    Location
    West Palm Beach, FL
    Posts
    2,713

    Cool


    If you need more than 1,000,000 characters output, maybe you should think about writing to a file with the UTL_FILE utility.

    The person who says it can't be done should not interrupt the person doing it. -- Chinese proverb

  3. #3
    Join Date
    Feb 2006
    Posts
    13
    Yes, Mr. Rolleyes.... But from what I have read that involves special rights... (rights that I don't have)...

  4. #4
    Join Date
    Jan 2004
    Location
    Croatia, Europe
    Posts
    4,094
    Provided Answers: 4
    So your options are quite clear:
    a) get those rights and do what you need to do
    b) cry over buffer overflow

    Could you, perhaps, break query/procedure which produces that huge output to smaller pieces and spool output several times?

  5. #5
    Join Date
    May 2004
    Location
    Dominican Republic
    Posts
    721
    Or even better, tell us what you're _trying_ to do and we'll recommend you something else accordingly..

  6. #6
    Join Date
    Jun 2003
    Location
    West Palm Beach, FL
    Posts
    2,713

    Talking


    -- OR --

    In your PL/SQL procedure issue the following commands every "n" transactions to "flush" the buffer:
    Code:
    DBMS_OUTPUT.DISABLE;
    DBMS_OUTPUT.ENABLE(1000000);

    The person who says it can't be done should not interrupt the person doing it. -- Chinese proverb

  7. #7
    Join Date
    Feb 2006
    Posts
    13
    thanks for the constructive reponses ...

    and no thanks to the whiners...

  8. #8
    Join Date
    Aug 2012
    Posts
    2
    Actually, it works like this:

    1 BEGIN
    2 DBMS_OUTPUT.ENABLE;
    3 DBMS_OUTPUT.PUT_LINE('ping');
    4 DBMS_LOCK.SLEEP(5);
    5 DBMS_OUTPUT.DISABLE;
    6 DBMS_OUTPUT.ENABLE;
    7 DBMS_OUTPUT.PUT_LINE('ping');
    8 DBMS_LOCK.SLEEP(5);
    9 DBMS_OUTPUT.DISABLE;
    10 DBMS_OUTPUT.ENABLE;
    11 DBMS_OUTPUT.PUT_LINE('ping');
    12 DBMS_LOCK.SLEEP(5);
    13 DBMS_OUTPUT.DISABLE;
    14 DBMS_OUTPUT.ENABLE;
    15 DBMS_OUTPUT.PUT_LINE('ping');
    16* END;
    15:05:54 OPS$RSCHULKE@DWH1_DEV SID(49) SQL >/
    (...15 second delay...)
    ping
    Elapsed: 00:00:15.11

  9. #9
    Join Date
    Aug 2003
    Location
    Where the Surf Meets the Turf @Del Mar, CA
    Posts
    7,776
    Provided Answers: 1
    yet another noobie trying impress folks by responding to SIX year old thread.

    You never get a second chance to make a first impression.
    You can lead some folks to knowledge, but you can not make them think.
    The average person thinks he's above average!
    For most folks, they don't know, what they don't know.
    Good judgement comes from experience. Experience comes from bad judgement.

  10. #10
    Join Date
    Jun 2004
    Location
    Liverpool, NY USA
    Posts
    2,509
    Quote Originally Posted by IolantheSF View Post
    Actually, it works like this:

    1 BEGIN
    2 DBMS_OUTPUT.ENABLE;
    3 DBMS_OUTPUT.PUT_LINE('ping');
    4 DBMS_LOCK.SLEEP(5);
    5 DBMS_OUTPUT.DISABLE;
    6 DBMS_OUTPUT.ENABLE;
    7 DBMS_OUTPUT.PUT_LINE('ping');
    8 DBMS_LOCK.SLEEP(5);
    9 DBMS_OUTPUT.DISABLE;
    10 DBMS_OUTPUT.ENABLE;
    11 DBMS_OUTPUT.PUT_LINE('ping');
    12 DBMS_LOCK.SLEEP(5);
    13 DBMS_OUTPUT.DISABLE;
    14 DBMS_OUTPUT.ENABLE;
    15 DBMS_OUTPUT.PUT_LINE('ping');
    16* END;
    15:05:54 OPS$RSCHULKE@DWH1_DEV SID(49) SQL >/
    (...15 second delay...)
    ping
    Elapsed: 00:00:15.11
    Thanks for the info, but you might want to check how old the thread was.
    Bill
    You do not need a parachute to skydive. You only need a parachute to skydive twice.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •