You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Brachi Packter (Jira)" <ji...@apache.org> on 2022/01/12 10:28:00 UTC

[jira] [Created] (BEAM-13640) Add MetadataDynamicCoder to support encode-decode for new fields in Metatdata

Brachi Packter created BEAM-13640:
-------------------------------------

             Summary: Add MetadataDynamicCoder to support encode-decode for new fields in Metatdata
                 Key: BEAM-13640
                 URL: https://issues.apache.org/jira/browse/BEAM-13640
             Project: Beam
          Issue Type: Improvement
          Components: sdk-java-core
            Reporter: Brachi Packter


This Issue is to solve similar problems to wha I had in [BEAM-12883.|https://issues.apache.org/jira/browse/BEAM-12883?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel]

Currently there are 2 Coders for Metadata: default one: org.apache.beam.sdk.io.fs.MetadataCoder and enhanced one org.apache.beam.sdk.io.fs.MetadataCoderV2, the last can also decode-encode lastModifiedMillis and it is done in a new coder in order to support backward compatibility.

This will be hard to maintain, we will need to create a new coder for any new field that will be added to Metadata.

So, as suggested in this [comment: #15510|https://github.com/apache/beam/pull/15510#issuecomment-928390587], we need to have some new generic coder : MetadataDynamicCoder.

MetadataDynamicCoder can decode/encode any new fields added to Metadata by sending getter, setter and coder.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)