Kaydet (Commit) f7cbfcff authored tarafından Gregory P. Smith's avatar Gregory P. Smith

Use test_support to get network ports to bind to.

üst d1e57152
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
""" """
import os import os
import time
import unittest import unittest
try: try:
...@@ -57,10 +58,12 @@ class DBReplicationManager(unittest.TestCase): ...@@ -57,10 +58,12 @@ class DBReplicationManager(unittest.TestCase):
self.dbenvMaster.set_event_notify(confirmed_master) self.dbenvMaster.set_event_notify(confirmed_master)
self.dbenvClient.set_event_notify(client_startupdone) self.dbenvClient.set_event_notify(client_startupdone)
self.dbenvMaster.repmgr_set_local_site("127.0.0.1",46117) master_port = test_support.find_unused_port()
self.dbenvClient.repmgr_set_local_site("127.0.0.1",46118) self.dbenvMaster.repmgr_set_local_site("127.0.0.1", master_port)
self.dbenvMaster.repmgr_add_remote_site("127.0.0.1",46118) client_port = test_support.find_unused_port()
self.dbenvClient.repmgr_add_remote_site("127.0.0.1",46117) self.dbenvClient.repmgr_set_local_site("127.0.0.1", client_port)
self.dbenvMaster.repmgr_add_remote_site("127.0.0.1", client_port)
self.dbenvClient.repmgr_add_remote_site("127.0.0.1", master_port)
self.dbenvMaster.rep_set_nsites(2) self.dbenvMaster.rep_set_nsites(2)
self.dbenvClient.rep_set_nsites(2) self.dbenvClient.rep_set_nsites(2)
self.dbenvMaster.rep_set_priority(10) self.dbenvMaster.rep_set_priority(10)
...@@ -91,10 +94,9 @@ class DBReplicationManager(unittest.TestCase): ...@@ -91,10 +94,9 @@ class DBReplicationManager(unittest.TestCase):
# The timeout is necessary in BDB 4.5, since DB_EVENT_REP_STARTUPDONE # The timeout is necessary in BDB 4.5, since DB_EVENT_REP_STARTUPDONE
# is not generated if the master has no new transactions. # is not generated if the master has no new transactions.
# This is solved in BDB 4.6 (#15542). # This is solved in BDB 4.6 (#15542).
import time
timeout = time.time()+2 timeout = time.time()+2
while (time.time()<timeout) and not (self.confirmed_master and self.client_startupdone) : while (time.time()<timeout) and not (self.confirmed_master and self.client_startupdone) :
time.sleep(0.001) time.sleep(0.02)
if db.version() >= (4,6) : if db.version() >= (4,6) :
self.assertTrue(time.time()<timeout) self.assertTrue(time.time()<timeout)
else : else :
...@@ -103,14 +105,14 @@ class DBReplicationManager(unittest.TestCase): ...@@ -103,14 +105,14 @@ class DBReplicationManager(unittest.TestCase):
d = self.dbenvMaster.repmgr_site_list() d = self.dbenvMaster.repmgr_site_list()
self.assertEquals(len(d), 1) self.assertEquals(len(d), 1)
self.assertEquals(d[0][0], "127.0.0.1") self.assertEquals(d[0][0], "127.0.0.1")
self.assertEquals(d[0][1], 46118) self.assertEquals(d[0][1], client_port)
self.assertTrue((d[0][2]==db.DB_REPMGR_CONNECTED) or \ self.assertTrue((d[0][2]==db.DB_REPMGR_CONNECTED) or \
(d[0][2]==db.DB_REPMGR_DISCONNECTED)) (d[0][2]==db.DB_REPMGR_DISCONNECTED))
d = self.dbenvClient.repmgr_site_list() d = self.dbenvClient.repmgr_site_list()
self.assertEquals(len(d), 1) self.assertEquals(len(d), 1)
self.assertEquals(d[0][0], "127.0.0.1") self.assertEquals(d[0][0], "127.0.0.1")
self.assertEquals(d[0][1], 46117) self.assertEquals(d[0][1], master_port)
self.assertTrue((d[0][2]==db.DB_REPMGR_CONNECTED) or \ self.assertTrue((d[0][2]==db.DB_REPMGR_CONNECTED) or \
(d[0][2]==db.DB_REPMGR_DISCONNECTED)) (d[0][2]==db.DB_REPMGR_DISCONNECTED))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment