ganeshashree commented on PR #58034:
URL: https://github.com/apache/spark/pull/58034#issuecomment-5311056322

   > **Note: depends on and overlaps with #58005 ([SPARK-58730] JSON_ARRAY).**
   >
   > This PR is a sibling of the `JSON_ARRAY` constructor PR (#58005) and 
shares the common SQL/JSON-constructor scaffolding that #58005 introduces 
first. It is currently branched from `master` independently, so **it will need 
to be rebased once #58005 is merged**; the shared pieces below should then 
collapse to what #58005 already landed, leaving this PR with only the 
`JSON_OBJECT`-specific additions.
   >
   > Changes common to both PRs (expect conflicts / dedup on rebase):
   >
   > - **`ABSENT` non-reserved keyword** — added in `SqlBaseLexer.g4` and the 
`nonReserved` list in `SqlBaseParser.g4`, plus regenerated `keywords.sql.out`, 
`keywords-enforced.sql.out`, and `nonansi/keywords.sql.out`.
   > - **Shared grammar productions** for the `{ NULL | ABSENT } ON NULL` and 
`RETURNING` clauses in `SqlBaseParser.g4`.
   > - **Shared Catalyst scaffolding** in `jsonExpressions.scala`: 
`JsonConstructorNullBehavior` (the `(NULL | ABSENT) ON NULL` behavior, named 
generically) and the `ImplicitlyFormattedAsJson` trait (nested-constructor / 
FORMAT JSON splicing).
   > - **Collation handling** for the `RETURNING` type in 
`ApplyDefaultCollation.scala` and `DefaultCollationTypeCoercion.scala`.
   > - **Doc index entries** in `sql-ref-syntax.md`, 
`sql-ref-syntax-qry-select.md`, and `sql-ref-ansi-compliance.md`.
   > - **Keyword-count assertions** in 
`SparkConnectDatabaseMetaDataSuite.scala` and 
`ThriftServerWithSparkContextSuite.scala` (each PR bumps the count by one; 
after both land the delta is two).
   > - Overlapping error conditions (e.g. `INVALID_JSON_RETURNING_TYPE`) in 
`error-conditions.json` and `QueryExecutionErrors.scala`.
   >
   > Whichever of #58005 / this PR merges second should drop the duplicated 
scaffolding and keep only its constructor-specific expression, parser rule, 
docs page, and tests.


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to