5 Replies Latest reply: Jan 7, 2013 7:17 AM by jeneesh RSS

    ORA-04030

    585992
      In my Program I recieve always teh error

      ORA-04030: Zu wenig Prozessspeicher für Versuch 16396 Bytes zuzuweisen (koh-kghu sessi,pfrdef.h:pbpexec_data)
      ORA-06512: in "EBFI.NN", Zeile 172
      ORA-06512: in "EBFI.NN", Zeile 372
      ORA-06512: in "EBFI.NN", Zeile 450
      ORA-06512: in Zeile 2

      I'm taking the rows in random order, before I had nearly the same error

      1;1;ORA-04030: Zu wenig Prozessspeicher für Versuch 123404 Bytes zuzuweisen (QERHJ hash-joi,kllcqas:kllsltba)
      ORA-06512: in "EBFI.NN", Zeile 137
      ORA-06512: in "EBFI.NN", Zeile 417
      ORA-06512: in "EBFI.NN", Zeile 449
      ORA-06512: in Zeile 2

      First occured after ~18,5 hours, the second after ~24 hours

      but I don't know where it comes from... could it be because I uses BULK COLLECT? But the data sets do not much differ - don't really understand why the error occurs so late

      Thanks in advance
      ~ Mel
        • 1. Re: ORA-04030
          BluShadow
          For our information, in English that's:

          ORA-04030: out of process memory when trying to allocate string bytes (string,string)
          Cause: Operating system process private memory has been exhausted
          Action: none
          • 2. Re: ORA-04030
            585992
            yes, sorry ^^

            but where could it be caused by?
            • 3. Re: ORA-04030
              585992
              ok, could be a Server Problem, nothing works now. Will phone to the Administrator...
              • 4. Re: ORA-04030
                SudheerGodgeri
                There are many reasons for this:
                1) the parallel max servers is too large, try reducing it
                2) the total sga is exhausted.. try increaseing physical memory, then increasing SGA_MAX/SGA_TARGET combo
                3) increase PGA_AGGREGATE_TARGET
                4) attempt working on pgamax_size - undocumented- but do it with oracle support only. increase this to 512mb/ 1gb etc. step by step/revert
                back if theres' any issue

                5) MOST LIKELY CAUSE: your code, is using BULK COLLECT .. FOR IN.. without LIMIT clause i..e loading all rows in memory -- which couuld fail for
                table that is too large/ has grown large. Loop using smaller sets of rows instead. check pl.sql developers guide in oracle documentation.
                • 5. Re: ORA-04030
                  jeneesh
                  Welcome to the forum..

                  Please dont dig 5 year old thread..It wont help anyone..