Hi Xuannan,
thank you for updating the FLIP and addressing my comments. The FLIP is
in a very good shape now, +1 for voting. I just found some last
remaining items that would be good to be addressed in the FLIP. But not
blocker for the voting process:
> isScalar()
I thought about the naming again. I would rather vote for
`isPrimitive()`. Our ScalarFunctions are also able to take and return
arrays and maps. An `isPrimitive()` should avoid this confusion.
> VariantUnexpectedTypeException
Rather call it VariantTypeException? Shorter is better. Otherwise a
UnexpectedVariantTypeException would read better. But a general
VariantTypeException should be good enough.
> I cannot figure out how it can work with the current JSON_OBJECT and
JSON_ARRAY functions
We left the return type of JSON() open to future work. JSON() can only
be used directly as parameters for values in JSON_OBJECT and JSON_ARRAY,
because we didn't have a JSON type so far. So JSON() can return a
VARIANT type that is directly understood by JSON_OBJECT and JSON_ARRAY
functions.
I'm fine with PARSE_JSON as well, but we should double check the
semantics with JSON() to avoid any kind of confusion.
> Therefore, instead of going for a non-trivial temporary solution
> that will be removed later, we are better off justbumping the
> Calcite version, which is inevitable.
Great to hear that we aim to update Calcite. Happy to support reviewing
PRs that bump Calcite versions. I'm sure Sergey can help here as well.
We should try to perform this update in stages to avoid introducing
regressions.
> Only a scalar value Variant is allowed to be cast to the
> corresponding type
Can you elaborate on this? It could be quite useful for the Table API
integration if we could supporting casting to STRUCTURED types and thus
POJOs in the future. This doesn't have to be supported in version 1 but
could be useful. For rows and structured types, we support nested
casting when calling functions.
Looking forward to this feature!
Regards,
Timo
On 03.05.25 01:32, Xuannan Su wrote:
Hi everyone,
Thank you for all the comments! Please let me know if you have further
comments. If there are no further comments, I'd
like to close the discussion and start the voting in a few days.
Best,
Xuannan
On Thu, May 1, 2025 at 20:21 Xuannan Su <suxuanna...@gmail.com> wrote:
Hi Aihua,
We planning to support Variant shredding soon after we support the
basis variant encoding as stated in the Future Work section of the
FLIP.
Best,
Xuannan
On Thu, May 1, 2025 at 1:43 PM Aihua Xu <aihu...@apache.org> wrote:
Hi Xuannan,
Are we planning to support Variant shredding in the future or just basic
variant encoding for Flink?
Thanks,
Aihua