Yicong-Huang opened a new issue, #4815:
URL: https://github.com/apache/texera/issues/4815

   ### What happened?
   
   
`common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/source/fetcher/URLFetcherOpDesc.scala`
 declares `var decodingMethod: DecodingMethod = _`, which defaults to `null`. 
`sourceSchema` then asks `if (decodingMethod == DecodingMethod.UTF_8) STRING 
else ANY`, so a `null` `decodingMethod` silently produces an `ANY` column 
instead of failing with a clear error.
   
   The descriptor marks `decodingMethod` `required = true` for the JSON schema, 
but no runtime guard enforces non-null at `sourceSchema` time. The result is a 
hidden default that can silently cast all output to `ANY` if the field never 
gets populated.
   
   ### How to reproduce?
   
   ```scala
   import org.apache.texera.amber.operator.source.fetcher.URLFetcherOpDesc
   import org.apache.texera.amber.core.tuple.AttributeType
   
   val op = new URLFetcherOpDesc
   op.url = "https://example.test/data";
   op.sourceSchema().getAttributes.head.getType
   // AttributeType.ANY — but the user never supplied a decoding method.
   ```
   
   ### Version
   
   1.1.0-incubating (Pre-release/Master)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to