update_introspection_data fails with traceback on second run with the same sim_engine
Closed this issue · 3 comments
jbaublitz commented
The first run completes successfully but the second run fails. I'm slightly confused because I would think our idempotent API would prevent this kind of failure. Here is the traceback:
Traceback (most recent call last):
File "./developer_tools/update_introspection_data", line 172, in <module>
main()
File "./developer_tools/update_introspection_data", line 139, in main
blockdev_proxy = bus.get_object(_SERVICE, dev_object_paths[0], introspect=False)
IndexError: list index out of range
Restarting the sim_engine fixes the problem consistently.
mulkieran commented
We actually discussed this a bit ago. It fails, because on CreatePool if the result the engine returns is Idenity, the D-Bus returns the default D-Bus result which is, among other things, object path "/". So, it's really related a bit to stratis-storage/project#186 and general questions about idempotency.
jbaublitz commented
Okay, now I think I remember. Should I close this out as it should be resolved once I do an audit of the idempotence concerns linked above?
mulkieran commented
That seems good.