I have no idea what this does but this line looks very suspicious to
me:

maxSize = self._options['uploadMaxSize'] * 1024 * 1024 * 1024

On Nov 3, 3:42 pm, Phyo Arkar <[email protected]> wrote:
> Maybe thats why.I was using elfinder , which i made web2py integration.
> The code is here:
>
>     def __upload(self):
>         """Upload files"""
>         try: # Windows needs stdio set for binary mode.
>             import msvcrt
>             msvcrt.setmode (0, os.O_BINARY) # stdin  = 0
>             msvcrt.setmode (1, os.O_BINARY) # stdout = 1
>         except ImportError:
>             pass
> ###DONE: Fix Upload's Response
>         if 'current' in self._request:
>             curDir = self.__findDir(self._request['current'], None)
>             if not curDir:
>                 self._response['error'] = 'Invalid parameters'
>                 return
>             if not self.__isAllowed(curDir, 'write'):
>                 self._response['error'] = 'Access denied'
>                 return
>             if not 'upload[]' in self._request:
>                 self._response['error'] = 'No file to upload'
>                 return
>
>             upFiles = self._request['upload[]']
>             # invalid format
>             # must be dict('filename1': 'filedescriptor1', 'filename2':
> 'filedescriptor2', ...)
>             if not isinstance(upFiles, dict):
>                 self._response['error'] = 'Invalid parameters'
>                 return
>
> #            self._response['select'] = []
>             total = 0
>             upSize = 0
>             maxSize = self._options['uploadMaxSize'] * 1024 * 1024 * 1024
>             for name, data in upFiles.iteritems():
>                 if name:
>                     total += 1
>                     name = os.path.basename(name)
>                     if not self.__checkName(name):
>                         self.__errorData(name, 'Invalid name')
>                     else:
>                         name = os.path.join(curDir, name)
>                         try:
>                             f = open(name, 'wb',
> self._options['uploadWriteChunk'])
>                             for chunk in self.__fbuffer(data):
>                                 f.write(chunk)
>                             f.close()
>                             upSize += os.lstat(name).st_size
>                             if self.__isUploadAllow(name):
>                                 os.chmod(name, self._options['fileMode'])
> #
> self._response['select'].append(self.__hash(name))
>                             else:
>                                 self.__errorData(name, 'Not allowed file
> type')
>                                 try:
>                                     os.unlink(name)
>                                 except:
>                                     pass
>                         except:
>                             self.__errorData(name, 'Unable to save uploaded
> file')
>                         if upSize > maxSize:
>                             try:
>                                 os.unlink(name)
>                                 self.__errorData(name, 'File exceeds the
> maximum allowed filesize')
>                             except:
>                                 pass
>                                 # TODO ?
>                                 self.__errorData(name, 'File was only
> partially uploaded')
>                             break
>
>             if self._errorData:
>                 if len(self._errorData) == total:
>                     self._response['error'] = 'Unable to upload files'
>                 else:
>                     self._response['error'] = 'Some files was not uploaded'
>
>             self.__content(curDir, False)
>             return
>
> As it has to be in module how can i use Web2py's upload function there? I
> will check web2py's upload code.
>
> Thanks a lot.
>
> Oh , also this can you list as appliance for web2py ? I made it a few months
> ago and you ask me to make it plugin but i do't know how to make it plugin
> so hmm but can run directly as appliance.
>
> http://code.google.com/p/*elfinder*-*web2py*/
>
> On Wed, Nov 3, 2010 at 4:30 AM, mdipierro <[email protected]> wrote:
> > web2py was tested extensively with large files (up to 2GB, the max
> > browsers can handle) on machines with low memory (256MB).
>
> > Can you post the code you use for uploading?
>
> > The only way I can see this problem is if you upload into a blob.
>
> > On Nov 2, 3:46 pm, Phyo Arkar <[email protected]> wrote:
> > > Hello all;
>
> > > If i upload a large file (800 MB) and  closed the browser tab while
> > > uploading , it freeze the whole web2py. Anyone have this problem?
>
> > > Tried on Local Web2py. Not without using any http server.
>
>

Reply via email to