how to update my scene graph?
A few more options:


don't use a scenegraph. They don't map well to the data a gpu needs for rendering. A flat array of object tends to work much better for the cache as well
separate the scenegraph into render-related data and non-render-related data. Then only double buffer the render-related data. 

The render related data would end up in a flat array containing per rendered object: reference to the mesh, the final model matrix, a reference to the texture


Flat arrays are much easier to double buffer than node-based data structures.