dolthub / dolt

Dolt – Git for Data
Apache License 2.0
17.36k stars 488 forks source link

[no-release-info] Add additional tests for manipulating large JSON documents and fix corner case bugs in JSON_LOOKUP and JSON_INSERT #8088

Closed nicktobey closed 4 days ago

nicktobey commented 1 week ago

This PR adds additional tests for calling JSON_INSERT on large JSON documents. It also fixes three issues with IndexedJsonDocuments:

1) Some operations are not supported by the new optimized implementation for JSON_LOOKUP, such as wildcards on array paths (eg $[*]). Instead of returning an error, we detect the error and fall back on the original implementation.

2) Attempting to insert a value into a document could cause an infinite loop.

3) We would fail to read some keys from an IndexedJsonDocument's StaticMap if the document contained arrays.

github-actions[bot] commented 1 week ago

Additional work is required for integration with DoltgreSQL.

coffeegoddd commented 6 days ago

@nicktobey DOLT

comparing_percentages
100.000000 to 100.000000
version result total
7879aa0 ok 5937457
version total_tests
7879aa0 5937457
correctness_percentage
100.0
coffeegoddd commented 6 days ago

@coffeegoddd DOLT

comparing_percentages
100.000000 to 100.000000
version result total
d54e94c ok 5937457
version total_tests
d54e94c 5937457
correctness_percentage
100.0
coffeegoddd commented 5 days ago

@nicktobey DOLT

comparing_percentages
100.000000 to 100.000000
version result total
7f66c4b ok 5937457
version total_tests
7f66c4b 5937457
correctness_percentage
100.0