Re: [protobuf] incompatible type changes philosophy

2012-05-10 Thread Evan Jones
On May 9, 2012, at 15:26 , Jeremy Stribling wrote: * There are two nodes, 1 and 2, running version A of the software. * They exchange messages containing protobuf P, which contains a string field F. * We write a new version B of the software, which changes field F to an integer as an

Re: [protobuf] incompatible type changes philosophy

2012-05-10 Thread Jeremy Stribling
On 05/10/2012 07:52 AM, Evan Jones wrote: On May 9, 2012, at 15:26 , Jeremy Stribling wrote: * There are two nodes, 1 and 2, running version A of the software. * They exchange messages containing protobuf P, which contains a string field F. * We write a new version B of the software, which

Re: [protobuf] incompatible type changes philosophy

2012-05-09 Thread Oliver Jowett
On Wed, May 9, 2012 at 12:42 AM, Jeremy Stribling st...@nicira.com wrote: I'm wondering if anyone has experience with a scenario like this, and if there's a more elegant way to solve it. We do something a bit similar by advertising capabilities during a handshake at the start of each

Re: [protobuf] incompatible type changes philosophy

2012-05-09 Thread Evan Jones
On May 8, 2012, at 21:26 , Jeremy Stribling wrote: Thanks for the response. As you say, this solution is painful because you can't enable the optimization until the old version of the program is completely deprecated. This is somewhat simple in the case that you yourself are deploying the

Re: [protobuf] incompatible type changes philosophy

2012-05-09 Thread Jeremy Stribling
On 05/09/2012 04:41 AM, Evan Jones wrote: On May 8, 2012, at 21:26 , Jeremy Stribling wrote: Thanks for the response. As you say, this solution is painful because you can't enable the optimization until the old version of the program is completely deprecated. This is somewhat simple in the

[protobuf] incompatible type changes philosophy

2012-05-08 Thread Jeremy Stribling
I'm working on a project to upgrade- and downgrade-proof a distributed system that uses protobufs to communicate data between instances of a C ++ program. I'm trying to cover all possible cases for data schema changes between versions of my programs, and I was hoping to get some insight from the

Re: [protobuf] incompatible type changes philosophy

2012-05-08 Thread Daniel Wright
On Tue, May 8, 2012 at 4:42 PM, Jeremy Stribling st...@nicira.com wrote: I'm working on a project to upgrade- and downgrade-proof a distributed system that uses protobufs to communicate data between instances of a C ++ program. I'm trying to cover all possible cases for data schema changes

Re: [protobuf] incompatible type changes philosophy

2012-05-08 Thread Jeremy Stribling
On 05/08/2012 06:04 PM, Daniel Wright wrote: On Tue, May 8, 2012 at 4:42 PM, Jeremy Stribling st...@nicira.com mailto:st...@nicira.com wrote: I'm working on a project to upgrade- and downgrade-proof a distributed system that uses protobufs to communicate data between instances of