Having tried to use the OSGi whiteboard servlet, I'm experiencing very poor performance of the schema construction. Each time a GraphGLProvider is registered with the whiteboard it rebuilds the complete schema. The way our app is constructed this happens many times.
We had the same problem with the JAX-RS whiteboard implementation originally, and a sensible solution was to implement a delay before the application was republished. This has the effect of batching up all of the updates that happen during application initialisation, whilst still allowing new providers to be registered later if necessary.
I will make a change, and if it works provide a PR.