Web2py is ran inside screen. coz my app is  not production-stable yet
and want to debug. I print out some debug messages and can track back
inside screen (i know i know , its bad practice :D)

may be coz of that?

On 9/27/11, Michele Comitini <michele.comit...@gmail.com> wrote:
> I would begin to remove possible environmental causes... ;)
> Other questions:
> 4) Do you run web2py.py  attached to a tty?
> 5) Do you redirect standard output from web2py or leave it on the tty?
>
> The questions are because I see some print statements that could hang
> IO on a thread if the web2py process is not properly detached from the
> terminal.
> If that is the case use nohup and try to see what happens.
>
> wrong:
> $ python web2py.py <options> &
>
> right:
> $ nohup python web2py.py <options> &
>
> If nothing changes... well... other questions!
>
>
> mic
>
> 2011/9/27 Phyo Arkar <phyo.arkarl...@gmail.com>:
>> It cannot be reproduced ..
>>
>> On 9/27/11, Phyo Arkar <phyo.arkarl...@gmail.com> wrote:
>>> its not the same warning notices , client recieves 0 byte and timed
>>> out at brower side looking at firebug.
>>>
>>> On 9/27/11, Massimo Di Pierro <massimo.dipie...@gmail.com> wrote:
>>>> Other than the error, do you see wrong behavior from the browser?
>>>> I do not not believe that there is anything wrong as we ship the
>>>> "official" rocket. We are just printing an exception that before was
>>>> being ignored.
>>>>
>>>> Massimo
>>>>
>>>> On Sep 26, 2:47 pm, Phyo Arkar <phyo.arkarl...@gmail.com> wrote:
>>>>> Hello Web2py.
>>>>>
>>>>>  Rocket server was very  well stable for me until today , after 2
>>>>> weeks of update and while testing usual Json output which was never
>>>>> changed and working fine fore 8 months.
>>>>>
>>>>> This happens!
>>>>>
>>>>> ERROR:Rocket.Errors.Thread-6:Unhandled Error when serving connection:
>>>>> Traceback (most recent call last):
>>>>>
>>>>>   File "/root/web2py/gluon/rocket.py", line 1064, in run
>>>>>     self.run_app(conn)
>>>>>
>>>>>   File "/root/web2py/gluon/rocket.py", line 1552, in run_app
>>>>>     self.write(data, sections)
>>>>>
>>>>>   File "/root/web2py/gluon/rocket.py", line 1472, in write
>>>>>     self.send_headers(data, sections)
>>>>>
>>>>>   File "/root/web2py/gluon/rocket.py", line 1456, in send_headers
>>>>>     self.conn.sendall(b(header_data))
>>>>>
>>>>>   File "/usr/lib/python2.7/socket.py", line 224, in meth
>>>>>     return getattr(self._sock,name)(*args)
>>>>>
>>>>> error: [Errno 32] Broken pipe
>>>>>
>>>>> and it is on and off randomly.
>>>>>
>>>>> Why?
>>>>>
>>>>> heres my Json Controller :
>>>>>
>>>>> def rows():
>>>>>
>>>>>         if REQUEST.vars.db_name:
>>>>>                 casesdb = DAL( 'mysql://root@localhost/' +
>>>>> REQUEST.vars.db_name )
>>>>>                 casesdb.define_table( 'email_data', migrate = False,
>>>>> *email_halfschema )
>>>>>                 casesdb.define_table( 'loosefile_data', migrate =
>>>>> False,
>>>>> *file_halfschema )
>>>>>                 casesdb.define_table( 'attach_data', migrate = False,
>>>>> *file_halfschema )
>>>>>         elif SESSION.db_name:
>>>>>                 casesdb = DAL( 'mysql://root@localhost/' +
>>>>> SESSION.db_name
>>>>> )
>>>>>                 casesdb.define_table( 'email_data', migrate = False,
>>>>> *email_halfschema )
>>>>>                 casesdb.define_table( 'loosefile_data', migrate =
>>>>> False,
>>>>> *file_halfschema )
>>>>>                 casesdb.define_table( 'attach_data', migrate = False,
>>>>> *file_halfschema )
>>>>>
>>>>>         fields = ['id', 'filePath', 'fileName', 'cus', 'sentto',\
>>>>>                          'emailFrom', 'subject', 'cc', 'bcc',
>>>>> 'extracted',
>>>>> 'hdrs',\
>>>>>
>>>>>
>>>>> 'DateTime','OriginalDateTime','TimeZone','reply_to',"master",'duplicated','
>>>>> MD5Hash','msgID','fqdn']
>>>>>         rows = []
>>>>>         page = int( request.vars.page )
>>>>>
>>>>>         max = request.vars.totalrows
>>>>>         if max:
>>>>>                 pagesize = int( max )
>>>>>         else:
>>>>>                 pagesize = int( request.vars.rows )
>>>>>         print pagesize
>>>>>         limitby = ( page * pagesize - pagesize, page * pagesize )
>>>>> #       limitby = ( 1, 25 )
>>>>>         print "str( page * pagesize - pagesize )" + str( page *
>>>>> pagesize
>>>>> -
>>>>> pagesize ) + " limitby " + str( page * pagesize )
>>>>> #       orderby = request.vars.sidx
>>>>>         orderby = casesdb.email_data[request.vars.sidx]
>>>>>         print orderby
>>>>>         if request.vars.sord == 'desc':
>>>>>                 orderby = ~orderby
>>>>>
>>>>>         query = casesdb.email_data.id > 0
>>>>>
>>>>>         for r in casesdb( query ).select( orderby = orderby, limitby =
>>>>> limitby ):
>>>>>                 vals = []
>>>>>                 for f in fields:
>>>>>                         if f == 'extracted':
>>>>>                                 vals.append( _sentisize(r[f]) )
>>>>>                         else :
>>>>>                                 vals.append( r[f] )
>>>>>                 rows.append( dict( id = r.id, cell = vals ) )
>>>>>
>>>>>         total = casesdb( query ).count()
>>>>>         print total
>>>>>         if total % pagesize >0:
>>>>>                 pages = int( total / pagesize ) +1
>>>>>         else:
>>>>>                 pages = int( total / pagesize )
>>>>>         #if total % pagesize == 0: pages -= 1
>>>>>         data = dict( total = pages, page = page, rows = rows )
>>>>>         return data
>>>
>>
>

Reply via email to