openservicebrokerapi / osb-checker

An automatic checker to verify an Open Service Broker API implementation against the specification
https://github.com/openservicebrokerapi/servicebroker/
Apache License 2.0
48 stars 40 forks source link

Synchronous response to client who advertises accepts_incomplete #10

Open jim-minter opened 6 years ago

jim-minter commented 6 years ago

I think that reading the spec, it is permitted (implementation specific) for a broker with asynchronous capabilities to decide to send a synchronous provision/deprovision response to a client, regardless of whether the client advertises accepts_incomplete or not. I think that at the moment osb-checker doesn't bear this in mind.

leonwanghui commented 5 years ago

@norshtein @zhongyi-zhang Any thought?

zhongyi-zhang commented 5 years ago

That's true. But I think the checker does allow async or sync response. Provision: https://github.com/openservicebrokerapi/osb-checker/blob/master/2.13/tests/test/test.js#L237 Deprovision: https://github.com/openservicebrokerapi/osb-checker/blob/master/2.13/tests/test/test.js#L501 And async bind is not yet supported in OSB API 2.13.

Is there anything I missed?

leonwanghui commented 5 years ago

From my perspective, here is the current sync/async support matrix:

Broker Support Config accept_incomplete Result
async sync false -
async async true ✔️
sync sync false ✔️
sync async true ✔️

So I think what @jim-minter trying to express is we should support the first option because logically it's right but according to spec Service Brokers that cannot guarantee completion of the operation with the response SHOULD implement the asynchronous response, IMO it's broker authors' duty to guarantee the consistency between broker capabilities and config file.

Any thought?