You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by "BewareMyPower (via GitHub)" <gi...@apache.org> on 2023/03/29 14:19:21 UTC

[GitHub] [pulsar] BewareMyPower commented on pull request #12232: [Python] Do not sort schema fields by default

BewareMyPower commented on PR #12232:
URL: https://github.com/apache/pulsar/pull/12232#issuecomment-1488717054

   This PR actually leads to an incompatibility between the Java client and the Python client. See the issue [here](https://github.com/apache/pulsar-client-python/issues/108) and the discussion in the mail list: https://lists.apache.org/thread/wl5rws7m0gqxc9n512llnpzf7kq5sp0j
   
   In short, to be compatible with the POJO like:
   
   ```java
   i.e. given the following Java class:
   
   ```java
   class User {
       String name;
       int age;
       double score;
   }
   ```
   
   We have to give the following definition in Python:
   
   ```python
   class User(Record):
       _sorted_fields = True
       name = String()
       age = Integer(required=True)
       score = Double(required=True)
   ```
   
   The default values are not compatible with the Java client so I suggest changing these default values. Please continue the discussion in the mail list of you have any objection.
   
   /cc @merlimat @gaoran10 @congbobo184 @codelipenghui @eolivelli @hangc0276 @mattisonchao 
   
   (BTW, these Python options are not documented well and I found the solution by reading the source code)


-- 
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: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org