[ 
https://issues.apache.org/jira/browse/PHOENIX-628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17808020#comment-17808020
 ] 

ASF GitHub Bot commented on PHOENIX-628:
----------------------------------------

ranganathg commented on code in PR #1780:
URL: https://github.com/apache/phoenix/pull/1780#discussion_r1456944432


##########
phoenix-core-client/src/main/java/org/apache/phoenix/compile/ProjectionCompiler.java:
##########
@@ -497,42 +502,106 @@ public static RowProjector compile(StatementContext 
context, SelectStatement sta
             index++;
         }
 
-        for (int i = arrayProjectedColumnRefs.size() - 1; i >= 0; i--) {
-            Expression expression = arrayProjectedColumnRefs.get(i);
-            Integer count = arrayExpressionCounts.get(expression);
+        for (int i = serverParsedProjectedColumnRefs.size() - 1; i >= 0; i--) {
+            Expression expression = serverParsedProjectedColumnRefs.get(i);
+            Integer count = serverParsedExpressionCounts.get(expression);
             if (count != 0) {
-                arrayKVRefs.remove(i);
-                arrayKVFuncs.remove(i);
-                arrayOldFuncs.remove(i);
+                serverParsedKVRefs.remove(i);
+                serverParsedKVFuncs.remove(i);
+                serverParsedOldFuncs.remove(i);
             }
         }
 
-        if (arrayKVFuncs.size() > 0 && arrayKVRefs.size() > 0) {
-            serailizeArrayIndexInformationAndSetInScan(context, arrayKVFuncs, 
arrayKVRefs);
+        if (serverParsedKVFuncs.size() > 0 && serverParsedKVRefs.size() > 0) {

Review Comment:
   Replacement map is required for JSON functions too. One refactoring I can 
think of is having a new base class for both ArrayIndexExpression and 
JSONPathExpression. 





> Support native JSON data type
> -----------------------------
>
>                 Key: PHOENIX-628
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-628
>             Project: Phoenix
>          Issue Type: Task
>    Affects Versions: 5.1.4
>            Reporter: James R. Taylor
>            Assignee: Ranganath Govardhanagiri
>              Labels: JSON, Java, SQL
>             Fix For: 4.4.1, 5.2.0
>
>         Attachments: JSON Support for Phoenix.docx, Screen Shot 2022-02-02 at 
> 12.23.24 PM.png, image-2023-12-07-11-26-56-198.png
>
>
> MongoDB and Postgres do some interesting things with JSON. We should look at 
> adding similar support. For a detailed description, see JSONB support in 
> Postgres: 
> [http://www.craigkerstiens.com/2014/03/24/Postgres-9.4-Looking-up]
> [http://www.depesz.com/2014/03/25/waiting-for-9-4-introduce-jsonb-a-structured-format-for-storing-json/]
> [http://michael.otacoo.com/postgresql-2/manipulating-jsonb-data-with-key-unique/]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to