View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000021 | Pgpool-II | Bug | public | 2012-08-17 16:31 | 2012-10-02 10:14 |
| Reporter | elisechiang | Assigned To | t-ishii | ||
| Priority | immediate | Severity | major | Reproducibility | always |
| Status | resolved | Resolution | open | ||
| Platform | pgpool II 3.2.0 | OS | centos | OS Version | 6.2 |
| Summary | 0000021: pgpool-II 3.2.0 cannot execute sql through jdbc | ||||
| Description | Hi! I can usr pgAdmin III acess pgpool, but I cannot execute sql on pgpool through jdbc. The following message is the jdbc return message and please see the attached pgpool.log file. Thanks. Size in bytes: 31 Headers size in bytes: 0 Body size in bytes: 31 Response code: ut 08006 0 Response message: org.postgresql.util.PSQLException: An I/O error occured while sending to the backend Response headers: org.postgresql.jdbc4.Jdbc4Connection@7b543662 ContentType: text/plain DataEncoding: UTF-8 | ||||
| Additional Information | postgresql-8.4.12-1.el6_2.x86_64 2 backends ,db locale : zh_TW.UTF-8 pgpool II 3.2.0 jdbc driver : postgresql-8.4-703.jdbc4.jar | ||||
| Tags | No tags attached. | ||||
|
|
|
|
|
If you are operating in replication mode, I think it was already fixed in 3.1-STABLE tree. http://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=479e9d1416ff0294519e9155084bc1d60c75c850 Please try it. |
|
|
i have the same issue in 3.2, 3.1-STABLE works though |
|
|
Oops. What I meant was 3.2-STABLE tree, not 3.1-STABLE. Please try 3.2-STABLE. |
|
|
I just tried with 3.2-STABLE but same error persists, however 3.1-STABLE still works |
|
|
Can someone please upload pgpool-II 3.1 log with debug mode enabled? 3.2.0 log has been already uploaded and I want to compare them. |
|
|
|
|
|
i uploaded pgpool-1.log pardon me for the size, the difference i observed in in 3.2 the exception gets thrown even while the query is being executed |
|
|
I think you turn on log_per_node_statement with pgpool-II 3.2. If you turn it off , do you still see the exception? |
|
|
the problem is with cache, i tried both memcached and shmem, if i turn cache on, it doesn't work if i turn off the cache, 3.2 works perfect |
|
|
Ok. I seem to find the problem. Parse(), which is in charge of processing parse message, is given parse message packet contents as an argument. Unfortunately the argument is in pool_read2 buffer, which can be modified while Parse() is doing on memory query cache treatment. Thus subsequent process in Parse() looks into unexpected data and segfaults. If memory cache enabled, this does not happen. The fix is copying packet contents before calling Parse(). Please try attached patch(memqcache.patch). |
|
|
|
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2012-08-17 16:31 | elisechiang | New Issue | |
| 2012-08-17 16:31 | elisechiang | File Added: pgpool.log | |
| 2012-08-24 15:58 | t-ishii | Note Added: 0000052 | |
| 2012-08-24 15:58 | t-ishii | Assigned To | => t-ishii |
| 2012-08-24 15:58 | t-ishii | Status | new => assigned |
| 2012-09-20 23:00 | gowthamanb | Note Added: 0000084 | |
| 2012-09-20 23:45 | t-ishii | Note Added: 0000085 | |
| 2012-09-21 01:15 | gowthamanb | Note Added: 0000086 | |
| 2012-09-21 13:56 | t-ishii | Note Added: 0000087 | |
| 2012-09-22 00:27 | gowthamanb | File Added: pgpool-1.log | |
| 2012-09-22 00:29 | gowthamanb | Note Added: 0000088 | |
| 2012-09-23 20:22 | t-ishii | Note Added: 0000089 | |
| 2012-09-23 22:15 | gowthamanb | Note Added: 0000090 | |
| 2012-09-29 20:55 | t-ishii | Note Added: 0000101 | |
| 2012-09-29 20:56 | t-ishii | File Added: memqcache.patch | |
| 2012-10-02 10:14 | t-ishii | Status | assigned => resolved |