hashicorp / consul

Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
https://www.consul.io
Other
28.4k stars 4.43k forks source link

connect: allow for multiple config entries to be modified in a single transaction #6247

Open rboyer opened 5 years ago

rboyer commented 5 years ago

Consul 1.6.0 enforces various constraints on the config entries used in the discovery chain. When a config entry modification is attempted, that change is vetted against the rest of the config entries and any possible discovery chain involved. This prevents changes that would otherwise break the data model.

There are situations where it becomes hard if not impossible to edit config entries after creation if only a single config entry is allowed to be modified at a time. For example:

  1. create service-resolver:a with redirect { service = "b" }
  2. create service-defaults:a with protocol = "grpc"

Step 2 fails because b is still tcp. You can't set b to grpc because it would break for the same reason. This could be sidestepped if multiple changes could be submitted in the same transaction.

stale[bot] commented 4 years ago

Hey there, We wanted to check in on this request since it has been inactive for at least 60 days. If you think this is still an important issue in the latest version of Consul or its documentation please reply with a comment here which will cause it to stay open for investigation. If there is still no activity on this issue for 30 more days, we will go ahead and close it.

Feel free to check out the community forum as well! Thank you!

tjhiggins commented 3 years ago

@rboyer This would be huge if we could bulk write intentions. Are there any plans to support?