View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000125 | Pgpool-II | Bug | public | 2014-12-24 12:24 | 2015-01-08 17:53 |
| Reporter | qian | Assigned To | nagata | ||
| Priority | normal | Severity | major | Reproducibility | always |
| Status | assigned | Resolution | open | ||
| Platform | x86 | OS | CentOS | OS Version | 6.5 |
| Summary | 0000125: stand for master problem | ||||
| Description | 3 nodes, each node runs pgpool and postgresql in streaming master-slave replication. | ||||
| Steps To Reproduce | Assumes s_1 master node, s_2 candidate node. When s_1 fails, s_2 and s_3 by heartbeat mechanism to detect the state of s_1. When s_2 finds s_1 go down, the master election is triggered, s_2 finds itself is the oldest, it sends a " STAND_FOR_MASTER" message to s_3, s_3 will check whether existence of the master. Because s_3 temporarily doesn't detect s_1 down and think master is there, so s_3 will vote against to s_2. When s_3 detect s_1 down ,s_3 doesn't do anything, because s_3 thinks s_2 is older. | ||||
| Additional Information | Through the s_3 log, I notice wd_is_contactable_master() is triggered all the time when failover is faster than the master election process. so we should let it sleep a while. I have upload the patch, I hope it can help someone. | ||||
| Tags | No tags attached. | ||||