On 05/26/2011 10:10 PM, Yang wrote: > I guess the schema resolution is done only on input params, and not on > return value?
The same resolution should be done on return values. For example, changing the return value from one record to another would not work (unless you used aliases) but adding or removing fields from a returned record type should work. > incidentally, I found that if I keep the name of an enum type , but > add new enum values to it (at the end of the value list), and then use > the enum type as the return > type of my RPC call, it still works, although strictly speaking, the > enum type has already changed. but this is probably quite a dangerous > hack. That should not be dangerous. Avro translates enum values so that adding & removing symbols is permitted. As long as the reader's schema still has the symbol that the writer sends things should work. Doug
