[GitHub] flink issue #5995: [FLINK-9337] Implemented AvroDeserializationSchema

2018-07-01 Thread cricket007
Github user cricket007 commented on the issue:

https://github.com/apache/flink/pull/5995
  
What about implementing a `KeyedDeserializationSchema` for Avro?


---


[GitHub] flink issue #5995: [FLINK-9337] Implemented AvroDeserializationSchema

2018-05-23 Thread StephanEwen
Github user StephanEwen commented on the issue:

https://github.com/apache/flink/pull/5995
  
Looks good, thanks!

+1 to merge this


---


[GitHub] flink issue #5995: [FLINK-9337] Implemented AvroDeserializationSchema

2018-05-22 Thread dawidwys
Github user dawidwys commented on the issue:

https://github.com/apache/flink/pull/5995
  
I've addressed your comments @StephanEwen . If you don't have any more, I 
will merge it today.


---


[GitHub] flink issue #5995: [FLINK-9337] Implemented AvroDeserializationSchema

2018-05-18 Thread StephanEwen
Github user StephanEwen commented on the issue:

https://github.com/apache/flink/pull/5995
  
Added a few more comment, most importantly around exception wrapping.
Otherwise, looking good...


---


[GitHub] flink issue #5995: [FLINK-9337] Implemented AvroDeserializationSchema

2018-05-18 Thread dawidwys
Github user dawidwys commented on the issue:

https://github.com/apache/flink/pull/5995
  
@StephanEwen could you have another look?


---


[GitHub] flink issue #5995: [FLINK-9337] Implemented AvroDeserializationSchema

2018-05-16 Thread StephanEwen
Github user StephanEwen commented on the issue:

https://github.com/apache/flink/pull/5995
  
I would actually keep the package name for now. It makes sense, because the 
connection to the registry is avro-specific at the moment...


---


[GitHub] flink issue #5995: [FLINK-9337] Implemented AvroDeserializationSchema

2018-05-15 Thread dawidwys
Github user dawidwys commented on the issue:

https://github.com/apache/flink/pull/5995
  
Also as for the package name or place where to put it, I don't feel 
competent to suggest a place, therefore will be happy to apply your suggestion.


---


[GitHub] flink issue #5995: [FLINK-9337] Implemented AvroDeserializationSchema

2018-05-15 Thread dawidwys
Github user dawidwys commented on the issue:

https://github.com/apache/flink/pull/5995
  
As for the snapshot binary data, I do understand that it should be created 
with appropriate flink version (in this case in theory with flink 1.3) and I've 
tried really hard to do so until I found out that this test is incompatible 
with 1.3 and the data could not be generated with flink 1.3 Later found out the 
comment to the test class that also states so: 

> Important: Since Avro itself broke class compatibility between 
1.7.7 (used in Flink 1.3) 

> * and 1.8.2 (used in Flink 1.4), the Avro by Pojo compatibility is broken 
through Avro already.
> * This test only tests that the Avro serializer change (switching from 
Pojo to Avro for Avro types)
> * works properly.

Also the commented code does not compile with flink 1.3(but this is a minor 
thing)

Data serialized with version of avro used in flink 1.3 (1.7.7) is not 
binary compatible with avro 1.8.2 (in flink 1.4+), due to changes how 
SpecificFixed is constructed.

Therefore how I regenerated this snapshot data is that I run the commented 
code on current branch. That is why I also changed few descriptions to that 
test as it test compatibility of `PojoSerializer` with `AvroSerializer` rather 
than binary backwards compatibility. 

Nevertheless I am more than happy to hear any comments on that. 


---


[GitHub] flink issue #5995: [FLINK-9337] Implemented AvroDeserializationSchema

2018-05-14 Thread dawidwys
Github user dawidwys commented on the issue:

https://github.com/apache/flink/pull/5995
  
Right sorry for that. I've changed the data generator a bit, so it produced 
different results than before with the same seed. I've recreated the serialized 
data with updated `TestDataGenerator`. It took me a while though to figure out 
that it should be created with current code rather than 1.3 branch. Therefore I 
updated the comment accordingly.

Also reworded a bit other names as the 
`BackwardsCompatibleAvroSerializerTest` does not test compatibility with 1.3, 
but only with `PojoSerializer`.


---


[GitHub] flink issue #5995: [FLINK-9337] Implemented AvroDeserializationSchema

2018-05-14 Thread StephanEwen
Github user StephanEwen commented on the issue:

https://github.com/apache/flink/pull/5995
  
Thanks, the main code looks good!

Unfortunately, this seems to wither break the compatibility with prior 
savepoints (when Avro types were implicitly handled through Kryo, now bridged 
through the `BackwarsCompatibleAvroSerializer`) or needs to adjust that test.

There are also some license header issues, causing the build to fail.


---