[FLINK-40390][table] Optimised JSON_LENGTH codegen - #28978
Conversation
snuyanzin
left a comment
There was a problem hiding this comment.
Please do not ignore contributor's form and fill it properly
|
your problem is that now everything is commented since you have NOT closed markdown comment started with |
There we go, thanks Sergey. |
gustavodemorais
left a comment
There was a problem hiding this comment.
Hey @VasShabu, thanks for following up on this. JSON_LENGTH shares JSON_TYPE's codegen and validation strategy now, but not its tests - the lax/bare-field/$["strict value"] cases added to jsonTypeSpec were never mirrored into jsonLengthSpec. Could you look into extending the tests?
What do you mean specifically by bare-field, could you please clarify, I had added the other 2 cases however. At the moment i think airlock is not allowing me to push my changes, will try to resolve this |

What is the purpose of the change
This pull request alters JSON_LENGTH's codeGen to be inline with JSON_TYPE, as these 2 functions are very similar in nature its smart to ensure that the planning stage works the same way.
(For example: This pull request makes task deployment go through the blob server, rather than through RPC. That way we avoid re-transferring them on each deployment (during recovery).)
Brief change log
(for example:)
Verifying this change
Please make sure both new and modified tests in this PR follow the conventions for tests defined in our code quality guide.
(Please pick either of the following options)
This change added tests and can be verified as follows:
./mvnw -o -pl flink-table/flink-table-planner -Dtest='JsonFunctionsITCase' -Dsurefire.failIfNoSpecifiedTests=false -Dcheckstyle.skip=true -Dspotless.check.skip=true -Drat.skip=true -e -Denforcer.skip=true test
Does this pull request potentially affect one of the following parts:
@Public(Evolving): (no)Documentation
Was generative AI tooling used to co-author this PR?
Generated-by: Claude Opus 5