Are you sure that the data you are sending to the parser is exactly the same data that was generated by the serializer? Remember that protocol buffers are not self-delimiting, so you need to make sure that you limit the input to the exact number of bytes that were produced when serializing. If the data is exactly the same, then this is a bug. If you can create a small program or pair of programs that demonstrate the problem, I would be happy to debug it.
On Mon, Oct 13, 2008 at 10:09 AM, Dominik Steenken <[EMAIL PROTECTED]> wrote: > > Hi everyone, > > we are currrently implementing a server/client system, the server > being implemented in c++, the client in java. During our last rounds > of tests, we encountered a problem that had to do with the sending of > (not so) long messages. on the (receiving) java side, we get the > following exception: > Exception in augnet.client.aim.connection.Receiver, Parse error: > com.google.protobuf.InvalidProtocolBufferException: Protocol message > contained an invalid tag (zero). > com.google.protobuf.InvalidProtocolBufferException: Protocol message > contained an invalid tag (zero). > at > > com.google.protobuf.InvalidProtocolBufferException.invalidTag(InvalidProtocolBufferException.java: > 52) > at > com.google.protobuf.CodedInputStream.readTag(CodedInputStream.java: > 67) > at com.google.protobuf.FieldSet.mergeFrom(FieldSet.java:397) > at com.google.protobuf.AbstractMessage > $Builder.mergeFrom(AbstractMessage.java:248) > at com.google.protobuf.GeneratedMessage > $Builder.mergeFrom(GeneratedMessage.java:1) > at > com.google.protobuf.CodedInputStream.readMessage(CodedInputStream.java: > 227) > at com.google.protobuf.FieldSet.mergeFieldFrom(FieldSet.java:482) > at com.google.protobuf.FieldSet.mergeFrom(FieldSet.java:402) > at com.google.protobuf.AbstractMessage > $Builder.mergeFrom(AbstractMessage.java:248) > at com.google.protobuf.GeneratedMessage > $Builder.mergeFrom(GeneratedMessage.java:1) > at > com.google.protobuf.CodedInputStream.readMessage(CodedInputStream.java: > 227) > at com.google.protobuf.FieldSet.mergeFieldFrom(FieldSet.java:482) > at com.google.protobuf.FieldSet.mergeFrom(FieldSet.java:402) > at com.google.protobuf.AbstractMessage > $Builder.mergeFrom(AbstractMessage.java:248) > at com.google.protobuf.AbstractMessage > $Builder.mergeFrom(AbstractMessage.java:240) > at com.google.protobuf.AbstractMessage > $Builder.mergeFrom(AbstractMessage.java:298) > at augnet.client.aim.messages.MessageProtos > $AugNetMessage.parseFrom(MessageProtos.java:6289) > at augnet.client.aim.connection.Receiver.run(Receiver.java:47) > > while the (sending) c++ side encounters no errors. When we scale down > the message, no error occurs. Is this a bug in protobuf or are we > doing something wrong? > > Best regards, > Dominik > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Protocol Buffers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/protobuf?hl=en -~----------~----~----~----~------~----~------~--~---
