Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bkrQ7-00085v-Cs for pgadmin-hackers@arkaria.postgresql.org; Fri, 16 Sep 2016 11:35:03 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1bkrQ6-0001T6-HY for pgadmin-hackers@arkaria.postgresql.org; Fri, 16 Sep 2016 11:35:02 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1bkrPr-0001Dc-Ob for pgadmin-hackers@postgresql.org; Fri, 16 Sep 2016 11:34:48 +0000 Received: from mail-qk0-x22b.google.com ([2607:f8b0:400d:c09::22b]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1bkrPk-0002io-3e for pgadmin-hackers@postgresql.org; Fri, 16 Sep 2016 11:34:46 +0000 Received: by mail-qk0-x22b.google.com with SMTP id w204so84215286qka.0 for ; Fri, 16 Sep 2016 04:34:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=qGZoc8D16RNtpInbHD9YmOjAE2p6HJEUNE/W0Vl50pk=; b=YBdsJBjjRmvyB0B82Xsok+qukVJklFzD/+T2So6XeD+x+8UOz/F3gMsusdAHWtoyyP aMyMuITxel/LBRnJQW4OCTQB5dMRwSJNs4kY2Q8CjMgdvsIOo3l+JsHN/sXoCTN9wB5B W4GZVynkuMQi23kUx/TztN+4HVJkalwLPGZEtfoUgfjmMgvzLQrPpa5sCdhGpIjHwtHz 816ZLB17YhiC3RMlTBlDlW7H1IS9pEjQr9IHxOxklOxP2xfA3XBTa8TAAWdMF2Pq9IYD s418kNT0TOAtNt9orU5yrkvBQDFDg6p+Ku9UE7oyP6k+1SxgIAG8XbbNbDyUes7sri5e i9+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=qGZoc8D16RNtpInbHD9YmOjAE2p6HJEUNE/W0Vl50pk=; b=Zmnu09Y2RK4lHsPTv5JwOZTaTeDTn9EkjdALHY9YNILkFzZKLIldcCzCBkybttmLoE tL3K909h+wC83JJa+KIDAv5OjldCCipg20gtm9iPhVQB0teUPIJIy6PYusHgg/iM0HlI We5oaoQws2535U30l7cXh7SKhigssXzN3LhmEtqK+dgfJxvpWh14ERYLtXS+Hdrw0hWg Rmu2tRF6RF3MRe1og4smcgub8hSs20icp7/2vC/XA0w14M2mnNWbimMApG287TuJnCEX v1z4LpARMNnfmu3Cx16bMbyf28YjDC7imUDEvRV2iYCXyueEAvOIZhESS3OKiddRd28H YW/g== X-Gm-Message-State: AE9vXwNBy8jQUIzkxqGhdq7nl6foxaAb0BohIvHjNTmw2JirDgZGFOXn9WAia1xCBEv76oGx91cS6xYWErWlYiRn X-Received: by 10.55.145.197 with SMTP id t188mr14540033qkd.233.1474025679176; Fri, 16 Sep 2016 04:34:39 -0700 (PDT) MIME-Version: 1.0 Received: by 10.55.129.194 with HTTP; Fri, 16 Sep 2016 04:34:18 -0700 (PDT) In-Reply-To: References: From: Murtuza Zabuawala Date: Fri, 16 Sep 2016 17:04:18 +0530 Message-ID: Subject: Re: PATCH: To fix the performance of delete operation (pgAdmin4) To: Dave Page Cc: pgadmin-hackers Content-Type: multipart/mixed; boundary=94eb2c08340aff98a5053c9e582a X-Pg-Spam-Score: -2.6 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgadmin-hackers Precedence: bulk Sender: pgadmin-hackers-owner@postgresql.org --94eb2c08340aff98a5053c9e582a Content-Type: multipart/alternative; boundary=94eb2c08340aff98a1053c9e5828 --94eb2c08340aff98a1053c9e5828 Content-Type: text/plain; charset=UTF-8 Hi Dave, Please find updated patch. Regards, Murtuza -- Regards, Murtuza Zabuawala EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company On Fri, Sep 16, 2016 at 3:31 PM, Dave Page wrote: > Can you rebase this please? > > Thanks. > > On Thu, Sep 15, 2016 at 11:08 AM, Murtuza Zabuawala > wrote: > > Hi, > > > > PFA patch to fix the issue of slow performance while deleting rows from > > grid. > > RM#1696 > > > > Issue: > > As per logic implemented for Backgrid, we were deleting individual rows, > > means If user selects 100 rows to delete then we were rendering sql > template > > 100 times to generate sql for each individual rows and then execute all > 100 > > delete statements one by one due to which we were getting poor > performance. > > > > Please review. > > > > -- > > Regards, > > Murtuza Zabuawala > > EnterpriseDB: http://www.enterprisedb.com > > The Enterprise PostgreSQL Company > > > > > > -- > > Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) > > To make changes to your subscription: > > http://www.postgresql.org/mailpref/pgadmin-hackers > > > > > > -- > Dave Page > Blog: http://pgsnake.blogspot.com > Twitter: @pgsnake > > EnterpriseDB UK: http://www.enterprisedb.com > The Enterprise PostgreSQL Company > --94eb2c08340aff98a1053c9e5828 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi Dave,

Please find updated patch.


Regards,
Murtuza
=

--
Regards,
Murtuza Zabuawala
Enter= priseDB:=C2=A0http://www.enterpris= edb.com
The Enterprise PostgreSQL Company


On Fri, Sep 16, 2016 at 3:31 PM, Dave Page <= span dir=3D"ltr"><dpage@pgadmin.org> wrote:
= Can you rebase this please?

Thanks.

On Thu, Sep 15, 2016 at 11:08 AM, Murtuza Zabuawala
<murtuza.zabuawala= @enterprisedb.com> wrote:
> Hi,
>
> PFA patch to fix the issue of slow performance while deleting rows fro= m
> grid.
> RM#1696
>
> Issue:
> As per logic implemented for Backgrid, we were deleting individual row= s,
> means If user selects 100 rows to delete then we were rendering sql te= mplate
> 100 times to generate sql for each individual rows and then execute al= l 100
> delete statements one by one due to which we were getting poor perform= ance.
>
> Please review.
>
> --
> Regards,
> Murtuza Zabuawala
> EnterpriseDB: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>
>
> --
> Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgadm= in-hackers
>



--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

--94eb2c08340aff98a1053c9e5828-- --94eb2c08340aff98a5053c9e582a Content-Type: application/octet-stream; name="RM_1696_v2.patch" Content-Disposition: attachment; filename="RM_1696_v2.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_it5ot3j50 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci9jb21t YW5kLnB5IGIvd2ViL3BnYWRtaW4vdG9vbHMvc3FsZWRpdG9yL2NvbW1hbmQu cHkKaW5kZXggNGI4ZGI2ZS4uYjViOGJkZSAxMDA2NDQKLS0tIGEvd2ViL3Bn YWRtaW4vdG9vbHMvc3FsZWRpdG9yL2NvbW1hbmQucHkKKysrIGIvd2ViL3Bn YWRtaW4vdG9vbHMvc3FsZWRpdG9yL2NvbW1hbmQucHkKQEAgLTQ2NSwxNCAr NDY1LDI3IEBAIGNsYXNzIFRhYmxlQ29tbWFuZChHcmlkQ29tbWFuZCk6CiAK ICAgICAgICAgICAgICAgICAjIEZvciBkZWxldGVkIHJvd3MKICAgICAgICAg ICAgICAgICBlbGlmIG9mX3R5cGUgPT0gJ2RlbGV0ZWQnOgorICAgICAgICAg ICAgICAgICAgICBpc19maXJzdCA9IFRydWUKKyAgICAgICAgICAgICAgICAg ICAgcm93c190b19kZWxldGUgPSBbXQorICAgICAgICAgICAgICAgICAgICBr ZXlzID0gTm9uZQorICAgICAgICAgICAgICAgICAgICBub19vZl9rZXlzID0g Tm9uZQogICAgICAgICAgICAgICAgICAgICBmb3IgZWFjaF9yb3cgaW4gY2hh bmdlZF9kYXRhW29mX3R5cGVdOgotICAgICAgICAgICAgICAgICAgICAgICAg ZGF0YSA9IGNoYW5nZWRfZGF0YVtvZl90eXBlXVtlYWNoX3Jvd10KLSAgICAg ICAgICAgICAgICAgICAgICAgIHNxbCA9IHJlbmRlcl90ZW1wbGF0ZSgiLyIu am9pbihbc2VsZi5zcWxfcGF0aCwgJ2RlbGV0ZS5zcWwnXSksCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YT1k YXRhLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIG9iamVjdF9uYW1lPXNlbGYub2JqZWN0X25hbWUsCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnNwX25h bWU9c2VsZi5uc3BfbmFtZSkKLSAgICAgICAgICAgICAgICAgICAgICAgIGxp c3Rfb2Zfc3FsLmFwcGVuZChzcWwpCi0gICAgICAgICAgICAgICAgICAgICAg ICBsaXN0X29mX3Jvd2lkLmFwcGVuZChkYXRhKQorICAgICAgICAgICAgICAg ICAgICAgICAgcm93c190b19kZWxldGUuYXBwZW5kKGNoYW5nZWRfZGF0YVtv Zl90eXBlXVtlYWNoX3Jvd10pCisgICAgICAgICAgICAgICAgICAgICAgICAj IEZldGNoIHRoZSBrZXlzIGZvciBTUUwgZ2VuZXJhdGlvbgorICAgICAgICAg ICAgICAgICAgICAgICAgaWYgaXNfZmlyc3Q6CisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIyBXZSBuZWVkIHRvIGNvdmVydCBkaWN0X2tleXMgdG8g bm9ybWFsIGxpc3QgaW4gUHl0aG9uMworICAgICAgICAgICAgICAgICAgICAg ICAgICAgICMgSW4gUHl0aG9uMiwgaXQncyBhbHJlYWR5IGEgbGlzdAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGtleXMgPSBsaXN0KGNoYW5nZWRf ZGF0YVtvZl90eXBlXVtlYWNoX3Jvd10ua2V5cygpKQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgIG5vX29mX2tleXMgPSBsZW4oa2V5cykKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICBpc19maXJzdCA9IEZhbHNlCisKKyAg ICAgICAgICAgICAgICAgICAgc3FsID0gcmVuZGVyX3RlbXBsYXRlKCIvIi5q b2luKFtzZWxmLnNxbF9wYXRoLCAnZGVsZXRlLnNxbCddKSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE9cm93c190 b19kZWxldGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBwcmltYXJ5X2tleV9sYWJsZXM9a2V5cywKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vX29mX2tleXM9bm9f b2Zfa2V5cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIG9iamVjdF9uYW1lPXNlbGYub2JqZWN0X25hbWUsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuc3BfbmFtZT1z ZWxmLm5zcF9uYW1lKQorICAgICAgICAgICAgICAgICAgICBsaXN0X29mX3Nx bC5hcHBlbmQoc3FsKQogCiAgICAgICAgICAgICBmb3IgaSwgc3FsIGluIGVu dW1lcmF0ZShsaXN0X29mX3NxbCk6CiAgICAgICAgICAgICAgICAgaWYgc3Fs OgpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vdG9vbHMvc3FsZWRpdG9yL3Rl bXBsYXRlcy9zcWxlZGl0b3IvanMvc3FsZWRpdG9yLmpzIGIvd2ViL3BnYWRt aW4vdG9vbHMvc3FsZWRpdG9yL3RlbXBsYXRlcy9zcWxlZGl0b3IvanMvc3Fs ZWRpdG9yLmpzCmluZGV4IGYzMDY1MjAuLjc0NTAyYzcgMTAwNjQ0Ci0tLSBh L3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci90ZW1wbGF0ZXMvc3FsZWRp dG9yL2pzL3NxbGVkaXRvci5qcworKysgYi93ZWIvcGdhZG1pbi90b29scy9z cWxlZGl0b3IvdGVtcGxhdGVzL3NxbGVkaXRvci9qcy9zcWxlZGl0b3IuanMK QEAgLTIxNDksMTIgKzIxNDksMjAgQEAgZGVmaW5lKAogICAgICAgICAgICAg ICAgICAgICAvLyBSZW1vdmUgZGVsZXRlZCByb3dzIGZyb20gY2xpZW50IGFz IHdlbGwKICAgICAgICAgICAgICAgICAgICAgaWYoaXNfZGVsZXRlZCkgewog ICAgICAgICAgICAgICAgICAgICAgIHZhciByb3dzID0gZ3JpZC5nZXRTZWxl Y3RlZFJvd3MoKTsKLSAgICAgICAgICAgICAgICAgICAgICAvLyBSZXZlcnNl IHRoZSBkZWxldGlvbiBmcm9tIGFycmF5Ci0gICAgICAgICAgICAgICAgICAg ICAgLy8gc28gdGhhdCB3aGVuIHdlIHJlbW92ZSBpdCBkb2VzIG5vdCBhZmZl Y3QgaW5kZXgKLSAgICAgICAgICAgICAgICAgICAgICByb3dzID0gcm93cy5z b3J0KCkucmV2ZXJzZSgpOwotICAgICAgICAgICAgICAgICAgICAgIHJvd3Mu Zm9yRWFjaChmdW5jdGlvbihpZHgpIHsKLSAgICAgICAgICAgICAgICAgICAg ICAgIGRhdGEuc3BsaWNlKGlkeCwgMSk7Ci0gICAgICAgICAgICAgICAgICAg ICAgfSk7CisgICAgICAgICAgICAgICAgICAgICAgLyogSW4gSmF2YVNjcmlw dCBzb3J0aW5nIGJ5IGRlZmF1bHQgaXMgbGV4aWNhbCwKKyAgICAgICAgICAg ICAgICAgICAgICAgKiBUbyBtYWtlIHNvcnRpbmcgbnVtZXJpY2FsIHdlIG5l ZWQgdG8gcGFzcyBmdW5jdGlvbgorICAgICAgICAgICAgICAgICAgICAgICAq IEFmdGVyIHRoYXQgd2Ugd2lsbCBSZXZlcnNlIHRoZSBvcmRlciBvZiBzb3J0 ZWQgYXJyYXkKKyAgICAgICAgICAgICAgICAgICAgICAgKiBzbyB0aGF0IHdo ZW4gd2UgcmVtb3ZlIGl0IGRvZXMgbm90IGFmZmVjdCBhcnJheSBpbmRleAor ICAgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICAgICAgICAgICAg ICAgIGlmKGRhdGEubGVuZ3RoID09IHJvd3MubGVuZ3RoKSB7CisgICAgICAg ICAgICAgICAgICAgICAgICAvLyBUaGlzIG1lYW5zIGFsbCB0aGUgcm93cyBh cmUgc2VsZWN0ZWQsIGNsZWFyIGFsbCBkYXRhCisgICAgICAgICAgICAgICAg ICAgICAgICBkYXRhID0gW107CisgICAgICAgICAgICAgICAgICAgICAgfSBl bHNlIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJvd3MgPSByb3dzLnNv cnQoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYSAtIGJ9KS5yZXZlcnNlKCk7Cisg ICAgICAgICAgICAgICAgICAgICAgICByb3dzLmZvckVhY2goZnVuY3Rpb24o aWR4KSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEuc3BsaWNl KGlkeCwgMSk7CisgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKyAgICAg ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgZ3Jp ZC5zZXREYXRhKGRhdGEsIHRydWUpOwogICAgICAgICAgICAgICAgICAgICAg IGdyaWQuc2V0U2VsZWN0ZWRSb3dzKFtdKTsKICAgICAgICAgICAgICAgICAg ICAgfQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vdG9vbHMvc3FsZWRpdG9y L3RlbXBsYXRlcy9zcWxlZGl0b3Ivc3FsLzkuMV9wbHVzL2RlbGV0ZS5zcWwg Yi93ZWIvcGdhZG1pbi90b29scy9zcWxlZGl0b3IvdGVtcGxhdGVzL3NxbGVk aXRvci9zcWwvOS4xX3BsdXMvZGVsZXRlLnNxbAppbmRleCBlNWRiYzliLi4z YTU1MmI3IDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi90b29scy9zcWxlZGl0 b3IvdGVtcGxhdGVzL3NxbGVkaXRvci9zcWwvOS4xX3BsdXMvZGVsZXRlLnNx bAorKysgYi93ZWIvcGdhZG1pbi90b29scy9zcWxlZGl0b3IvdGVtcGxhdGVz L3NxbGVkaXRvci9zcWwvOS4xX3BsdXMvZGVsZXRlLnNxbApAQCAtMSw0ICsx LDI2IEBACi17IyBEZWxldGUgdGhlIHJvdyB3aXRoIHByaW1hcnkga2V5cyAj fQogREVMRVRFIEZST00ge3sgY29ubnxxdElkZW50KG5zcF9uYW1lLCBvYmpl Y3RfbmFtZSkgfX0gV0hFUkUKLXslIGZvciBwa19rZXkgaW4gZGF0YSAlfQot eyUgaWYgbm90IGxvb3AuZmlyc3QgJX0gQU5EIHslIGVuZGlmICV9e3sgY29u bnxxdElkZW50KHBrX2tleSkgfX0gPSB7eyBkYXRhW3BrX2tleV18cXRMaXRl cmFsIH19eyUgZW5kZm9yICV9OwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp bGUKK3sjIyMgSWYgdGhlcmUgaXMgb25seSBvbmUgcHJpbWFyeSBrZXkgIyMj fQoreyUgaWYgbm9fb2Zfa2V5cyA9PSAxICV9Cit7eyBjb25ufHF0SWRlbnQo cHJpbWFyeV9rZXlfbGFibGVzWzBdKSB9fSBJTgoreyMjIyBJZiB0aGVyZSBh cmUgbXVsdGlwbGUgcHJpbWFyeSBrZXlzICMjI30KK3slIGVsaWYgbm9fb2Zf a2V5cyA+IDEgJX0KKyh7JSBmb3IgZWFjaF9sYWJlbCBpbiBwcmltYXJ5X2tl eV9sYWJsZXMgJX0KK3slIGlmIG5vdCBsb29wLmZpcnN0ICV9LCB7JSBlbmRp ZiAlfXt7IGNvbm58cXRJZGVudChlYWNoX2xhYmVsKSB9fQoreyUgZW5kZm9y ICV9KSBJTgoreyUgZW5kaWYgJX0KKygKK3sjIyMgUm93cyB0byBkZWxldGUg IyMjfQoreyUgZm9yIG9iaiBpbiBkYXRhICV9Cit7JSBpZiBub3QgbG9vcC5m aXJzdCAlfSwgeyUgZW5kaWYgJX0KK3slIGlmIG5vX29mX2tleXMgPT0gMSAl fQore3sgb2JqW3ByaW1hcnlfa2V5X2xhYmxlc1swXV18cXRMaXRlcmFsIH19 Cit7JSBlbGlmIG5vX29mX2tleXMgPiAxICV9Cit7IyMjIEhlcmUgd2UgbmVl ZCB0byBtYWtlIHR1cGxlIGZvciBlYWNoIHJvdyAjIyN9CisoCit7JSBmb3Ig ZWFjaF9sYWJlbCBpbiBwcmltYXJ5X2tleV9sYWJsZXMgJX0KK3slIGlmIG5v dCBsb29wLmZpcnN0ICV9LCB7JSBlbmRpZiAlfXt7IG9ialtlYWNoX2xhYmVs XXxxdExpdGVyYWwgfX0KK3slIGVuZGZvciAlfQorKQoreyUgZW5kaWYgJX0K K3slIGVuZGZvciAlfQorKTsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl Cg== --94eb2c08340aff98a5053c9e582a Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-hackers --94eb2c08340aff98a5053c9e582a--