cancel
Showing results for 
Search instead for 
Did you mean: 

Memory roll over when trying to upload 70 MB file

Former Member
0 Kudos

Hi,

I am trying to upload a file sized 70 MB using File upload UI element in my web dynpro application. I am associated File Upliad UI to Xstring variable. But each time the application dumps giving a system_no_roll error.

If there any work around for this?

Regards,

priya

Moderator Message: Please do a proper search before posting. There are numerous threads daeling with this issue. Thread locked.

I disagree with Neil. Although there has been discussion about large file uploads in the past, I believe this discussion is valid. We are not talking about a profile limit but memory exhaustion. I think discussion of alternative approaches in this situation is needed. Therefore I'm unlocking the thread.

Edited by: Neil Gardiner on Nov 10, 2010 8:49 AM

Edited and Unlocked by: Thomas Jung on Nov 9, 2010 4:52 PM

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi,

Appreciate your quick turn round. Program is failing while standard SAP code is trying to read the file.

It is required that User upload file through Web UI and so application server option does not work for me.

I saw your presentation on ACF File upload, do you think it would be good option to use it here?

Regards,

Priya

thomas_jung
Developer Advocate
Developer Advocate
0 Kudos

>I saw your presentation on ACF File upload, do you think it would be good option to use it here?

Not necessarily. The request object still contains the complete content and must be transfered to a local XSTRING.

You might consider the FlashIsland approach. I have a tutorial on this similiar to the ACFUpload. The advantage here is that you can control the upload from within Flex. You could perhaps upload in smaller chunks and in the handler. I guess it depends upon what you need to do with the file once it is uploaded. Do you just want to store it in the database? Can it be spread across multiple records in the DB? Otherwise even if you get around the upload problem you are still faced with having to hold all 70Mb in user session (and likely encountering the same problem).

thomas_jung
Developer Advocate
Developer Advocate
0 Kudos

Probably increasing the roll memory size on the application server is the only thing that will help. 70Mb is a pretty large file and file uploads within the web browser don't allow streaming or partial uploads. Therefore the entire 70Mb must be transfered from the response object into the user session. You might track where the error occurs and make sure it isn't later in your processing when you might be copying the XSTRING and perhaps doubling the amount of memory needed. However if it is simply the 70Mb file that is causing the problem, there isn't a whole lot you can do short of Basis allocating more memory.

Is it critical that the file is uploaded via the user interface? Is there any way that the file can be read from the file system of the application server instead? The DATASET commands of the file system interface are much better suited to processing large files.