| From: | Kyotaro HORIGUCHI <horiguchi(dot)kyotaro(at)oss(dot)ntt(dot)co(dot)jp> | 
|---|---|
| To: | markokr(at)gmail(dot)com | 
| Cc: | shigeru(dot)hanada(at)gmail(dot)com, mmoncure(at)gmail(dot)com, pgsql-hackers(at)postgresql(dot)org, greg(at)2ndquadrant(dot)com | 
| Subject: | Re: Speed dblink using alternate libpq tuple storage | 
| Date: | 2012-02-16 08:49:34 | 
| Message-ID: | 20120216.174934.80061891.horiguchi.kyotaro@oss.ntt.co.jp | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
Hello,
 I added the function PQskipRemainingResult() and use it in
dblink. This reduces the number of executing try-catch block from
the number of rows to one per query in dblink.
- fe-exec.c : new function PQskipRemainingResult.
- dblink.c  : using PQskipRemainingResult in dblink_record_internal().
- libpq.sgml: documentation for PQskipRemainingResult and related
              change in RowProcessor.
> Instead I added simple feature: rowProcessor can return '2',
> in which case getAnotherTuple() does early exit without setting
> any error state.  In user side it appears as PQisBusy() returned
> with TRUE result.  All pointers stay valid, so callback can just
> stuff them into some temp area.
...
> It's included in main patch, but I also attached it as separate patch
> so that it can be examined separately and reverted if not acceptable.
This patch is based on the patch above and composed in the same
manner - main three patches include all modifications and the '2'
patch separately.
This patch is not rebased to the HEAD because the HEAD yields
error about the symbol LEAKPROOF...
regards,
-- 
Kyotaro Horiguchi
NTT Open Source Software Center
| Attachment | Content-Type | Size | 
|---|---|---|
| libpq_rowproc_20120216.patch | text/x-patch | 75.4 KB | 
| libpq_rowproc_doc_20120216.patch | text/x-patch | 8.3 KB | 
| dblink_use_rowproc_20120216.patch | text/x-patch | 12.5 KB | 
| early_exit_20120216.diff | text/x-patch | 1.9 KB | 
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Dave Page | 2012-02-16 08:56:25 | Re: Google Summer of Code? Call for mentors. | 
| Previous Message | Marko Kreen | 2012-02-16 08:17:21 | Re: Speed dblink using alternate libpq tuple storage |