You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We stream-load all recordings and blueprints into a StoreBundle, which indices the stores based on StoreId.
This means that if we load a blueprint with the same StoreId as the current active one, we will progressively stream into the active blueprint, which can cause havoc on it. We only want to make a blueprint active once it is fully loaded.
A repro of this is to save a blueprint file, drag-drop it into the viewer, then drag-drop it once again into the viewer.
Current work-around
Each blueprint gets assigned a random store_id on save, which makes the chance of a store-id collision small.
There is also a warning printed if we still run into the problem.
Solutions A (the bad one)
Change store_id of blueprints as they load, or once they finish loading to something new and random.
Solution B (the slightly better one)
While loading blueprints, store then outside the main StoreHub/StoreBundle. Once they finish loading, move them into the main StoreHub.
Note that data recordings should still go into the main StoreHub because we stream those in.
The text was updated successfully, but these errors were encountered:
We stream-load all recordings and blueprints into a StoreBundle, which indices the stores based on StoreId.
This means that if we load a blueprint with the same StoreId as the current active one, we will progressively stream into the active blueprint, which can cause havoc on it. We only want to make a blueprint active once it is fully loaded.
A repro of this is to save a blueprint file, drag-drop it into the viewer, then drag-drop it once again into the viewer.
Current work-around
Each blueprint gets assigned a random store_id on save, which makes the chance of a store-id collision small.
There is also a warning printed if we still run into the problem.
Solutions A (the bad one)
Change store_id of blueprints as they load, or once they finish loading to something new and random.
Solution B (the slightly better one)
While loading blueprints, store then outside the main StoreHub/StoreBundle. Once they finish loading, move them into the main StoreHub.
Note that data recordings should still go into the main StoreHub because we stream those in.
The text was updated successfully, but these errors were encountered: