You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by GitBox <gi...@apache.org> on 2021/10/22 14:19:57 UTC

[GitHub] [flink] Airblader opened a new pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Airblader opened a new pull request #17549:
URL: https://github.com/apache/flink/pull/17549


   ## What is the purpose of the change
   
   This adds support for `JSON_OBJECTAGG` in SQL, Table API, and PyFlink.
   
   supersedes #11369
   
   ## Brief change log
   
   * Introduce a test base for built-in aggregate functions. This is akin to the one we have for scalar functions, but a bit more general to allow providing arbitrarily many rows of input data.
   * Implement `JSON_OBJECTAGG`. 
   
   This has been tricky at times, because for SQL the call is hard-coded into the parser, and aggregate functions are just not easy. After discussion we decided to apply a similar workaround to what Calcite does, which is actually implement two separate functions (for NULL / ABSENT ON NULL). This avoids shipping symbols across the network for each record, and also a bunch of issues in the current stack related to that, such as symbols being represented as raw types of `Enum` etc.
   
   We also add a new rule here which wraps arguments of `JSON_OBJECTAGG` (and soon `JSON_ARRAYAGG`) into `JSON_STRING`. This tremendously simplifies the runtime implementation for the aggregation function as it only needs to deal with strings and can simply insert them as raw values.
   
   ## Verifying this change
   
   TODO
   
   ## Does this pull request potentially affect one of the following parts:
   
     - Dependencies (does it add or upgrade a dependency): (yes / no)
     - The public API, i.e., is any changed class annotated with `@Public(Evolving)`: (yes / no)
     - The serializers: (yes / no / don't know)
     - The runtime per-record code paths (performance sensitive): (yes / no / don't know)
     - Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (yes / no / don't know)
     - The S3 file system connector: (yes / no / don't know)
   
   ## Documentation
   
     - Does this pull request introduce a new feature? (yes / no)
     - If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)
   


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 580d49b0e76e16de0e520f613e3763755e312e6d UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] Airblader commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
Airblader commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r734689757



##########
File path: flink-table/flink-table-runtime/src/main/java/org/apache/flink/table/runtime/functions/SqlJsonUtils.java
##########
@@ -58,7 +61,9 @@ public static ArrayNode createArrayNode() {
     /** Serializes the given {@link JsonNode} to a JSON string. */
     public static String serializeJson(JsonNode node) {
         try {
-            return MAPPER.writeValueAsString(node);
+            // This conversion step is needed to ensure property keys are sorted.

Review comment:
       ```suggestion
               // This conversion step is needed to ensure object keys are sorted.
   ```




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   * 5ea492bfda82c87d79bf7ab6fb999f65e8c872ca UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 5ea492bfda82c87d79bf7ab6fb999f65e8c872ca Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435) 
   * 284794c4156ff18a56b3bf823882abf775d9fd36 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] twalthr closed pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
twalthr closed pull request #17549:
URL: https://github.com/apache/flink/pull/17549


   


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] twalthr removed a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
twalthr removed a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-952767489


   @flinkbot run azure


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 580d49b0e76e16de0e520f613e3763755e312e6d UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 284794c4156ff18a56b3bf823882abf775d9fd36 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] Airblader commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
Airblader commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r737143328



##########
File path: docs/data/sql_functions.yml
##########
@@ -766,6 +766,27 @@ json:
         )
       )
       ```
+  - sql: JSON_OBJECTAGG([KEY] key VALUE value [ { NULL | ABSENT } ON NULL ])
+    table: jsonObjectAgg(JsonOnNull, keyExpression, valueExpression)
+    description: |
+      Builds a JSON object string by aggregating over key-value expressions.

Review comment:
       I'll rephrase the headline.




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] Airblader commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
Airblader commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r735600154



##########
File path: flink-table/flink-table-runtime/src/main/java/org/apache/flink/table/runtime/functions/SqlJsonUtils.java
##########
@@ -58,7 +61,11 @@ public static ArrayNode createArrayNode() {
     /** Serializes the given {@link JsonNode} to a JSON string. */
     public static String serializeJson(JsonNode node) {
         try {
-            return MAPPER.writeValueAsString(node);
+            // For JSON functions to have deterministic output, we need to sort the keys. However,

Review comment:
       (See commit message for a reference)




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] Airblader commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
Airblader commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r735637141



##########
File path: flink-table/flink-table-planner/src/test/java/org/apache/flink/table/planner/functions/BuiltInAggregateFunctionTestBase.java
##########
@@ -0,0 +1,333 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.planner.functions;
+
+import org.apache.flink.runtime.testutils.MiniClusterResourceConfiguration;
+import org.apache.flink.streaming.api.functions.source.SourceFunction;
+import org.apache.flink.table.api.EnvironmentSettings;
+import org.apache.flink.table.api.Schema;
+import org.apache.flink.table.api.Table;
+import org.apache.flink.table.api.TableDescriptor;
+import org.apache.flink.table.api.TableEnvironment;
+import org.apache.flink.table.api.TableResult;
+import org.apache.flink.table.connector.ChangelogMode;
+import org.apache.flink.table.connector.source.DynamicTableSource;
+import org.apache.flink.table.connector.source.SourceFunctionProvider;
+import org.apache.flink.table.data.RowData;
+import org.apache.flink.table.functions.BuiltInFunctionDefinition;
+import org.apache.flink.table.planner.factories.TableFactoryHarness;
+import org.apache.flink.table.types.DataType;
+import org.apache.flink.test.util.MiniClusterWithClientResource;
+import org.apache.flink.types.Row;
+import org.apache.flink.types.RowKind;
+import org.apache.flink.util.CloseableIterator;
+import org.apache.flink.util.Preconditions;
+
+import org.junit.ClassRule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.junit.runners.Parameterized.Parameter;
+
+import javax.annotation.Nullable;
+
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.List;
+import java.util.Objects;
+import java.util.Set;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+import static org.apache.flink.table.types.DataType.getFieldCount;
+import static org.apache.flink.table.types.DataType.getFieldDataTypes;
+import static org.junit.Assert.assertEquals;
+
+/** Test base for testing aggregate {@link BuiltInFunctionDefinition built-in functions}. */
+@RunWith(Parameterized.class)
+public class BuiltInAggregateFunctionTestBase {
+
+    @ClassRule
+    public static MiniClusterWithClientResource miniClusterResource =
+            new MiniClusterWithClientResource(
+                    new MiniClusterResourceConfiguration.Builder()
+                            .setNumberTaskManagers(1)
+                            .setNumberSlotsPerTaskManager(1)
+                            .build());
+
+    @Parameter public TestSpec testSpec;
+
+    protected EnvironmentSettings getEnvironmentSettings() {
+        return EnvironmentSettings.inStreamingMode();
+    }
+
+    @Test
+    public void testFunction() throws Exception {
+        final TableEnvironment tEnv = TableEnvironment.create(getEnvironmentSettings());
+        final Table sourceTable = asTable(tEnv, testSpec.sourceRowType, testSpec.sourceRows);
+
+        for (final TestItem testItem : testSpec.testItems) {
+            testItem.execute(tEnv, sourceTable);
+        }
+    }
+
+    protected static Table asTable(TableEnvironment tEnv, DataType sourceRowType, List<Row> rows) {
+        final TableDescriptor descriptor =
+                TableFactoryHarness.newBuilder()
+                        .schema(Schema.newBuilder().fromRowDataType(sourceRowType).build())
+                        .source(asSource(rows, sourceRowType))
+                        .build();
+
+        return tEnv.from(descriptor);
+    }
+
+    protected static TableFactoryHarness.ScanSourceBase asSource(
+            List<Row> rows, DataType producedDataType) {
+        return new TableFactoryHarness.ScanSourceBase() {
+            @Override
+            public ChangelogMode getChangelogMode() {
+                final Set<RowKind> rowKinds =
+                        rows.stream().map(Row::getKind).collect(Collectors.toSet());
+                if (rowKinds.size() == 1 && rowKinds.contains(RowKind.INSERT)) {
+                    return ChangelogMode.insertOnly();
+                }
+
+                return ChangelogMode.all();
+            }
+
+            @Override
+            public ScanRuntimeProvider getScanRuntimeProvider(ScanContext context) {
+                final DataStructureConverter converter =
+                        context.createDataStructureConverter(producedDataType);
+
+                return SourceFunctionProvider.of(new Source(rows, converter), true);
+            }
+        };
+    }
+
+    protected static void assertRows(List<Row> expectedRows, TableResult tableResult) {
+        final List<Row> actualRows =
+                materializeResult(tableResult).stream()
+                        .sorted(Comparator.comparing(Objects::toString))
+                        .collect(Collectors.toList());
+        final List<Row> sortedExpectedRows =
+                expectedRows.stream()
+                        .sorted(Comparator.comparing(Objects::toString))
+                        .collect(Collectors.toList());
+
+        assertEquals(
+                String.format("%n%nExpected:%n%s%n%nActual:%n%s", sortedExpectedRows, actualRows),
+                sortedExpectedRows,
+                actualRows);
+    }
+
+    private static List<Row> materializeResult(TableResult tableResult) {
+        try (final CloseableIterator<Row> iterator = tableResult.collect()) {
+            final List<Row> actualRows = new ArrayList<>();
+            iterator.forEachRemaining(
+                    row -> {
+                        final RowKind kind = row.getKind();
+                        switch (kind) {
+                            case INSERT:
+                            case UPDATE_AFTER:
+                                row.setKind(RowKind.INSERT);
+                                actualRows.add(row);
+                                break;
+                            case UPDATE_BEFORE:
+                            case DELETE:
+                                row.setKind(RowKind.INSERT);
+                                actualRows.remove(row);
+                                break;
+                        }
+                    });
+
+            return actualRows;
+        } catch (Exception e) {
+            throw new RuntimeException("Could not collect results", e);
+        }
+    }
+
+    // ---------------------------------------------------------------------------------------------
+
+    /** Test specification. */
+    protected static class TestSpec {
+
+        private final BuiltInFunctionDefinition definition;
+        private final List<TestItem> testItems = new ArrayList<>();
+
+        private @Nullable String description;
+
+        private DataType sourceRowType;
+        private List<Row> sourceRows;
+
+        private TestSpec(BuiltInFunctionDefinition definition) {
+            this.definition = Preconditions.checkNotNull(definition);
+        }
+
+        static TestSpec forFunction(BuiltInFunctionDefinition definition) {
+            return new TestSpec(definition);
+        }
+
+        TestSpec as(String description) {

Review comment:
       Sure, I don't feel strongly, so I renamed it.




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "952767857",
       "triggerType" : "MANUAL"
     }, {
       "hash" : "f01ab9e6209fa7aa9d525627512e8361c9b4ef83",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "f01ab9e6209fa7aa9d525627512e8361c9b4ef83",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 284794c4156ff18a56b3bf823882abf775d9fd36 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497) 
   * f01ab9e6209fa7aa9d525627512e8361c9b4ef83 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "952767857",
       "triggerType" : "MANUAL"
     }, {
       "hash" : "f01ab9e6209fa7aa9d525627512e8361c9b4ef83",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25518",
       "triggerID" : "f01ab9e6209fa7aa9d525627512e8361c9b4ef83",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * f01ab9e6209fa7aa9d525627512e8361c9b4ef83 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25518) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "CANCELED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [CANCELED](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   * 5ea492bfda82c87d79bf7ab6fb999f65e8c872ca Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "952767857",
       "triggerType" : "MANUAL"
     } ]
   }-->
   ## CI report:
   
   * 284794c4156ff18a56b3bf823882abf775d9fd36 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] twalthr commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
twalthr commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r736486321



##########
File path: flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/functions/aggfunctions/JsonObjectAggFunction.java
##########
@@ -0,0 +1,196 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.planner.functions.aggfunctions;
+
+import org.apache.flink.annotation.Internal;
+import org.apache.flink.table.api.DataTypes;
+import org.apache.flink.table.api.TableException;
+import org.apache.flink.table.api.dataview.MapView;
+import org.apache.flink.table.data.StringData;
+import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
+import org.apache.flink.table.planner.plan.rules.logical.WrapJsonAggFunctionArgumentsRule;
+import org.apache.flink.table.runtime.functions.aggregate.BuiltInAggregateFunction;
+import org.apache.flink.table.types.DataType;
+import org.apache.flink.table.types.logical.LogicalType;
+import org.apache.flink.table.types.utils.DataTypeUtils;
+
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.node.NullNode;
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.node.ObjectNode;
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.util.RawValue;
+
+import org.apache.calcite.sql.SqlJsonConstructorNullClause;
+
+import javax.annotation.Nullable;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+import static org.apache.flink.table.runtime.functions.SqlJsonUtils.createObjectNode;
+import static org.apache.flink.table.runtime.functions.SqlJsonUtils.getNodeFactory;
+import static org.apache.flink.table.runtime.functions.SqlJsonUtils.serializeJson;
+
+/**
+ * Implementation for {@link BuiltInFunctionDefinitions#JSON_OBJECTAGG_NULL_ON_NULL} / {@link
+ * BuiltInFunctionDefinitions#JSON_OBJECTAGG_ABSENT_ON_NULL}.
+ *
+ * <p>Note that this function only ever receives strings to accumulate because {@link
+ * WrapJsonAggFunctionArgumentsRule} wraps arguments into {@link
+ * BuiltInFunctionDefinitions#JSON_STRING}.
+ */
+@Internal
+public class JsonObjectAggFunction
+        extends BuiltInAggregateFunction<String, JsonObjectAggFunction.Accumulator> {
+
+    private static final long serialVersionUID = 1L;
+    private static final NullNode NULL_NODE = getNodeFactory().nullNode();
+
+    private final transient List<DataType> argumentTypes;
+    private final SqlJsonConstructorNullClause onNull;
+
+    public JsonObjectAggFunction(LogicalType[] argumentTypes, SqlJsonConstructorNullClause onNull) {

Review comment:
       also: let's make this a simple boolean flag to not have Calcite dependencies in runtime 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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 580d49b0e76e16de0e520f613e3763755e312e6d UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] twalthr commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
twalthr commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r735621787



##########
File path: flink-table/flink-table-planner/src/test/java/org/apache/flink/table/planner/functions/BuiltInAggregateFunctionTestBase.java
##########
@@ -0,0 +1,333 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.planner.functions;
+
+import org.apache.flink.runtime.testutils.MiniClusterResourceConfiguration;
+import org.apache.flink.streaming.api.functions.source.SourceFunction;
+import org.apache.flink.table.api.EnvironmentSettings;
+import org.apache.flink.table.api.Schema;
+import org.apache.flink.table.api.Table;
+import org.apache.flink.table.api.TableDescriptor;
+import org.apache.flink.table.api.TableEnvironment;
+import org.apache.flink.table.api.TableResult;
+import org.apache.flink.table.connector.ChangelogMode;
+import org.apache.flink.table.connector.source.DynamicTableSource;
+import org.apache.flink.table.connector.source.SourceFunctionProvider;
+import org.apache.flink.table.data.RowData;
+import org.apache.flink.table.functions.BuiltInFunctionDefinition;
+import org.apache.flink.table.planner.factories.TableFactoryHarness;
+import org.apache.flink.table.types.DataType;
+import org.apache.flink.test.util.MiniClusterWithClientResource;
+import org.apache.flink.types.Row;
+import org.apache.flink.types.RowKind;
+import org.apache.flink.util.CloseableIterator;
+import org.apache.flink.util.Preconditions;
+
+import org.junit.ClassRule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.junit.runners.Parameterized.Parameter;
+
+import javax.annotation.Nullable;
+
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.List;
+import java.util.Objects;
+import java.util.Set;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+import static org.apache.flink.table.types.DataType.getFieldCount;
+import static org.apache.flink.table.types.DataType.getFieldDataTypes;
+import static org.junit.Assert.assertEquals;
+
+/** Test base for testing aggregate {@link BuiltInFunctionDefinition built-in functions}. */
+@RunWith(Parameterized.class)
+public class BuiltInAggregateFunctionTestBase {
+
+    @ClassRule
+    public static MiniClusterWithClientResource miniClusterResource =
+            new MiniClusterWithClientResource(
+                    new MiniClusterResourceConfiguration.Builder()
+                            .setNumberTaskManagers(1)
+                            .setNumberSlotsPerTaskManager(1)
+                            .build());
+
+    @Parameter public TestSpec testSpec;
+
+    protected EnvironmentSettings getEnvironmentSettings() {

Review comment:
       we should not make this configurable, if we really want to make the test base more efficient in the future, we should not expose too many concepts of an `TableEnvironment`. streaming mode should be enough, no?

##########
File path: flink-table/flink-table-planner/src/test/java/org/apache/flink/table/planner/functions/BuiltInAggregateFunctionTestBase.java
##########
@@ -0,0 +1,333 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.planner.functions;
+
+import org.apache.flink.runtime.testutils.MiniClusterResourceConfiguration;
+import org.apache.flink.streaming.api.functions.source.SourceFunction;
+import org.apache.flink.table.api.EnvironmentSettings;
+import org.apache.flink.table.api.Schema;
+import org.apache.flink.table.api.Table;
+import org.apache.flink.table.api.TableDescriptor;
+import org.apache.flink.table.api.TableEnvironment;
+import org.apache.flink.table.api.TableResult;
+import org.apache.flink.table.connector.ChangelogMode;
+import org.apache.flink.table.connector.source.DynamicTableSource;
+import org.apache.flink.table.connector.source.SourceFunctionProvider;
+import org.apache.flink.table.data.RowData;
+import org.apache.flink.table.functions.BuiltInFunctionDefinition;
+import org.apache.flink.table.planner.factories.TableFactoryHarness;
+import org.apache.flink.table.types.DataType;
+import org.apache.flink.test.util.MiniClusterWithClientResource;
+import org.apache.flink.types.Row;
+import org.apache.flink.types.RowKind;
+import org.apache.flink.util.CloseableIterator;
+import org.apache.flink.util.Preconditions;
+
+import org.junit.ClassRule;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.junit.runners.Parameterized.Parameter;
+
+import javax.annotation.Nullable;
+
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.List;
+import java.util.Objects;
+import java.util.Set;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+import static org.apache.flink.table.types.DataType.getFieldCount;
+import static org.apache.flink.table.types.DataType.getFieldDataTypes;
+import static org.junit.Assert.assertEquals;
+
+/** Test base for testing aggregate {@link BuiltInFunctionDefinition built-in functions}. */
+@RunWith(Parameterized.class)
+public class BuiltInAggregateFunctionTestBase {
+
+    @ClassRule
+    public static MiniClusterWithClientResource miniClusterResource =
+            new MiniClusterWithClientResource(
+                    new MiniClusterResourceConfiguration.Builder()
+                            .setNumberTaskManagers(1)
+                            .setNumberSlotsPerTaskManager(1)
+                            .build());
+
+    @Parameter public TestSpec testSpec;
+
+    protected EnvironmentSettings getEnvironmentSettings() {
+        return EnvironmentSettings.inStreamingMode();
+    }
+
+    @Test
+    public void testFunction() throws Exception {
+        final TableEnvironment tEnv = TableEnvironment.create(getEnvironmentSettings());
+        final Table sourceTable = asTable(tEnv, testSpec.sourceRowType, testSpec.sourceRows);
+
+        for (final TestItem testItem : testSpec.testItems) {
+            testItem.execute(tEnv, sourceTable);
+        }
+    }
+
+    protected static Table asTable(TableEnvironment tEnv, DataType sourceRowType, List<Row> rows) {
+        final TableDescriptor descriptor =
+                TableFactoryHarness.newBuilder()
+                        .schema(Schema.newBuilder().fromRowDataType(sourceRowType).build())
+                        .source(asSource(rows, sourceRowType))
+                        .build();
+
+        return tEnv.from(descriptor);
+    }
+
+    protected static TableFactoryHarness.ScanSourceBase asSource(
+            List<Row> rows, DataType producedDataType) {
+        return new TableFactoryHarness.ScanSourceBase() {
+            @Override
+            public ChangelogMode getChangelogMode() {
+                final Set<RowKind> rowKinds =
+                        rows.stream().map(Row::getKind).collect(Collectors.toSet());
+                if (rowKinds.size() == 1 && rowKinds.contains(RowKind.INSERT)) {
+                    return ChangelogMode.insertOnly();
+                }
+
+                return ChangelogMode.all();
+            }
+
+            @Override
+            public ScanRuntimeProvider getScanRuntimeProvider(ScanContext context) {
+                final DataStructureConverter converter =
+                        context.createDataStructureConverter(producedDataType);
+
+                return SourceFunctionProvider.of(new Source(rows, converter), true);
+            }
+        };
+    }
+
+    protected static void assertRows(List<Row> expectedRows, TableResult tableResult) {
+        final List<Row> actualRows =
+                materializeResult(tableResult).stream()
+                        .sorted(Comparator.comparing(Objects::toString))
+                        .collect(Collectors.toList());
+        final List<Row> sortedExpectedRows =
+                expectedRows.stream()
+                        .sorted(Comparator.comparing(Objects::toString))
+                        .collect(Collectors.toList());
+
+        assertEquals(
+                String.format("%n%nExpected:%n%s%n%nActual:%n%s", sortedExpectedRows, actualRows),
+                sortedExpectedRows,
+                actualRows);
+    }
+
+    private static List<Row> materializeResult(TableResult tableResult) {
+        try (final CloseableIterator<Row> iterator = tableResult.collect()) {
+            final List<Row> actualRows = new ArrayList<>();
+            iterator.forEachRemaining(
+                    row -> {
+                        final RowKind kind = row.getKind();
+                        switch (kind) {
+                            case INSERT:
+                            case UPDATE_AFTER:
+                                row.setKind(RowKind.INSERT);
+                                actualRows.add(row);
+                                break;
+                            case UPDATE_BEFORE:
+                            case DELETE:
+                                row.setKind(RowKind.INSERT);
+                                actualRows.remove(row);
+                                break;
+                        }
+                    });
+
+            return actualRows;
+        } catch (Exception e) {
+            throw new RuntimeException("Could not collect results", e);
+        }
+    }
+
+    // ---------------------------------------------------------------------------------------------
+
+    /** Test specification. */
+    protected static class TestSpec {
+
+        private final BuiltInFunctionDefinition definition;
+        private final List<TestItem> testItems = new ArrayList<>();
+
+        private @Nullable String description;
+
+        private DataType sourceRowType;
+        private List<Row> sourceRows;
+
+        private TestSpec(BuiltInFunctionDefinition definition) {
+            this.definition = Preconditions.checkNotNull(definition);
+        }
+
+        static TestSpec forFunction(BuiltInFunctionDefinition definition) {
+            return new TestSpec(definition);
+        }
+
+        TestSpec as(String description) {

Review comment:
       nit: not sure if `as()` reads nicely and makes sense for description




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 580d49b0e76e16de0e520f613e3763755e312e6d UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] Airblader commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
Airblader commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r735814886



##########
File path: flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/rules/logical/WrapJsonAggFunctionArgumentsRule.java
##########
@@ -0,0 +1,187 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.planner.plan.rules.logical;
+
+import org.apache.flink.annotation.Internal;
+import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
+import org.apache.flink.table.planner.functions.bridging.BridgingSqlFunction;
+import org.apache.flink.table.planner.hint.FlinkHints;
+
+import org.apache.calcite.plan.RelOptCluster;
+import org.apache.calcite.plan.RelOptRule;
+import org.apache.calcite.plan.RelOptRuleCall;
+import org.apache.calcite.plan.RelRule;
+import org.apache.calcite.rel.RelNode;
+import org.apache.calcite.rel.core.AggregateCall;
+import org.apache.calcite.rel.hint.RelHint;
+import org.apache.calcite.rel.logical.LogicalAggregate;
+import org.apache.calcite.rex.RexNode;
+import org.apache.calcite.sql.fun.SqlJsonObjectAggAggFunction;
+import org.apache.calcite.tools.RelBuilder;
+import org.apache.calcite.util.mapping.MappingType;
+import org.apache.calcite.util.mapping.Mappings;
+import org.apache.calcite.util.mapping.Mappings.TargetMapping;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.function.Predicate;
+import java.util.stream.Collectors;
+
+import static org.apache.flink.table.functions.BuiltInFunctionDefinitions.JSON_STRING;
+import static org.apache.flink.table.planner.functions.bridging.BridgingSqlFunction.of;
+
+/**
+ * Transforms JSON aggregation functions by wrapping operands into {@link
+ * BuiltInFunctionDefinitions#JSON_STRING}.
+ *
+ * <p>Essentially, a call like {@code JSON_OBJECTAGG(f0 VALUE f1)} will be transformed into {@code
+ * JSON_OBJECTAGG(f0 VALUE JSON_STRING(f1))}. By placing a marker {@link RelHint} on the aggregation
+ * afterwards we ensure that this transformation occurs just once.
+ *
+ * <p>{@link BuiltInFunctionDefinitions#JSON_STRING} will take care of serializing the values into
+ * their correct representation, and the actual aggregation function's implementation can simply
+ * insert the values as raw nodes instead. This avoids having to re-implement the logic for all
+ * supported types in the aggregation function again.
+ */
+@Internal
+public class WrapJsonAggFunctionArgumentsRule
+        extends RelRule<WrapJsonAggFunctionArgumentsRule.Config> {
+
+    public static final RelOptRule INSTANCE =
+            Config.EMPTY.as(Config.class).onJsonAggregateFunctions().toRule();
+
+    /** Marker hint that a call has already been transformed. */
+    private static final RelHint MARKER_HINT =
+            RelHint.builder(FlinkHints.HINT_NAME_JSON_AGGREGATE_WRAPPED).build();
+
+    public WrapJsonAggFunctionArgumentsRule(Config config) {
+        super(config);
+    }
+
+    @Override
+    public void onMatch(RelOptRuleCall call) {
+        final LogicalAggregate aggregate = call.rel(0);
+        final AggregateCall aggCall = aggregate.getAggCallList().get(0);
+
+        final RelNode aggInput = aggregate.getInput();
+        final RelBuilder relBuilder = call.builder().push(aggInput);
+
+        final List<Integer> affectedArgs = getAffectedArgs(aggCall);
+        addProjections(aggregate.getCluster(), relBuilder, affectedArgs);
+
+        final TargetMapping argsMapping =
+                getAggArgsMapping(aggInput.getRowType().getFieldCount(), affectedArgs);
+
+        final AggregateCall newAggregateCall = aggCall.transform(argsMapping);
+        final LogicalAggregate newAggregate =
+                aggregate.copy(
+                        aggregate.getTraitSet(),
+                        relBuilder.build(),
+                        aggregate.getGroupSet(),
+                        aggregate.getGroupSets(),
+                        Collections.singletonList(newAggregateCall));
+        call.transformTo(newAggregate.withHints(Collections.singletonList(MARKER_HINT)));
+    }
+
+    /**
+     * Returns the aggregation's arguments which need to be wrapped.
+     *
+     * <p>This list is a subset of {@link AggregateCall#getArgList()} as not every argument may need
+     * to be wrapped into a {@link BuiltInFunctionDefinitions#JSON_STRING} call.
+     *
+     * <p>Duplicates (e.g. for {@code JSON_OBJECTAGG(f0 VALUE f0)}) are removed as we only need to
+     * wrap them once.
+     */
+    private List<Integer> getAffectedArgs(AggregateCall aggCall) {
+        if (aggCall.getAggregation() instanceof SqlJsonObjectAggAggFunction) {

Review comment:
       That would work right now, but with `JSON_ARRAYAG` I'd have to undo it again because `isJsonAggregation` will check for both.




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   * 5ea492bfda82c87d79bf7ab6fb999f65e8c872ca UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375) 
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   * 5ea492bfda82c87d79bf7ab6fb999f65e8c872ca UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   * 5ea492bfda82c87d79bf7ab6fb999f65e8c872ca UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "CANCELED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [CANCELED](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] twalthr commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
twalthr commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r735660369



##########
File path: docs/data/sql_functions.yml
##########
@@ -766,6 +766,27 @@ json:
         )
       )
       ```
+  - sql: JSON_OBJECTAGG([KEY] key VALUE value [ { NULL | ABSENT } ON NULL ])
+    table: jsonObjectAgg(JsonOnNull, keyExpression, valueExpression)
+    description: |
+      Builds a JSON object string by aggregating over key-value expressions.
+
+      The key expression must return a non-nullable character string. Value expressions can be
+      arbitrary, including other JSON functions. If a value is `NULL`, the `ON NULL` behavior
+      defines what to do. If omitted, `NULL ON NULL` is assumed by default.
+
+      Note that keys must be unique. If a key occurs multiple times, an error will be thrown.
+
+      This function is currently not supported in `OVER` windows.
+
+      ```
+      -- For each f0, include a JSON object string
+      -- with the values of f1 as keys and those of f2 as values
+      SELECT
+        f0, jsonObjectAgg(JsonOnNull.NULL, $("f1"), $("f2"))

Review comment:
       is this mixing of SQL and Table API intended?

##########
File path: flink-table/flink-table-planner/src/test/java/org/apache/flink/table/planner/plan/rules/logical/WrapJsonAggFunctionArgumentsRuleTest.java
##########
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.planner.plan.rules.logical;
+
+import org.apache.flink.table.api.Schema;
+import org.apache.flink.table.api.TableConfig;
+import org.apache.flink.table.api.TableDescriptor;
+import org.apache.flink.table.connector.ChangelogMode;
+import org.apache.flink.table.planner.factories.TableFactoryHarness;
+import org.apache.flink.table.planner.utils.StreamTableTestUtil;
+import org.apache.flink.table.planner.utils.TableTestBase;
+
+import org.junit.Before;
+import org.junit.Test;
+
+import static org.apache.flink.table.api.DataTypes.INT;
+import static org.apache.flink.table.api.DataTypes.STRING;
+import static org.apache.flink.table.api.DataTypes.TIMESTAMP;
+
+/** Tests for {@link WrapJsonAggFunctionArgumentsRule}. */
+public class WrapJsonAggFunctionArgumentsRuleTest extends TableTestBase {
+
+    private StreamTableTestUtil util;
+
+    @Before
+    public void before() {
+        util = streamTestUtil(TableConfig.getDefault());
+    }
+
+    @Test
+    public void testJsonObjectAgg() {
+        final TableDescriptor sourceDescriptor =
+                TableFactoryHarness.newBuilder()
+                        .schema(
+                                Schema.newBuilder()
+                                        .column("f0", STRING())
+                                        .column("ts", TIMESTAMP(3))
+                                        .watermark("ts", "ts")

Review comment:
       we don't need a watermark nor timestamp here

##########
File path: flink-table/flink-table-planner/src/test/java/org/apache/flink/table/planner/functions/JsonAggregationFunctionsITCase.java
##########
@@ -0,0 +1,126 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.planner.functions;
+
+import org.apache.flink.table.api.JsonOnNull;
+import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
+import org.apache.flink.types.Row;
+
+import org.junit.runners.Parameterized;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import static org.apache.flink.table.api.DataTypes.INT;
+import static org.apache.flink.table.api.DataTypes.ROW;
+import static org.apache.flink.table.api.DataTypes.STRING;
+import static org.apache.flink.table.api.DataTypes.VARCHAR;
+import static org.apache.flink.table.api.Expressions.$;
+import static org.apache.flink.table.api.Expressions.jsonObjectAgg;
+import static org.apache.flink.types.RowKind.DELETE;
+import static org.apache.flink.types.RowKind.INSERT;
+
+/** Tests for built-in JSON aggregation functions. */
+public class JsonAggregationFunctionsITCase extends BuiltInAggregateFunctionTestBase {
+
+    @Parameterized.Parameters(name = "{index}: {0}")
+    public static List<TestSpec> testData() throws Exception {
+        return Arrays.asList(
+                TestSpec.forFunction(BuiltInFunctionDefinitions.JSON_OBJECTAGG_NULL_ON_NULL)
+                        .withDescription("Basic Aggregation")
+                        .withSource(
+                                ROW(STRING(), INT()),
+                                Arrays.asList(
+                                        Row.ofKind(INSERT, "A", 1),
+                                        Row.ofKind(INSERT, "B", null),
+                                        Row.ofKind(INSERT, "C", 3)))
+                        .testResult(
+                                source -> "SELECT JSON_OBJECTAGG(f0 VALUE f1) FROM " + source,
+                                source ->
+                                        source.select(
+                                                jsonObjectAgg(JsonOnNull.NULL, $("f0"), $("f1"))),
+                                ROW(VARCHAR(2000).notNull()),
+                                ROW(STRING().notNull()),
+                                Collections.singletonList(Row.of("{\"A\":1,\"B\":null,\"C\":3}"))),
+                TestSpec.forFunction(BuiltInFunctionDefinitions.JSON_OBJECTAGG_ABSENT_ON_NULL)
+                        .withDescription("Omits NULLs")
+                        .withSource(
+                                ROW(STRING(), INT()),
+                                Arrays.asList(
+                                        Row.ofKind(INSERT, "A", 1),
+                                        Row.ofKind(INSERT, "B", null),
+                                        Row.ofKind(INSERT, "C", 3)))
+                        .testResult(
+                                source ->
+                                        "SELECT JSON_OBJECTAGG(f0 VALUE f1 ABSENT ON NULL) FROM "
+                                                + source,
+                                source ->
+                                        source.select(
+                                                jsonObjectAgg(JsonOnNull.ABSENT, $("f0"), $("f1"))),
+                                ROW(VARCHAR(2000).notNull()),
+                                ROW(STRING().notNull()),
+                                Collections.singletonList(Row.of("{\"A\":1,\"C\":3}"))),
+                TestSpec.forFunction(BuiltInFunctionDefinitions.JSON_OBJECTAGG_NULL_ON_NULL)
+                        .withDescription("Retractions")
+                        .withSource(
+                                ROW(STRING(), INT()),
+                                Arrays.asList(
+                                        Row.ofKind(INSERT, "A", 1),
+                                        Row.ofKind(INSERT, "B", 2),
+                                        Row.ofKind(INSERT, "C", 3),
+                                        Row.ofKind(DELETE, "B", 2)))
+                        .testResult(
+                                source -> "SELECT JSON_OBJECTAGG(f0 VALUE f1) FROM " + source,
+                                source ->
+                                        source.select(
+                                                jsonObjectAgg(JsonOnNull.NULL, $("f0"), $("f1"))),
+                                ROW(VARCHAR(2000).notNull()),
+                                ROW(STRING().notNull()),
+                                Collections.singletonList(Row.of("{\"A\":1,\"C\":3}"))),
+                TestSpec.forFunction(BuiltInFunctionDefinitions.JSON_OBJECTAGG_NULL_ON_NULL)
+                        .withDescription("Group Aggregation")
+                        .withSource(
+                                ROW(INT(), STRING(), INT()),
+                                Arrays.asList(
+                                        Row.ofKind(INSERT, 1, "A", 0),
+                                        Row.ofKind(INSERT, 1, "B", 0),
+                                        Row.ofKind(INSERT, 2, "A", 0),
+                                        Row.ofKind(INSERT, 2, "C", 0)))
+                        .testResult(
+                                source ->
+                                        "SELECT f0, JSON_OBJECTAGG(f1 VALUE f2) FROM "
+                                                + source
+                                                + " GROUP BY f0",
+                                source ->
+                                        source.groupBy($("f0"))
+                                                .select(
+                                                        $("f0"),
+                                                        jsonObjectAgg(
+                                                                JsonOnNull.NULL, $("f1"), $("f2"))),
+                                ROW(INT(), VARCHAR(2000).notNull()),
+                                ROW(INT(), STRING().notNull()),
+                                Arrays.asList(
+                                        Row.of(1, "{\"A\":0,\"B\":0}"),
+                                        Row.of(2, "{\"A\":0,\"C\":0}")))
+
+                // ---------------------------------------------------------------------------------

Review comment:
       remove line

##########
File path: docs/data/sql_functions.yml
##########
@@ -766,6 +766,27 @@ json:
         )
       )
       ```
+  - sql: JSON_OBJECTAGG([KEY] key VALUE value [ { NULL | ABSENT } ON NULL ])
+    table: jsonObjectAgg(JsonOnNull, keyExpression, valueExpression)
+    description: |
+      Builds a JSON object string by aggregating over key-value expressions.

Review comment:
       can we add an example with JSON? because I find the name not very intuitive for what it is doing. It is actually a "union" of key-value pairs but uses the term "agg".

##########
File path: docs/data/sql_functions.yml
##########
@@ -766,6 +766,27 @@ json:
         )
       )
       ```
+  - sql: JSON_OBJECTAGG([KEY] key VALUE value [ { NULL | ABSENT } ON NULL ])
+    table: jsonObjectAgg(JsonOnNull, keyExpression, valueExpression)
+    description: |
+      Builds a JSON object string by aggregating over key-value expressions.
+
+      The key expression must return a non-nullable character string. Value expressions can be
+      arbitrary, including other JSON functions. If a value is `NULL`, the `ON NULL` behavior
+      defines what to do. If omitted, `NULL ON NULL` is assumed by default.
+
+      Note that keys must be unique. If a key occurs multiple times, an error will be thrown.
+
+      This function is currently not supported in `OVER` windows.
+
+      ```
+      -- For each f0, include a JSON object string
+      -- with the values of f1 as keys and those of f2 as values
+      SELECT
+        f0, jsonObjectAgg(JsonOnNull.NULL, $("f1"), $("f2"))

Review comment:
       nit: maybe a, b, c instead of f0, f1, f2 for examples?

##########
File path: flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/rules/logical/WrapJsonAggFunctionArgumentsRule.java
##########
@@ -0,0 +1,187 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.planner.plan.rules.logical;
+
+import org.apache.flink.annotation.Internal;
+import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
+import org.apache.flink.table.planner.functions.bridging.BridgingSqlFunction;
+import org.apache.flink.table.planner.hint.FlinkHints;
+
+import org.apache.calcite.plan.RelOptCluster;
+import org.apache.calcite.plan.RelOptRule;
+import org.apache.calcite.plan.RelOptRuleCall;
+import org.apache.calcite.plan.RelRule;
+import org.apache.calcite.rel.RelNode;
+import org.apache.calcite.rel.core.AggregateCall;
+import org.apache.calcite.rel.hint.RelHint;
+import org.apache.calcite.rel.logical.LogicalAggregate;
+import org.apache.calcite.rex.RexNode;
+import org.apache.calcite.sql.fun.SqlJsonObjectAggAggFunction;
+import org.apache.calcite.tools.RelBuilder;
+import org.apache.calcite.util.mapping.MappingType;
+import org.apache.calcite.util.mapping.Mappings;
+import org.apache.calcite.util.mapping.Mappings.TargetMapping;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.function.Predicate;
+import java.util.stream.Collectors;
+
+import static org.apache.flink.table.functions.BuiltInFunctionDefinitions.JSON_STRING;
+import static org.apache.flink.table.planner.functions.bridging.BridgingSqlFunction.of;
+
+/**
+ * Transforms JSON aggregation functions by wrapping operands into {@link
+ * BuiltInFunctionDefinitions#JSON_STRING}.
+ *
+ * <p>Essentially, a call like {@code JSON_OBJECTAGG(f0 VALUE f1)} will be transformed into {@code
+ * JSON_OBJECTAGG(f0 VALUE JSON_STRING(f1))}. By placing a marker {@link RelHint} on the aggregation
+ * afterwards we ensure that this transformation occurs just once.
+ *
+ * <p>{@link BuiltInFunctionDefinitions#JSON_STRING} will take care of serializing the values into
+ * their correct representation, and the actual aggregation function's implementation can simply
+ * insert the values as raw nodes instead. This avoids having to re-implement the logic for all
+ * supported types in the aggregation function again.
+ */
+@Internal
+public class WrapJsonAggFunctionArgumentsRule
+        extends RelRule<WrapJsonAggFunctionArgumentsRule.Config> {
+
+    public static final RelOptRule INSTANCE =
+            Config.EMPTY.as(Config.class).onJsonAggregateFunctions().toRule();
+
+    /** Marker hint that a call has already been transformed. */
+    private static final RelHint MARKER_HINT =
+            RelHint.builder(FlinkHints.HINT_NAME_JSON_AGGREGATE_WRAPPED).build();
+
+    public WrapJsonAggFunctionArgumentsRule(Config config) {
+        super(config);
+    }
+
+    @Override
+    public void onMatch(RelOptRuleCall call) {
+        final LogicalAggregate aggregate = call.rel(0);
+        final AggregateCall aggCall = aggregate.getAggCallList().get(0);
+
+        final RelNode aggInput = aggregate.getInput();
+        final RelBuilder relBuilder = call.builder().push(aggInput);
+
+        final List<Integer> affectedArgs = getAffectedArgs(aggCall);
+        addProjections(aggregate.getCluster(), relBuilder, affectedArgs);
+
+        final TargetMapping argsMapping =
+                getAggArgsMapping(aggInput.getRowType().getFieldCount(), affectedArgs);
+
+        final AggregateCall newAggregateCall = aggCall.transform(argsMapping);
+        final LogicalAggregate newAggregate =
+                aggregate.copy(
+                        aggregate.getTraitSet(),
+                        relBuilder.build(),
+                        aggregate.getGroupSet(),
+                        aggregate.getGroupSets(),
+                        Collections.singletonList(newAggregateCall));
+        call.transformTo(newAggregate.withHints(Collections.singletonList(MARKER_HINT)));
+    }
+
+    /**
+     * Returns the aggregation's arguments which need to be wrapped.
+     *
+     * <p>This list is a subset of {@link AggregateCall#getArgList()} as not every argument may need
+     * to be wrapped into a {@link BuiltInFunctionDefinitions#JSON_STRING} call.
+     *
+     * <p>Duplicates (e.g. for {@code JSON_OBJECTAGG(f0 VALUE f0)}) are removed as we only need to
+     * wrap them once.
+     */
+    private List<Integer> getAffectedArgs(AggregateCall aggCall) {
+        if (aggCall.getAggregation() instanceof SqlJsonObjectAggAggFunction) {

Review comment:
       use `isJsonAggregation`?




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] Airblader commented on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
Airblader commented on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-952588166


   Should work now:
   
   ```
   +--------------------------------+
   |                          count |
   +--------------------------------+
   |                    {"Hello":1} |
   |                   {"Hello2":2} |
   |                     {"Ciao":1} |
   +--------------------------------+
   ```


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 580d49b0e76e16de0e520f613e3763755e312e6d UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 580d49b0e76e16de0e520f613e3763755e312e6d UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "952767857",
       "triggerType" : "MANUAL"
     }, {
       "hash" : "f01ab9e6209fa7aa9d525627512e8361c9b4ef83",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25518",
       "triggerID" : "f01ab9e6209fa7aa9d525627512e8361c9b4ef83",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 284794c4156ff18a56b3bf823882abf775d9fd36 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497) 
   * f01ab9e6209fa7aa9d525627512e8361c9b4ef83 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25518) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] twalthr commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
twalthr commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r736486321



##########
File path: flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/functions/aggfunctions/JsonObjectAggFunction.java
##########
@@ -0,0 +1,196 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.planner.functions.aggfunctions;
+
+import org.apache.flink.annotation.Internal;
+import org.apache.flink.table.api.DataTypes;
+import org.apache.flink.table.api.TableException;
+import org.apache.flink.table.api.dataview.MapView;
+import org.apache.flink.table.data.StringData;
+import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
+import org.apache.flink.table.planner.plan.rules.logical.WrapJsonAggFunctionArgumentsRule;
+import org.apache.flink.table.runtime.functions.aggregate.BuiltInAggregateFunction;
+import org.apache.flink.table.types.DataType;
+import org.apache.flink.table.types.logical.LogicalType;
+import org.apache.flink.table.types.utils.DataTypeUtils;
+
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.JsonNode;
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.node.NullNode;
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.node.ObjectNode;
+import org.apache.flink.shaded.jackson2.com.fasterxml.jackson.databind.util.RawValue;
+
+import org.apache.calcite.sql.SqlJsonConstructorNullClause;
+
+import javax.annotation.Nullable;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+import static org.apache.flink.table.runtime.functions.SqlJsonUtils.createObjectNode;
+import static org.apache.flink.table.runtime.functions.SqlJsonUtils.getNodeFactory;
+import static org.apache.flink.table.runtime.functions.SqlJsonUtils.serializeJson;
+
+/**
+ * Implementation for {@link BuiltInFunctionDefinitions#JSON_OBJECTAGG_NULL_ON_NULL} / {@link
+ * BuiltInFunctionDefinitions#JSON_OBJECTAGG_ABSENT_ON_NULL}.
+ *
+ * <p>Note that this function only ever receives strings to accumulate because {@link
+ * WrapJsonAggFunctionArgumentsRule} wraps arguments into {@link
+ * BuiltInFunctionDefinitions#JSON_STRING}.
+ */
+@Internal
+public class JsonObjectAggFunction
+        extends BuiltInAggregateFunction<String, JsonObjectAggFunction.Accumulator> {
+
+    private static final long serialVersionUID = 1L;
+    private static final NullNode NULL_NODE = getNodeFactory().nullNode();
+
+    private final transient List<DataType> argumentTypes;
+    private final SqlJsonConstructorNullClause onNull;
+
+    public JsonObjectAggFunction(LogicalType[] argumentTypes, SqlJsonConstructorNullClause onNull) {

Review comment:
       also: let's make this a simple boolean flag to not have Calcite dependencies in runtime code that is shipped to the cluster




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot commented on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot commented on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   * 5ea492bfda82c87d79bf7ab6fb999f65e8c872ca UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "580d49b0e76e16de0e520f613e3763755e312e6d",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 580d49b0e76e16de0e520f613e3763755e312e6d UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "952767857",
       "triggerType" : "MANUAL"
     } ]
   }-->
   ## CI report:
   
   * 284794c4156ff18a56b3bf823882abf775d9fd36 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 5ea492bfda82c87d79bf7ab6fb999f65e8c872ca Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435) 
   * 284794c4156ff18a56b3bf823882abf775d9fd36 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "triggerType" : "PUSH"
     }, {
       "hash" : "284794c4156ff18a56b3bf823882abf775d9fd36",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497",
       "triggerID" : "952767857",
       "triggerType" : "MANUAL"
     } ]
   }-->
   ## CI report:
   
   * 284794c4156ff18a56b3bf823882abf775d9fd36 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25497) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot commented on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot commented on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949679105


   Thanks a lot for your contribution to the Apache Flink project. I'm the @flinkbot. I help the community
   to review your pull request. We will use this comment to track the progress of the review.
   
   
   ## Automated Checks
   Last check on commit 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 (Fri Oct 22 14:23:13 UTC 2021)
   
   **Warnings:**
    * No documentation files were touched! Remember to keep the Flink docs up to date!
   
   
   <sub>Mention the bot in a comment to re-run the automated checks.</sub>
   ## Review Progress
   
   * ❓ 1. The [description] looks good.
   * ❓ 2. There is [consensus] that the contribution should go into to Flink.
   * ❓ 3. Needs [attention] from.
   * ❓ 4. The change fits into the overall [architecture].
   * ❓ 5. Overall code [quality] is good.
   
   Please see the [Pull Request Review Guide](https://flink.apache.org/contributing/reviewing-prs.html) for a full explanation of the review process.<details>
    The Bot is tracking the review progress through labels. Labels are applied according to the order of the review items. For consensus, approval by a Flink committer of PMC member is required <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot approve description` to approve one or more aspects (aspects: `description`, `consensus`, `architecture` and `quality`)
    - `@flinkbot approve all` to approve all aspects
    - `@flinkbot approve-until architecture` to approve everything until `architecture`
    - `@flinkbot attention @username1 [@username2 ..]` to require somebody's attention
    - `@flinkbot disapprove architecture` to remove an approval you gave earlier
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "CANCELED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [CANCELED](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] Airblader commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
Airblader commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r735345872



##########
File path: flink-table/flink-table-planner/src/main/java/org/apache/flink/table/planner/plan/rules/logical/WrapJsonAggFunctionArgumentsRule.java
##########
@@ -0,0 +1,142 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.planner.plan.rules.logical;
+
+import org.apache.flink.annotation.Internal;
+import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
+import org.apache.flink.table.planner.functions.bridging.BridgingSqlFunction;
+import org.apache.flink.table.planner.hint.FlinkHints;
+
+import org.apache.calcite.plan.RelOptRule;
+import org.apache.calcite.plan.RelOptRuleCall;
+import org.apache.calcite.plan.RelRule;
+import org.apache.calcite.rel.RelNode;
+import org.apache.calcite.rel.core.AggregateCall;
+import org.apache.calcite.rel.hint.RelHint;
+import org.apache.calcite.rel.logical.LogicalAggregate;
+import org.apache.calcite.rex.RexNode;
+import org.apache.calcite.sql.fun.SqlJsonObjectAggAggFunction;
+import org.apache.calcite.tools.RelBuilder;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.function.Predicate;
+
+import static org.apache.flink.table.functions.BuiltInFunctionDefinitions.JSON_STRING;
+import static org.apache.flink.table.planner.functions.bridging.BridgingSqlFunction.of;
+
+/**
+ * Transforms JSON aggregation functions by wrapping operands into {@link
+ * BuiltInFunctionDefinitions#JSON_STRING}.
+ *
+ * <p>Essentially, a call like {@code JSON_OBJECTAGG(f0 VALUE f1)} will be transformed into {@code
+ * JSON_OBJECTAGG(f0 VALUE JSON_STRING(f1))}. By placing a marker {@link RelHint} on the aggregation
+ * afterwards we ensure that this transformation occurs just once.
+ *
+ * <p>{@link BuiltInFunctionDefinitions#JSON_STRING} will take care of serializing the values into
+ * their correct representation, and the actual aggregation function's implementation can simply
+ * insert the values as raw nodes instead. This avoids having to re-implement the logic for all
+ * supported types in the aggregation function again.
+ */
+@Internal
+public class WrapJsonAggFunctionArgumentsRule
+        extends RelRule<WrapJsonAggFunctionArgumentsRule.Config> {
+
+    public static final RelOptRule INSTANCE =
+            Config.EMPTY.as(Config.class).onJsonFunctions().toRule();
+
+    /** Marker hint that a call has already been transformed. */
+    private static final RelHint MARKER_HINT =
+            RelHint.builder(FlinkHints.HINT_NAME_JSON_AGGREGATE_WRAPPED).build();
+
+    public WrapJsonAggFunctionArgumentsRule(Config config) {
+        super(config);
+    }
+
+    @Override
+    public void onMatch(RelOptRuleCall call) {

Review comment:
       I need to re-work this rule, because it makes an incorrect assumption. We cannot just wrap fields as needed in a projection, because those fields might also be used elsewhere afterwards, e.g.
   
   ```
   SELECT f0, JSON_OBJECTAGG(f1 VALUE f0) FROM T GROUP BY f0
   ```
   
   will produce an error. Instead, we need to preserve all fields and add the projected field _additionally_.




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   * 5ea492bfda82c87d79bf7ab6fb999f65e8c872ca Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 5ea492bfda82c87d79bf7ab6fb999f65e8c872ca Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25435) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] twalthr commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
twalthr commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r736287726



##########
File path: docs/data/sql_functions.yml
##########
@@ -766,6 +766,27 @@ json:
         )
       )
       ```
+  - sql: JSON_OBJECTAGG([KEY] key VALUE value [ { NULL | ABSENT } ON NULL ])
+    table: jsonObjectAgg(JsonOnNull, keyExpression, valueExpression)
+    description: |
+      Builds a JSON object string by aggregating over key-value expressions.

Review comment:
       One could argue why `a function that aggregates key-values into a single JSON object` is not in the docs ;-)




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] twalthr commented on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
twalthr commented on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-952767489


   @flink run azure


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] twalthr edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
twalthr edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-952767489


   @flinkbot run azure


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] twalthr commented on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
twalthr commented on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-952767857


   @flinkbot run azure


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 7cbec36e6c52e30c00d4f163a6f3fbe85cc32151 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373) 
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "5ea492bfda82c87d79bf7ab6fb999f65e8c872ca",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   * 5ea492bfda82c87d79bf7ab6fb999f65e8c872ca UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * dd84b7ac9f4bcf38261f4c1932d83960dc943057 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375) 
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] Airblader commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
Airblader commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r734689757



##########
File path: flink-table/flink-table-runtime/src/main/java/org/apache/flink/table/runtime/functions/SqlJsonUtils.java
##########
@@ -58,7 +61,9 @@ public static ArrayNode createArrayNode() {
     /** Serializes the given {@link JsonNode} to a JSON string. */
     public static String serializeJson(JsonNode node) {
         try {
-            return MAPPER.writeValueAsString(node);
+            // This conversion step is needed to ensure property keys are sorted.

Review comment:
       ```suggestion
               // This conversion step is needed to ensure object keys are sorted.
   ```




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 39d5c4b60c6a071c06e8c6b46970c3202841bf65 Azure: [SUCCESS](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405) 
   * a93d531260a8ebf33993165fb1cfdba9b418d544 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419) 
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] Airblader commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
Airblader commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r735815594



##########
File path: flink-table/flink-table-planner/src/test/java/org/apache/flink/table/planner/functions/JsonAggregationFunctionsITCase.java
##########
@@ -0,0 +1,126 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.flink.table.planner.functions;
+
+import org.apache.flink.table.api.JsonOnNull;
+import org.apache.flink.table.functions.BuiltInFunctionDefinitions;
+import org.apache.flink.types.Row;
+
+import org.junit.runners.Parameterized;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import static org.apache.flink.table.api.DataTypes.INT;
+import static org.apache.flink.table.api.DataTypes.ROW;
+import static org.apache.flink.table.api.DataTypes.STRING;
+import static org.apache.flink.table.api.DataTypes.VARCHAR;
+import static org.apache.flink.table.api.Expressions.$;
+import static org.apache.flink.table.api.Expressions.jsonObjectAgg;
+import static org.apache.flink.types.RowKind.DELETE;
+import static org.apache.flink.types.RowKind.INSERT;
+
+/** Tests for built-in JSON aggregation functions. */
+public class JsonAggregationFunctionsITCase extends BuiltInAggregateFunctionTestBase {
+
+    @Parameterized.Parameters(name = "{index}: {0}")
+    public static List<TestSpec> testData() throws Exception {
+        return Arrays.asList(
+                TestSpec.forFunction(BuiltInFunctionDefinitions.JSON_OBJECTAGG_NULL_ON_NULL)
+                        .withDescription("Basic Aggregation")
+                        .withSource(
+                                ROW(STRING(), INT()),
+                                Arrays.asList(
+                                        Row.ofKind(INSERT, "A", 1),
+                                        Row.ofKind(INSERT, "B", null),
+                                        Row.ofKind(INSERT, "C", 3)))
+                        .testResult(
+                                source -> "SELECT JSON_OBJECTAGG(f0 VALUE f1) FROM " + source,
+                                source ->
+                                        source.select(
+                                                jsonObjectAgg(JsonOnNull.NULL, $("f0"), $("f1"))),
+                                ROW(VARCHAR(2000).notNull()),
+                                ROW(STRING().notNull()),
+                                Collections.singletonList(Row.of("{\"A\":1,\"B\":null,\"C\":3}"))),
+                TestSpec.forFunction(BuiltInFunctionDefinitions.JSON_OBJECTAGG_ABSENT_ON_NULL)
+                        .withDescription("Omits NULLs")
+                        .withSource(
+                                ROW(STRING(), INT()),
+                                Arrays.asList(
+                                        Row.ofKind(INSERT, "A", 1),
+                                        Row.ofKind(INSERT, "B", null),
+                                        Row.ofKind(INSERT, "C", 3)))
+                        .testResult(
+                                source ->
+                                        "SELECT JSON_OBJECTAGG(f0 VALUE f1 ABSENT ON NULL) FROM "
+                                                + source,
+                                source ->
+                                        source.select(
+                                                jsonObjectAgg(JsonOnNull.ABSENT, $("f0"), $("f1"))),
+                                ROW(VARCHAR(2000).notNull()),
+                                ROW(STRING().notNull()),
+                                Collections.singletonList(Row.of("{\"A\":1,\"C\":3}"))),
+                TestSpec.forFunction(BuiltInFunctionDefinitions.JSON_OBJECTAGG_NULL_ON_NULL)
+                        .withDescription("Retractions")
+                        .withSource(
+                                ROW(STRING(), INT()),
+                                Arrays.asList(
+                                        Row.ofKind(INSERT, "A", 1),
+                                        Row.ofKind(INSERT, "B", 2),
+                                        Row.ofKind(INSERT, "C", 3),
+                                        Row.ofKind(DELETE, "B", 2)))
+                        .testResult(
+                                source -> "SELECT JSON_OBJECTAGG(f0 VALUE f1) FROM " + source,
+                                source ->
+                                        source.select(
+                                                jsonObjectAgg(JsonOnNull.NULL, $("f0"), $("f1"))),
+                                ROW(VARCHAR(2000).notNull()),
+                                ROW(STRING().notNull()),
+                                Collections.singletonList(Row.of("{\"A\":1,\"C\":3}"))),
+                TestSpec.forFunction(BuiltInFunctionDefinitions.JSON_OBJECTAGG_NULL_ON_NULL)
+                        .withDescription("Group Aggregation")
+                        .withSource(
+                                ROW(INT(), STRING(), INT()),
+                                Arrays.asList(
+                                        Row.ofKind(INSERT, 1, "A", 0),
+                                        Row.ofKind(INSERT, 1, "B", 0),
+                                        Row.ofKind(INSERT, 2, "A", 0),
+                                        Row.ofKind(INSERT, 2, "C", 0)))
+                        .testResult(
+                                source ->
+                                        "SELECT f0, JSON_OBJECTAGG(f1 VALUE f2) FROM "
+                                                + source
+                                                + " GROUP BY f0",
+                                source ->
+                                        source.groupBy($("f0"))
+                                                .select(
+                                                        $("f0"),
+                                                        jsonObjectAgg(
+                                                                JsonOnNull.NULL, $("f1"), $("f2"))),
+                                ROW(INT(), VARCHAR(2000).notNull()),
+                                ROW(INT(), STRING().notNull()),
+                                Arrays.asList(
+                                        Row.of(1, "{\"A\":0,\"B\":0}"),
+                                        Row.of(2, "{\"A\":0,\"C\":0}")))
+
+                // ---------------------------------------------------------------------------------

Review comment:
       :-( It's so annoying to comment out or add test cases in such constructs with our formatting.




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] Airblader commented on a change in pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
Airblader commented on a change in pull request #17549:
URL: https://github.com/apache/flink/pull/17549#discussion_r735824538



##########
File path: docs/data/sql_functions.yml
##########
@@ -766,6 +766,27 @@ json:
         )
       )
       ```
+  - sql: JSON_OBJECTAGG([KEY] key VALUE value [ { NULL | ABSENT } ON NULL ])
+    table: jsonObjectAgg(JsonOnNull, keyExpression, valueExpression)
+    description: |
+      Builds a JSON object string by aggregating over key-value expressions.

Review comment:
       > I find the name not very intuitive for what it is doing. It is actually a "union" of key-value pairs but uses the term "agg".
   
   I think of it as a function that aggregates key-values into a single JSON object, which makes sense to me. :-)
   
   > can we add an example with JSON?
   
   I've changed the example entirely to something that I think makes sense without having to "set it up".




-- 
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: issues-unsubscribe@flink.apache.org

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



[GitHub] [flink] flinkbot edited a comment on pull request #17549: [FLINK-16205][table-planner] Support JSON_OBJECTAGG

Posted by GitBox <gi...@apache.org>.
flinkbot edited a comment on pull request #17549:
URL: https://github.com/apache/flink/pull/17549#issuecomment-949678124


   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25373",
       "triggerID" : "7cbec36e6c52e30c00d4f163a6f3fbe85cc32151",
       "triggerType" : "PUSH"
     }, {
       "hash" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25375",
       "triggerID" : "dd84b7ac9f4bcf38261f4c1932d83960dc943057",
       "triggerType" : "PUSH"
     }, {
       "hash" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25405",
       "triggerID" : "39d5c4b60c6a071c06e8c6b46970c3202841bf65",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25419",
       "triggerID" : "a93d531260a8ebf33993165fb1cfdba9b418d544",
       "triggerType" : "PUSH"
     }, {
       "hash" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422",
       "triggerID" : "707582c5eeeeba35c46d8b9e880a716d257efbf2",
       "triggerType" : "PUSH"
     }, {
       "hash" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432",
       "triggerID" : "5c0c45fbb0cc26c41ac386601d0682245ec5b814",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 707582c5eeeeba35c46d8b9e880a716d257efbf2 Azure: [FAILURE](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25422) 
   * 5c0c45fbb0cc26c41ac386601d0682245ec5b814 Azure: [PENDING](https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=25432) 
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
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: issues-unsubscribe@flink.apache.org

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