jiangpengcheng commented on issue #21539:
URL: https://github.com/apache/pulsar/issues/21539#issuecomment-1809535664

   The `typeClassName` should be the same for multiple input topics since there 
will be only one process function and the `typeClassName` is the **type** of 
the **params**, like:
   
   ```
   def process(params):
     params.age = params.age + 1
     return params
   ```
   
   Or else this `process` method will get a `EasySchema` or `EasySchema2` type 
parameter.
   
   Although Python doesn't have a type validation, the **params** can be any 
type, and users can write code to process different types, but for Java and 
Golang, the **params**'s type is checked, it should only have one value.
   
   And the structure is defined in the `Function.proto` file, which is used for 
Java, Python, and Golang:
   
   ```
   message SourceSpec {
       string className = 1;
       // map in json format
       string configs = 2;
       string typeClassName = 5;
   ...
   }
   ```
   
   So we cannot define the `typeClassName` in the `inputSpecs`
   
   


-- 
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