Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I compare the contents of two Google Protocol Buffer messages for equality?

I can't seem to find a comparison method in the API. I have these two messages, and they have a lot of different values that sometimes drill down to more values (for example, I have a Message that has a string, an int, and a custom_snapshot, where custom_snapshot is comprised of an int, a string, and so on). I want to see if these two messages are the same. I don't want to compare each value one by one since that will take a while, so I was wondering if there was a quick way to do this in Python?

I tried doing messageA.debugString() == messageB.debugString(), but apparently there is no debugString method that I could access when I tried.

like image 547
user2253332 Avatar asked Jun 18 '14 22:06

user2253332


1 Answers

protocol buffers have a method SerializeToString(daterministic=True)

Use it to compare your messages.

like image 58
Jan Vlcinsky Avatar answered Oct 02 '22 14:10

Jan Vlcinsky