Thread: json-patch support?
Are there any plans or ideas about implement JSON Patch (http://jsonpatch.com/) support for PostgreSQL? We deal with some relatively large JSON documents for our in-house application and it is often better to just send a json-patch update rather than the full document. It would be very nice if we could just select for the changes via a trigger and use NOTIFY to tell our application about a patch. If nobody has discussed it previously, perhaps I will look into implementing it myself.
Thanks in advance,On Fri, Mar 27, 2015 at 1:56 PM, Deven Phillips <deven.phillips@gmail.com> wrote:
DevenAre there any plans or ideas about implement JSON Patch (http://jsonpatch.com/) support for PostgreSQL? We deal with some relatively large JSON documents for our in-house application and it is often better to just send a json-patch update rather than the full document. It would be very nice if we could just select for the changes via a trigger and use NOTIFY to tell our application about a patch. If nobody has discussed it previously, perhaps I will look into implementing it myself.Thanks in advance,
This could be implemented as an extension.
There're already a few extensions that provide this functionality with plain functions, so it's just a matter of parsing the json and executing those functions.
On Fri, Mar 27, 2015 at 1:36 PM, Arthur Silva <arthurprs@gmail.com> wrote: > On Fri, Mar 27, 2015 at 1:56 PM, Deven Phillips <deven.phillips@gmail.com> > wrote: >> >> Are there any plans or ideas about implement JSON Patch >> (http://jsonpatch.com/) support for PostgreSQL? We deal with some relatively >> large JSON documents for our in-house application and it is often better to >> just send a json-patch update rather than the full document. It would be >> very nice if we could just select for the changes via a trigger and use >> NOTIFY to tell our application about a patch. If nobody has discussed it >> previously, perhaps I will look into implementing it myself. >> >> Thanks in advance, >> >> Deven > > > This could be implemented as an extension. > There're already a few extensions that provide this functionality with plain > functions, so it's just a matter of parsing the json and executing those > functions. Right. If it was me, I'd shoot for a userland (that is, in sql or pl/pgsql) implementation that wraps the existing json APIs to get the desired result. From there, could determine if a more optimized version in C was warranted. merlin
OK, then I will look into perhaps implementing it as a pl-python or pl-java function. Thanks for the advice!!
DevenOn Fri, Mar 27, 2015 at 2:40 PM, Merlin Moncure <mmoncure@gmail.com> wrote:
Right. If it was me, I'd shoot for a userland (that is, in sql orOn Fri, Mar 27, 2015 at 1:36 PM, Arthur Silva <arthurprs@gmail.com> wrote:
> On Fri, Mar 27, 2015 at 1:56 PM, Deven Phillips <deven.phillips@gmail.com>
> wrote:
>>
>> Are there any plans or ideas about implement JSON Patch
>> (http://jsonpatch.com/) support for PostgreSQL? We deal with some relatively
>> large JSON documents for our in-house application and it is often better to
>> just send a json-patch update rather than the full document. It would be
>> very nice if we could just select for the changes via a trigger and use
>> NOTIFY to tell our application about a patch. If nobody has discussed it
>> previously, perhaps I will look into implementing it myself.
>>
>> Thanks in advance,
>>
>> Deven
>
>
> This could be implemented as an extension.
> There're already a few extensions that provide this functionality with plain
> functions, so it's just a matter of parsing the json and executing those
> functions.
pl/pgsql) implementation that wraps the existing json APIs to get the
desired result. From there, could determine if a more optimized
version in C was warranted.
merlin
Finally got around to doing this... The link below points to a complete implementation of JSONPatch in pure PostgreSQL. It is compatible with PostgreSQL >= 9.5 (Not tested using earlier versions)
Cheers!
Deven
On Fri, Mar 27, 2015 at 4:16 PM, Deven Phillips <deven.phillips@gmail.com> wrote:
OK, then I will look into perhaps implementing it as a pl-python or pl-java function. Thanks for the advice!!DevenOn Fri, Mar 27, 2015 at 2:40 PM, Merlin Moncure <mmoncure@gmail.com> wrote:Right. If it was me, I'd shoot for a userland (that is, in sql orOn Fri, Mar 27, 2015 at 1:36 PM, Arthur Silva <arthurprs@gmail.com> wrote:
> On Fri, Mar 27, 2015 at 1:56 PM, Deven Phillips <deven.phillips@gmail.com>
> wrote:
>>
>> Are there any plans or ideas about implement JSON Patch
>> (http://jsonpatch.com/) support for PostgreSQL? We deal with some relatively
>> large JSON documents for our in-house application and it is often better to
>> just send a json-patch update rather than the full document. It would be
>> very nice if we could just select for the changes via a trigger and use
>> NOTIFY to tell our application about a patch. If nobody has discussed it
>> previously, perhaps I will look into implementing it myself.
>>
>> Thanks in advance,
>>
>> Deven
>
>
> This could be implemented as an extension.
> There're already a few extensions that provide this functionality with plain
> functions, so it's just a matter of parsing the json and executing those
> functions.
pl/pgsql) implementation that wraps the existing json APIs to get the
desired result. From there, could determine if a more optimized
version in C was warranted.
merlin