summaryrefslogtreecommitdiff
path: root/web/src/App.jsx
diff options
context:
space:
mode:
authorTobias Henkel <tobias.henkel@bmw.de>2019-06-03 20:30:35 +0200
committerTobias Henkel <tobias.henkel@bmw.de>2019-06-11 10:38:51 +0200
commit1fab39cc4b131505adc23d19faf112981f122f01 (patch)
tree852a54f1961b0a753be85042253df046e0027830 /web/src/App.jsx
parent48c049db793e4b508063d1a85d08c7418761c554 (diff)
downloadzuul-1fab39cc4b131505adc23d19faf112981f122f01.tar.gz
Parallelize github event processing
The GitHub driver does an event pre processing before adding a trigger event to the scheduler. This is currently done single threaded to ensure that the trigger events are enqueued in order into the scheduler. A problem is that this pre processing can take a few seconds which limits the rate of events we can process. In order to parallelize this while keeping the order of the trigger events we need to do two things. We keep consuming the event queue single threaded but instead of processing and forwarding them directly to the scheduler we process them in a thread pool and put the futures into a result queue. This second queue can then again be processed single threaded and maintains the correct ordering of the events. Second updating the change cache currently assumes that it runs single threaded. In order to avoid data races we need to lock this by the change. Change-Id: I08f31b99e2a58e51cef0de89edd98c957d7db87f
Diffstat (limited to 'web/src/App.jsx')
0 files changed, 0 insertions, 0 deletions