[Twisted-Python] is twisted compatible with pickle?
succer110 at tiscali.it
succer110 at tiscali.it
Thu Mar 28 19:24:00 MDT 2013
I have made 2 application: The client extract data from a sql server (10k lines), and send every line pickled to a "collector" server via socket.The server uses twisted and receive every line, unpikle it and store the data in another sql server.
Everytime i start sending data from client to server, in the first 200 line (everytime a different line) **the server** throws an exception:SOMETIMES it something like:
Traceback (most recent call last): File "collector2.py", line 81, in dataReceived self.count,account = pickle.loads(data) File "/usr/lib/python2.6/pickle.py", line 1374, in loads return Unpickler(file).load() File "/usr/lib/python2.6/pickle.py", line 858, in load dispatch[key](self) File "/usr/lib/python2.6/pickle.py", line 1138, in load_pop del self.stack[-1] IndexError: list assignment index out of range
But it's NOT every time the same. Printing my exception i red: Exception: pop from empty listException: list index out of rangeException: "'"Exception: list assignment index out of range
Another strange errors is:File "/usr/lib/python2.6/pickle.py", line 1124, in find_class __import__(module)exceptions.ImportError: No module named ond'
for i in listaSAI: crm={} try: crm['uid']=i[0] except: crm['uid']=None try: crm['type_cond']=i[01] except: crm['type_cond']=None try: crm['population_id']=i[2] except: crm['population_id']=None try: crm['product_id']=i[3] except: crm['product_id']=None try: crm['a_id']=i[4] except: crm['a_id']=None try: crm['status']=i[5] except: crm['status']=None #time.sleep(0.001) serialized = pickle.dumps((count,crm)) #print "sent num", count, crm s.sendall(serialized) count += 1
And my server:
def dataReceived(self, data): try: self.count,account = pickle.loads(data) except Exception as e: print "Eccezione:", e print self.count+1 print data print traceback.print_exc()
Printing the data in my client tells me that everything it's ok.*If i try to slow down the process of sending using time.sleep(0.01) in my client, EVERYTHING IS FINE, and no exception are raised.*
What can i do to debug my code?
p.s. I suspect that exceptions.ImportError: No module named ond' refers to "type_cond" key in crm.
Invita i tuoi amici e Tiscali ti premia! Il consiglio di un amico vale più di uno spot in TV. Per ogni nuovo abbonato 30 € di premio per te e per lui! Un amico al mese e parli e navighi sempre gratis: http://freelosophy.tiscali.it/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/twisted-python/attachments/20130329/ede7ddbf/attachment.html>
More information about the Twisted-Python
mailing list