We are going to change the c++ implementation to the same behavior with pure python which will raise 'Unexpected end-group tag.' too. Please see http://b/27494216
On Sat, Mar 12, 2016 at 11:46 PM, Wei Chiang Lim <[email protected]> wrote: > Hi all > > I'm trying parse protobuf messages subscribed from a zeromq feed using > Python. Intermittently when I parse the message string, my script crashes > with the following error > > File "ale-feed-location-reader.py", line 37, in <module> > > aleEvent.ParseFromString(recvMsg) > > File "/usr/lib/python2.7/dist-packages/google/protobuf/message.py", line > 182, in ParseFromString > > self.MergeFromString(serialized) > > File > "/usr/lib/python2.7/dist-packages/google/protobuf/internal/python_message.py", > line 798, in MergeFromString > > raise message_mod.DecodeError('Unexpected end-group tag.') > > google.protobuf.message.DecodeError: Unexpected end-group tag. > > > My script looks like the following, seems fairly simple enough. Has anyone > seen this before, and how would you fix this? My guess is that it is not any > corruption on the message from the zmq server, as a vendor provided c++ > compiled program is able to parse the messages without any problem. > > ----------snip---------- > # Socket to talk to server > context = zmq.Context() > clientSock = context.socket(zmq.SUB) > clientSock.connect ("tcp://%s:%s" % (serverAddr, serverPort)) > print('Connected to {0} at port {1}'.format(serverAddr, serverPort)) > > topicfilter = "" > clientSock.setsockopt(zmq.SUBSCRIBE, topicfilter) > > while(1): > # Receive Message > recvMsg = ''.join(clientSock.recv_multipart()) > # Parse Message > aleEvent = schema_pb2.nb_event() > aleEvent.ParseFromString(recvMsg) > if aleEvent.IsInitialized(): > time = datetime.datetime.fromtimestamp(aleEvent.timestamp) > ----------snip---------- > > Thanks for any insight! > > -- > You received this message because you are subscribed to the Google Groups > "Protocol Buffers" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/protobuf. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Protocol Buffers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/protobuf. For more options, visit https://groups.google.com/d/optout.
