stratis-storage/stratis-cli

update_introspection_data fails with traceback on second run with the same sim_engine

Closed this issue · 3 comments

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.

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.

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?

That seems good.