openservicebrokerapi / servicebroker

Open Service Broker API Specification
https://openservicebrokerapi.org/
Apache License 2.0
1.19k stars 436 forks source link

Service Brokers SHOULD remember the state of an operation for a reasonable +amount of time #680

Closed mattmcneeney closed 5 years ago

mattmcneeney commented 5 years ago

What is the problem this PR solves? Closes #359. Obviously, a reasonable amount of time is up for debate. I'm not sure if this is a bad idea or not, especially for a specification!

Checklist:

cfdreddbot commented 5 years ago

:white_check_mark: Hey mattmcneeney! The commit authors and yourself have already signed the CLA.

waterlink commented 5 years ago

@mattmcneeney

About “reasonable time.”

Right now, CF will poll the last_operation endpoint in the worst case scenario every 24h (when Retry-After header is 24h or more) when there is an operation in progress. Any of the successful polls will be recorded in CF DB.

It feels to me like “reasonable time” should be on the same order of magnitude minimum.

So a minimum of 72h perhaps makes sense.

Or did you have in mind an entirely different order of magnitude (like months or years)?

mattmcneeney commented 5 years ago

@waterlink Good point. Since Platforms (CF/k8s) will likely have different magnitudes, my original thought was to leave this a little vague, but I'm guessing that you think this is a potentially bad idea!

@jberkhahn any thoughts from svc-cat?

jberkhahn commented 5 years ago

seems fine. svc-cat is currently hardcoded to retry for 7 days with an exponential backoff.

mattmcneeney commented 5 years ago

We discussed this on today's call. 'Reasonable' is too subjective. Let's change this to:

Service Brokers SHOULD NOT forget the state of an operation immediately after returning a "succeeded" or "failed" state in case the Platform needs to ask again.

mattmcneeney commented 5 years ago

PR updated!