Discoverd API is somewhat low level. The most important thing is that it does not change node state in Ironic. Instead of calling to discoverd for starting introspection, use node.set_provision_state(uuid, 'inspect'). Introspection status can be followed then by querying node details and looking at provision_state field ('inspecting' while introspection is going on, 'inspectfail' on failure, 'manageable' on success), error message will be in last_error field.
This bug is against a Version which has reached End of Life. If it's still present in supported release (http://releases.openstack.org), please update Version and reopen.