Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] GetJsonObject fails at spark unit test $.store.book[*].reader #10216

Closed
revans2 opened this issue Jan 18, 2024 · 3 comments · Fixed by #10581
Closed

[BUG] GetJsonObject fails at spark unit test $.store.book[*].reader #10216

revans2 opened this issue Jan 18, 2024 · 3 comments · Fixed by #10581
Assignees
Labels
bug Something isn't working

Comments

@revans2
Copy link
Collaborator

revans2 commented Jan 18, 2024

Describe the bug
In the spark unit test for GetJsonObject with a path of $.store.book[*].reader and data of

  val json =
    """
      |{"store":{"fruit":[{"weight":8,"type":"apple"},{"weight":9,"type":"pear"}],
      |"basket":[[1,2,{"b":"y","a":"x"}],[3,4],[5,6]],"book":[{"author":"Nigel Rees",
      |"title":"Sayings of the Century","category":"reference","price":8.95},
      |{"author":"Herman Melville","title":"Moby Dick","category":"fiction","price":8.99,
      |"isbn":"0-553-21311-3"},{"author":"J. R. R. Tolkien","title":"The Lord of the Rings",
      |"category":"fiction","reader":[{"age":25,"name":"bob"},{"age":26,"name":"jack"}],
      |"price":22.99,"isbn":"0-395-19395-8"}],"bicycle":{"price":19.95,"color":"red"}},
      |"email":"amy@only_for_json_udf_test.net","owner":"amy","zip code":"94025",
      |"fb:testid":"1234"}
      |""".stripMargin

we return [[{"age":25,"name":"bob"},{"age":26,"name":"jack"}]], but the CPU returned [{"age":25,"name":"bob"},{"age":26,"name":"jack"}]

So we have an extra layer of wrapping in a list compared to Spark. I believe that this might be a bug in Spark as https://jsonpath.com/ returns the same result as us, but because this comes directly from a unit test in Spark we need to understand better before we file any Spark issues.

@revans2 revans2 added bug Something isn't working ? - Needs Triage Need team to review and classify labels Jan 18, 2024
@revans2
Copy link
Collaborator Author

revans2 commented Jan 19, 2024

Probably want to see what happens if this matched more than a single list of readers.

@revans2
Copy link
Collaborator Author

revans2 commented Jan 19, 2024

After looking into this some more I think this is a bug in Spark and I filed an issue for it at https://issues.apache.org/jira/browse/SPARK-46778

But I don't think that makes our job easier, as we need to be bug for bug compatible with Spark, or we would need to fall back to the CPU for any json path with a [*] in it by default.

@res-life
Copy link
Collaborator

Will be fixed by: NVIDIA/spark-rapids-jni#1868

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants