Hi all, we developed some automation to create Cobbler system records automatically (using
the XMLRPC API), but we're finding that performance drops drastically as the number of
records scales up. Using a benchmark script to generate records sequentially, we see that
the creation time goes from a starting average of 2 seconds to 20 seconds at about 500
records, and at the end of a long run (~1000 records) we can see creation times as high as
150s.
Logs indicate that the internal consistency check that Cobbler performs to prevent dupes
is creating a *lot* of overhead. The constant resizing of the dictionary that contains
all system records seems to be the issue. We saw no difference in performance between 2.4
and 2.6, despite the API request queuing improvements in 2.6.
Has anyone else come across this? Currently I'm working with pprofile to try to get
more detail on the bottleneck, and will follow up here. Any/all experiences, suggestions
welcome.
Thanks,
Tony