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