BIND 10 trac2856, updated. 786a742bc321666586ee923cf15e2d2624ddee42 [2856] With no readers, make complete_update() from UPDATING go directly to READY
BIND 10 source code commits
bind10-changes at lists.isc.org
Thu Jul 25 12:37:41 UTC 2013
The branch, trac2856 has been updated
via 786a742bc321666586ee923cf15e2d2624ddee42 (commit)
from 4f96d3ab2e65356e9cb778ba140a9b8793f8e879 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 786a742bc321666586ee923cf15e2d2624ddee42
Author: Mukund Sivaraman <muks at isc.org>
Date: Thu Jul 25 18:06:49 2013 +0530
[2856] With no readers, make complete_update() from UPDATING go directly to READY
-----------------------------------------------------------------------
Summary of changes:
src/lib/python/isc/memmgr/datasrc_info.py | 2 +-
.../python/isc/memmgr/tests/datasrc_info_tests.py | 12 ++++++++++++
2 files changed, 13 insertions(+), 1 deletion(-)
-----------------------------------------------------------------------
diff --git a/src/lib/python/isc/memmgr/datasrc_info.py b/src/lib/python/isc/memmgr/datasrc_info.py
index 763176a..9b1516b 100644
--- a/src/lib/python/isc/memmgr/datasrc_info.py
+++ b/src/lib/python/isc/memmgr/datasrc_info.py
@@ -169,7 +169,7 @@ class SegmentInfo:
self.__state = self.SYNCHRONIZING
self.__old_readers = self.__readers
self.__readers = set()
- return self.__sync_reader_helper(self.SYNCHRONIZING)
+ return self.__sync_reader_helper(self.READY)
elif self.__state == self.COPYING:
self.__state = self.READY
return None
diff --git a/src/lib/python/isc/memmgr/tests/datasrc_info_tests.py b/src/lib/python/isc/memmgr/tests/datasrc_info_tests.py
index 845d246..538f375 100644
--- a/src/lib/python/isc/memmgr/tests/datasrc_info_tests.py
+++ b/src/lib/python/isc/memmgr/tests/datasrc_info_tests.py
@@ -175,6 +175,18 @@ class TestSegmentInfo(unittest.TestCase):
self.assertIsNone(e) # old_readers is not empty
self.assertEqual(self.__sgmt_info.get_state(), SegmentInfo.SYNCHRONIZING)
+ # c) with no readers, complete_update() from UPDATING must go
+ # directly to READY state
+ self.__si_to_ready_state()
+ self.__sgmt_info.add_event((42,))
+ e = self.__sgmt_info.start_update()
+ self.assertTupleEqual(e, (42,))
+ self.assertSetEqual(self.__sgmt_info.get_readers(), set())
+ self.assertEqual(self.__sgmt_info.get_state(), SegmentInfo.UPDATING)
+ e = self.__sgmt_info.complete_update()
+ self.assertTupleEqual(e, (42,))
+ self.assertEqual(self.__sgmt_info.get_state(), SegmentInfo.READY)
+
# in SYNCHRONIZING state
self.__si_to_synchronizing_state()
self.assertRaises(SegmentInfoError, self.__sgmt_info.complete_update)
More information about the bind10-changes
mailing list