diff options
| -rw-r--r-- | bitbake/lib/prserv/serv.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/bitbake/lib/prserv/serv.py b/bitbake/lib/prserv/serv.py index 25eb46a410..a7639c8c2d 100644 --- a/bitbake/lib/prserv/serv.py +++ b/bitbake/lib/prserv/serv.py | |||
| @@ -77,12 +77,15 @@ class PRServer(SimpleXMLRPCServer): | |||
| 77 | 77 | ||
| 78 | """ | 78 | """ |
| 79 | iter_count = 1 | 79 | iter_count = 1 |
| 80 | # With 60 iterations between syncs and a 0.5 second timeout between | 80 | # 60 iterations between syncs or sync if dirty every ~30 seconds |
| 81 | # iterations, this will sync if dirty every ~30 seconds. | ||
| 82 | iterations_between_sync = 60 | 81 | iterations_between_sync = 60 |
| 83 | 82 | ||
| 84 | while True: | 83 | while not self.quit: |
| 85 | (request, client_address) = self.requestqueue.get() | 84 | try: |
| 85 | (request, client_address) = self.requestqueue.get(True, 30) | ||
| 86 | except Queue.Empty: | ||
| 87 | self.table.sync_if_dirty() | ||
| 88 | continue | ||
| 86 | try: | 89 | try: |
| 87 | self.finish_request(request, client_address) | 90 | self.finish_request(request, client_address) |
| 88 | self.shutdown_request(request) | 91 | self.shutdown_request(request) |
| @@ -93,6 +96,7 @@ class PRServer(SimpleXMLRPCServer): | |||
| 93 | self.handle_error(request, client_address) | 96 | self.handle_error(request, client_address) |
| 94 | self.shutdown_request(request) | 97 | self.shutdown_request(request) |
| 95 | self.table.sync() | 98 | self.table.sync() |
| 99 | self.table.sync_if_dirty() | ||
| 96 | 100 | ||
| 97 | def process_request(self, request, client_address): | 101 | def process_request(self, request, client_address): |
| 98 | self.requestqueue.put((request, client_address)) | 102 | self.requestqueue.put((request, client_address)) |
| @@ -137,7 +141,7 @@ class PRServer(SimpleXMLRPCServer): | |||
| 137 | self.handlerthread.start() | 141 | self.handlerthread.start() |
| 138 | while not self.quit: | 142 | while not self.quit: |
| 139 | self.handle_request() | 143 | self.handle_request() |
| 140 | 144 | self.handlerthread.join() | |
| 141 | self.table.sync() | 145 | self.table.sync() |
| 142 | logger.info("PRServer: stopping...") | 146 | logger.info("PRServer: stopping...") |
| 143 | self.server_close() | 147 | self.server_close() |
