Hi MariaDB community!

   Glad to be here! My github account is @HollowMan6. Though I'm 
new to MariaDB community, I'm interested in MDEV-16375 & MDEV-23143: 
Function to normalize a json value & missing a JSON_EQUALS function for 
this year's GSOC project. Here are my first thoughts on these issues:


   I have checked part of the codebase and I think the two issues can 
be merged into one. First we can create a function named JSON_NORMALIZE to 
normalize the json, which automatically parses the inputed json document, 
recursively sorts the keys (for objects) / sorts the numbers (for arrays), 
removes the spaces, and then return the json document string.


   Then we create a function named JSON_EQUALS, which can be used to 
compare 2 json documents for equality realized by first seperately normalize 
the two json documents using JSON_NORMALIZE, then the 2 can be compared exactly 
as binary strings.


   I have taken some inspirations from 
the Item_func_json_keys and json_scan_start for parsing json 
documents, and I think it's possible to sort the keys using std::map in STL for 
objects.


   That's all for my ideas so far. Please correct me if I made some 
mistakes, and I'm going to work on my ideas later.


Cheers!


Hollow Man
_______________________________________________
Mailing list: https://launchpad.net/~maria-developers
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~maria-developers
More help   : https://help.launchpad.net/ListHelp

Reply via email to