[ 
https://issues.apache.org/jira/browse/BEAM-9502?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anonymous updated BEAM-9502:
----------------------------
    Status: Triage Needed  (was: Resolved)

> SchemaCoder is not update compatible
> ------------------------------------
>
>                 Key: BEAM-9502
>                 URL: https://issues.apache.org/jira/browse/BEAM-9502
>             Project: Beam
>          Issue Type: Bug
>          Components: runner-dataflow, sdk-java-core
>            Reporter: Yaron Neuman
>            Priority: P3
>              Labels: Clarified, stale-assigned
>             Fix For: Not applicable
>
>          Time Spent: 2h
>  Remaining Estimate: 0h
>
> See relevant [dev@ 
> discussion|https://lists.apache.org/thread.html/r720682624251222c2f3140c785463c0ddfdd782fc88d5d2a48a464c7%40%3Cdev.beam.apache.org%3E].
>  Runners should consider schemas compatible if they have the same fields in 
> the same order. They should also get the ability to re-order fields in 
> equivalent schemas (same fields, possibly out of order) using the 
> encoding_position field (BEAM-10277).
> Original Description:
> h2. SchemaCoder assigns random UUID, causes Dataflow's compatibility check to 
> fail
> After fe4b7794, _Schema.equals_ comparing only the UUIDs for faster 
> comparison.
>  After 0b3b18c6 _SchemaCoder_ forcing random UUID when schema.uuid is null.
> thus, when trying to update (--update) a Dataflow job with row schemas in 
> user-code, the compatibility check will fail because SchemaCoder produce 
> another random UUID.
>  
> The user can set the UUID after creating the Schema, but not with 
> Schema.Builder
>  and I'm afraid most users, that are not aware to the internal 
> implementation, won't do that.
>  
> In my branch, I added _.withUUID_ and _.withRandomUUID_ to _Schema.Builder_
> But I think a better solution will be to calculate the UUID based on the 
> schema itself.
> any thoughts?
> [~reuvenlax]
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to