Adam, the new deserealized object doesn't contain ANY data which was in 
original object instance.

To put it simple 
1) we have obj
2) we make a string obj.SerializetoString ( & body)
3) We parse the string into new object : newobj.ParseFromString ( body). 
4) I expect obj == newobj. But it isn't so. newobj is not equal to obj ( in 
terms of content - field value)

Thanks,
Boris


On Wednesday, May 29, 2019 at 1:41:48 PM UTC-4, Adam Cozzette wrote:
>
> Hmm, that makes me think perhaps everything is working then. What is 
> different about the messages in a way that you didn't expect?
>
> On Wed, May 29, 2019 at 10:37 AM Boris Pitel <[email protected] 
> <javascript:>> wrote:
>
>> 89. The same as original object.
>> It is strange. Isn't it?
>>
>>
>>
>> On Wednesday, May 29, 2019 at 1:12:35 PM UTC-4, Adam Cozzette wrote:
>>>
>>> What's the value of pnewObj->_objectSetType.ByteSizeLong() after the 
>>> parse?
>>>
>>> On Wed, May 29, 2019 at 10:01 AM Boris Pitel <[email protected]> wrote:
>>>
>>>> Thank you, Adam!
>>>> Yes, both returns values are true, and size is very reasonable - 89. 
>>>> Any other ideas? :(
>>>> -Boris
>>>>
>>>>
>>>> On Wednesday, May 29, 2019 at 12:57:49 PM UTC-4, Adam Cozzette wrote:
>>>>>
>>>>> So after parsing, the message is just empty? The first thing I would 
>>>>> do is double-check that SerializeToString() and ParseFromString() are 
>>>>> returning true and also verify that the length of the serialized string 
>>>>> is 
>>>>> reasonable.
>>>>>
>>>>> On Wed, May 29, 2019 at 9:48 AM Boris Pitel <[email protected]> 
>>>>> wrote:
>>>>>
>>>>>> Ok, let me explain. I have a class let's call it PriceTicObjectSet. 
>>>>>> This class is a wrapper around protobuf class. This PriceTicObjectSet 
>>>>>> has 
>>>>>> member variables which are directly point to protobuf class variables - 
>>>>>> just setters and getters. Function toString is for convenience only, all 
>>>>>> it 
>>>>>> does it is dumps the content of  the instance of PriceTicObjectSet. Its 
>>>>>> implementation is like :
>>>>>> .....
>>>>>> if ( name_internal != NULL ) toReturn += ("name=" + 
>>>>>> name_internal->value() );
>>>>>> ....
>>>>>>
>>>>>> in other words toString() is just not essential here. We could just 
>>>>>> use debugger and see that after ParseFromString the object doesn't 
>>>>>> change 
>>>>>> at all.
>>>>>>
>>>>>> Sorry for not being clear.
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> -Boris
>>>>>>
>>>>>>
>>>>>> On Wednesday, May 29, 2019 at 12:15:02 PM UTC-4, Adam Cozzette wrote:
>>>>>>>
>>>>>>> Could you provide some more details on what that function does and 
>>>>>>> what its outputting? Without that it is hard to know what the problem 
>>>>>>> is.
>>>>>>>
>>>>>>> On Wed, May 29, 2019 at 8:04 AM Boris Pitel <[email protected]> 
>>>>>>> wrote:
>>>>>>>
>>>>>>>> toString is just a function which dumps the object 
>>>>>>>> ( PriceTicObjectSet ) - PriceTicObjectSet is just a very thin wrapper 
>>>>>>>> around protobuf class. I use toString to see the content of the 
>>>>>>>> message.
>>>>>>>>
>>>>>>>> -Boris
>>>>>>>>
>>>>>>>> On Wednesday, May 29, 2019 at 10:40:02 AM UTC-4, Adam Cozzette 
>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> What does your toString() function do?
>>>>>>>>>
>>>>>>>>> On Wed, May 29, 2019 at 7:32 AM Boris Pitel <[email protected]> 
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Hello team,
>>>>>>>>>> I am new to C++ protobuf. library.
>>>>>>>>>> I experience following difficulty.
>>>>>>>>>> I have an pObj, i serialize it using SerializeToString, then as a 
>>>>>>>>>> test i try to deserialize the string using ParseFromString. I expect 
>>>>>>>>>> that 
>>>>>>>>>> after deserialization the object will contain the same data as 
>>>>>>>>>> original 
>>>>>>>>>> pObj. It doesn't happen. The new object contains nulls. The 
>>>>>>>>>> ParseFromString 
>>>>>>>>>> return true. Here is the pseudo-code:
>>>>>>>>>>
>>>>>>>>>> string body;
>>>>>>>>>> int n1 = pObj->_objectSetType.ByteSizeLong();
>>>>>>>>>> result = pObj->_objectSetType.SerializeToString(&body);
>>>>>>>>>> PriceTicObjectSet* pnewObj = new PriceTicObjectSet;
>>>>>>>>>> result = pnewObj->_objectSetType.ParseFromString(body);
>>>>>>>>>>
>>>>>>>>>> string dump1 = toString(pObj);
>>>>>>>>>> printf("Dump1:\n%s\n", dump1.c_str());
>>>>>>>>>> string dump2 = toString(pnewObj);
>>>>>>>>>> printf("Dump2:\n%s\n", dump2.c_str());
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Again, I expect that after deserialization objects pObj and 
>>>>>>>>>> pnewObj contain same data. 
>>>>>>>>>> This issue puzzles me and it is really important to solve it.
>>>>>>>>>>
>>>>>>>>>> Please can somebody help me - probably I am doing something wrong.
>>>>>>>>>>
>>>>>>>>>> Thank you 
>>>>>>>>>>
>>>>>>>>>> Boris Pitel
>>>>>>>>>>
>>>>>>>>>> -- 
>>>>>>>>>> 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.
>>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>> https://groups.google.com/d/msgid/protobuf/dfae067f-71ec-4550-b18e-aa8aabab0af2%40googlegroups.com
>>>>>>>>>>  
>>>>>>>>>> <https://groups.google.com/d/msgid/protobuf/dfae067f-71ec-4550-b18e-aa8aabab0af2%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>>>> .
>>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>> On Wednesday, May 29, 2019 at 10:40:02 AM UTC-4, Adam Cozzette 
>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> What does your toString() function do?
>>>>>>>>>
>>>>>>>>> On Wed, May 29, 2019 at 7:32 AM Boris Pitel <[email protected]> 
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Hello team,
>>>>>>>>>> I am new to C++ protobuf. library.
>>>>>>>>>> I experience following difficulty.
>>>>>>>>>> I have an pObj, i serialize it using SerializeToString, then as a 
>>>>>>>>>> test i try to deserialize the string using ParseFromString. I expect 
>>>>>>>>>> that 
>>>>>>>>>> after deserialization the object will contain the same data as 
>>>>>>>>>> original 
>>>>>>>>>> pObj. It doesn't happen. The new object contains nulls. The 
>>>>>>>>>> ParseFromString 
>>>>>>>>>> return true. Here is the pseudo-code:
>>>>>>>>>>
>>>>>>>>>> string body;
>>>>>>>>>> int n1 = pObj->_objectSetType.ByteSizeLong();
>>>>>>>>>> result = pObj->_objectSetType.SerializeToString(&body);
>>>>>>>>>> PriceTicObjectSet* pnewObj = new PriceTicObjectSet;
>>>>>>>>>> result = pnewObj->_objectSetType.ParseFromString(body);
>>>>>>>>>>
>>>>>>>>>> string dump1 = toString(pObj);
>>>>>>>>>> printf("Dump1:\n%s\n", dump1.c_str());
>>>>>>>>>> string dump2 = toString(pnewObj);
>>>>>>>>>> printf("Dump2:\n%s\n", dump2.c_str());
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Again, I expect that after deserialization objects pObj and 
>>>>>>>>>> pnewObj contain same data. 
>>>>>>>>>> This issue puzzles me and it is really important to solve it.
>>>>>>>>>>
>>>>>>>>>> Please can somebody help me - probably I am doing something wrong.
>>>>>>>>>>
>>>>>>>>>> Thank you 
>>>>>>>>>>
>>>>>>>>>> Boris Pitel
>>>>>>>>>>
>>>>>>>>>> -- 
>>>>>>>>>> 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.
>>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>> https://groups.google.com/d/msgid/protobuf/dfae067f-71ec-4550-b18e-aa8aabab0af2%40googlegroups.com
>>>>>>>>>>  
>>>>>>>>>> <https://groups.google.com/d/msgid/protobuf/dfae067f-71ec-4550-b18e-aa8aabab0af2%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>>>> .
>>>>>>>>>> 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.
>>>>>>>> To view this discussion on the web visit 
>>>>>>>> https://groups.google.com/d/msgid/protobuf/d3e71b81-66db-48d9-8cc3-640aee92919a%40googlegroups.com
>>>>>>>>  
>>>>>>>> <https://groups.google.com/d/msgid/protobuf/d3e71b81-66db-48d9-8cc3-640aee92919a%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>> .
>>>>>>>> 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.
>>>>>> To view this discussion on the web visit 
>>>>>> https://groups.google.com/d/msgid/protobuf/bb594c06-2d62-46b6-9f53-b65f26af4dd8%40googlegroups.com
>>>>>>  
>>>>>> <https://groups.google.com/d/msgid/protobuf/bb594c06-2d62-46b6-9f53-b65f26af4dd8%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>> 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.
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/protobuf/41c133de-c9f7-478c-a910-446248251197%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/protobuf/41c133de-c9f7-478c-a910-446248251197%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> 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] <javascript:>.
>> To post to this group, send email to [email protected] 
>> <javascript:>.
>> Visit this group at https://groups.google.com/group/protobuf.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/protobuf/32df94fb-c76d-4916-bbe2-9ef70bb06ae8%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/protobuf/32df94fb-c76d-4916-bbe2-9ef70bb06ae8%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>> 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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/protobuf/0375fb61-963a-4127-bb8a-c44ba6237ffa%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to