|
|
-
Upgrade usage of DecoderFactory with upgrade from Avro 1.3.3 --> 1.6.2Lewis John Mcgibbney 2012-02-24, 23:38
Hi List,
I've embarked upon upgrading the Avro (and subsequently Hadoop) libraries in Apache Gora to 1.6.2 and 1.0.0 respectively and have run into a small (one of many) question. Use of DecoderFactory().configureDirectDecoder(boolean) is now deprecated [0], so I am looking for advice on how to configure the direct decoder accordingly, to achieve the same results as explained below. I was thinking of implementing decoder = new DecoderFactory().binaryDecoder(in, decoder), however is this suitable/satisfactory? If so can someone please explain why this is the case and how functionality has been retained even after removing the configuration for the DirectDecoder? Thank you in advance for any suggestions. Lewis @Override public void open(InputStream in) throws IOException { /* It is very important to use a direct buffer, since Hadoop * supplies an input stream that is only valid until the end of one * record serialization. Each time deserialize() is called, the IS * is advanced to point to the right location, so we should not * buffer the whole input stream at once. */ decoder = new DecoderFactory().configureDirectDecoder(true) .createBinaryDecoder(in, decoder); } [0] http://avro.apache.org/docs/1.6.2/api/java/org/apache/avro/io/DecoderFactory.html -- *Lewis* |