Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eEGMH-00063x-9B for pgsql-hackers@arkaria.postgresql.org; Mon, 13 Nov 2017 15:09:09 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eEGMG-0006yj-O1 for pgsql-hackers@arkaria.postgresql.org; Mon, 13 Nov 2017 15:09:08 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1eEGMG-0006yZ-IV for pgsql-hackers@lists.postgresql.org; Mon, 13 Nov 2017 15:09:08 +0000 Received: from mahout.postgresql.org ([2001:4800:1501:1::227]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1eEGMD-0003r3-4T for pgsql-hackers@postgresql.org; Mon, 13 Nov 2017 15:09:08 +0000 Received: from coridan.postgresql.org ([2001:4800:1501:1::213]) by mahout.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1eEGMB-0006yW-7j for pgsql-hackers@postgresql.org; Mon, 13 Nov 2017 15:09:03 +0000 Received: from localhost ([127.0.0.1] helo=coridan.postgresql.org) by coridan.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eEGMA-0002l5-9Z for pgsql-hackers@postgresql.org; Mon, 13 Nov 2017 15:09:02 +0000 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: Re: Jsonb transform for pl/python To: pgsql-hackers@postgresql.org From: Aleksander Alekseev Cc: Anthony Bykov Date: Mon, 13 Nov 2017 15:08:16 +0000 User-Agent: pgcommitfest X-cfsender: a.alekseev In-Reply-To: <20171113130028.32405fee@anthony-24-g082ur> References: <20171025145100.3a19933f@anthony-24-g082ur> <20171113130028.32405fee@anthony-24-g082ur> Message-ID: <20171113150816.1377.17052.pgcf@coridan.postgresql.org> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk VGhlIGZvbGxvd2luZyByZXZpZXcgaGFzIGJlZW4gcG9zdGVkIHRocm91Z2ggdGhlIGNvbW1pdGZl c3QgYXBwbGljYXRpb246Cm1ha2UgaW5zdGFsbGNoZWNrLXdvcmxkOiAgdGVzdGVkLCBwYXNzZWQK SW1wbGVtZW50cyBmZWF0dXJlOiAgICAgICB0ZXN0ZWQsIHBhc3NlZApTcGVjIGNvbXBsaWFudDog ICAgICAgICAgIHRlc3RlZCwgcGFzc2VkCkRvY3VtZW50YXRpb246ICAgICAgICAgICAgdGVzdGVk LCBwYXNzZWQKCkhpIEFudGhvbnksDQoNClRoYW5rIHlvdSBmb3IgdGhlIG5ldyB2ZXJzaW9uIG9m IHRoZSBwYXRjaCEgSGVyZSBpcyBteSBjb2RlIHJldmlldy4NCg0KMS4gSW4ganNvbmJfcGxweXRo b24yLm91dDoNCg0KK0NSRUFURSBGVU5DVElPTiBiYWNrKHZhbCBqc29uYikgUkVUVVJOUyBqc29u Yg0KK0xBTkdVQUdFIHBscHl0aG9uMnUNCitUUkFOU0ZPUk0gRk9SIFRZUEUganNvbmINCithcyAk JA0KK3JldHVybiB2YWwNCiskJDsNCitTRUxFQ1QgYmFjaygnbnVsbCc6Ompzb25iKTsNCisgIGJh Y2sgIA0KKy0tLS0tLS0tDQorIFtudWxsXQ0KKygxIHJvdykNCisNCitTRUxFQ1QgYmFjaygnMSc6 Ompzb25iKTsNCisgYmFjayANCistLS0tLS0NCisgWzFdDQorKDEgcm93KQ0KKw0KK1NFTEVDVCBi YWNrKCd0cnVlJzo6anNvbmIpOw0KKyAgYmFjayAgDQorLS0tLS0tLS0NCisgW3RydWVdDQorKDEg cm93KQ0KDQpNYXliZSBJJ20gbWlzc2luZyBzb21ldGhpbmcsIGJ1dCB3aHkgZXhhY3RseSBhbGwg SlNPTkIgdmFsdWVzIHR1cm4gaW50byBhcnJheXM/DQoNCjIuIENvdWxkIHlvdSBwbGVhc2UgYWxz byBhZGQgdGVzdHMgZm9yIHNvbWUgbmVnYXRpdmUgYW5kIHJlYWwgbnVtYmVycz8gQWxzbw0KY291 bGQgeW91IGNoZWNrIHRoYXQgeW91ciBjb2RlIGhhbmRsZXMgbnVtYmVycyBsaWtlIE1BWF9JTlQs IE1JTl9JTlQsICsvLQ0KaW5maW5pdHkgYW5kIE5hTiBwcm9wZXJseSBpbiBib3RoIChQeXRob24g PC0+IEpTT05CKSBkaXJlY3Rpb25zPw0KDQozLiBIYW5kbGluZyB1bmljb2RlIHN0cmluZ3MgcHJv cGVybHkgaXMgYW5vdGhlciB0aGluZyB0aGF0IGlzIHdvcnRoIGNoZWNraW5nLg0KDQo0LiBJIHRo aW5rIHdlIGFsc28gbmVlZCBzb21lIHRlc3RzIHRoYXQgY2hlY2sgdGhlIGJlaGF2aW9yIG9mIFB5 dGhvbiAtPiBKU09OQg0KY29udmVyc2lvbiB3aGVuIHRoZSBvYmplY3QgY29udGFpbnMgZGF0YSB0 aGF0IGlzIG5vdCByZXByZXNlbnRhYmxlIGluIEpTT04NCmZvcm1hdCwgZS5nLiBzZXQoKSwgc29t ZSBjdXN0b20gb2JqZWN0cywgZXRjLiANCg0KNS4gUHlPYmplY3RfRnJvbUpzb25iVmFsdWUgLSBJ IHJlYWxpemUgaXQncyB1bmxpa2VseSB0aGF0IHRoZSBuZXcNCmpzb25iVmFsdWUtPnR5cGUgd2ls bCBiZSBpbnRyb2R1Y2VkIGFueSB0aW1lIHNvb24uIFN0aWxsIEkgYmVsaWV2ZSBpdCdzIGEgZ29v ZA0KcHJhY3RpY2UgdG8gYWRkICJpdCBzaG91bGQgbmV2ZXIgaGFwcGVuIiBkZWZhdWx0IGNhc2Ug dGhhdCBqdXN0IGRvZXMNCmVsb2coRVJST1IsIC4uLikgaW4gY2FzZSBpdCBoYXBwZW5zIG5ldmVy dGhlbGVzcy4gT3RoZXJ3aXNlIGluIHRoaXMgc2NlbmFyaW8NCmluc3RlYWQgb2YgcmVwb3J0aW5n IHRoZSBlcnJvciB0aGUgY29kZSB3aWxsIHNpbGVudGx5IGRvIHRoZSB3cm9uZyB0aGluZy4NCg0K Ni4gV2VsbCwgeW91IGRlY2lkZWQgdG8gbWFrZSB0aGUgZXh0ZW5zaW9uIG5vbi1yZWxvY2F0YWJs ZS4gQ291bGQgeW91IGF0IGxlYXN0DQpkZXNjcmliZSB3aGF0IHByZXZlbnRzIGl0IHRvIGJlIHJl bG9jYXRhYmxlIG9yIHdoeSBpdCdzIG1lYW5pbmdsZXNzIGlzIGENCmNvbW1lbnQgaW4gLmNvbnRy b2wgZmlsZT8gUGxlYXNlIG5vdGUgdGhhdCBhbG1vc3QgYWxsIGNvbnRyaWIvIGV4dGVuc2lvbnMg YXJlDQpyZWxvY2F0YWJsZS4gSSBiZWxpZXZlIHlvdXIgZXh0ZW5zaW9uIHNob3VsZCBiZSByZWxv Y2F0YWJsZSBhcyB3ZWxsIHVubGVzcw0KdGhlcmUgaXMgYSBnb29kIHJlYXNvbiB3aHkgaXQgY2Fu J3QuCgpUaGUgbmV3IHN0YXR1cyBvZiB0aGlzIHBhdGNoIGlzOiBXYWl0aW5nIG9uIEF1dGhvcgo=