End node request span when result event is sent
The node request span needs to be ended whenever we add a result event to the pipeline. Before we only did that when iterating over the node requests after we've won the nodepool election. Change-Id: I0276d5498b243522540657352a733d663ae71918
This commit is contained in:
parent
30c725ff6e
commit
d864d83ade
@ -193,11 +193,14 @@ class TestTracing(ZuulTestCase):
|
||||
self.log.debug("Received:\n%s", item)
|
||||
merge_job = self.getSpan('Merge')
|
||||
self.log.debug("Received:\n%s", merge_job)
|
||||
node_request = self.getSpan('RequestNodes')
|
||||
self.log.debug("Received:\n%s", node_request)
|
||||
build = self.getSpan('Build')
|
||||
self.log.debug("Received:\n%s", build)
|
||||
jobexec = self.getSpan('JobExecution')
|
||||
self.log.debug("Received:\n%s", jobexec)
|
||||
self.assertEqual(item.trace_id, buildset.trace_id)
|
||||
self.assertEqual(item.trace_id, node_request.trace_id)
|
||||
self.assertEqual(item.trace_id, build.trace_id)
|
||||
self.assertNotEqual(item.span_id, jobexec.span_id)
|
||||
self.assertTrue(buildset.start_time_unix_nano >=
|
||||
@ -210,6 +213,8 @@ class TestTracing(ZuulTestCase):
|
||||
buildset.end_time_unix_nano)
|
||||
self.assertEqual(jobexec.parent_span_id,
|
||||
build.span_id)
|
||||
self.assertEqual(node_request.parent_span_id,
|
||||
buildset.span_id)
|
||||
self.assertEqual(build.parent_span_id,
|
||||
buildset.span_id)
|
||||
self.assertEqual(merge_job.parent_span_id,
|
||||
|
@ -84,6 +84,10 @@ class Nodepool(object):
|
||||
del self.election
|
||||
|
||||
def _sendNodesProvisionedEvent(self, request):
|
||||
tracing.endSavedSpan(request.span_info, attributes={
|
||||
"request_id": request.id,
|
||||
"state": request.state,
|
||||
})
|
||||
tenant_name = request.tenant_name
|
||||
pipeline_name = request.pipeline_name
|
||||
event = model.NodesProvisionedEvent(request.id, request.build_set_uuid)
|
||||
@ -101,10 +105,6 @@ class Nodepool(object):
|
||||
continue
|
||||
if (request.state in {model.STATE_FULFILLED,
|
||||
model.STATE_FAILED}):
|
||||
tracing.endSavedSpan(request.span_info, attributes={
|
||||
"request_id": request.id,
|
||||
"state": request.state,
|
||||
})
|
||||
self._sendNodesProvisionedEvent(request)
|
||||
# Now resume normal event processing.
|
||||
self.stop_watcher_event.wait()
|
||||
|
Loading…
x
Reference in New Issue
Block a user