hashicorp / hashicorp/consul

ServiceEnableTagOverride temporarily false after updating tags via catalog

Open
#2,413 0 comments 0 reactions 0 assignees View on GitHub
theme/service-metadata type/bug
Dominant language
Go
Stars
30.1k
Forks
4.6k
Avg merge
1d 18h
Merged PRs (30d)
39

Description

Client: `0.7.0`
Server: `0.7.0`
### `consul info` for both Client and Server

Client:

```
agent:
check_monitors = 0
check_ttls = 0
checks = 40
services = 40
build:
prerelease =
revision = 'a189091
version = 0.7.0
consul:
known_servers = 3
server = false
runtime:
arch = amd64
cpu_count = 24
goroutines = 75
max_procs = 24
os = linux
version = go1.6.3
serf_lan:
encrypted = false
event_queue = 0
event_time = 1322
failed = 0
health_score = 0
intent_queue = 0
left = 0
member_time = 203710
members = 16
query_queue = 0
query_time = 1848
```

Server:

```
agent:
check_monitors = 0
check_ttls = 0
checks = 1
services = 2
build:
prerelease =
revision = 'a189091
version = 0.7.0
consul:
bootstrap = false
known_datacenters = 23
leader = false
leader_addr = 10.28.188.52:8300
server = true
raft:
applied_index = 25315303
commit_index = 25315303
fsm_pending = 0
last_contact = 67.123638ms
last_log_index = 25315303
last_log_term = 1511
last_snapshot_index = 25309666
last_snapshot_term = 1511
latest_configuration = [{Suffrage:Voter ID:10.28.188.52:8300 Address:10.28.188.52:8300} {Suffrage:Voter ID:10.28.188.51:8300 Address:10.28.188.51:8300} {Suffrage:Voter ID:10.28.188.57:8300 Address:10.28.188.57:8300}]
latest_configuration_index = 24077016
num_peers = 2
protocol_version = 1
protocol_version_max = 3
protocol_version_min = 0
snapshot_version_max = 1
snapshot_version_min = 0
state = Follower
term = 1511
runtime:
arch = amd64
cpu_count = 2
goroutines = 1413
max_procs = 2
os = linux
version = go1.6.3
serf_lan:
encrypted = false
event_queue = 0
event_time = 1322
failed = 0
health_score = 0
intent_queue = 0
left = 0
member_time = 203687
members = 16
query_queue = 0
query_time = 1848
serf_wan:
encrypted = false
event_queue = 0
event_time = 1
failed = 0
health_score = 0
intent_queue = 0
left = 0
member_time = 1270
members = 103
query_queue = 0
query_time = 1
```
### Operating system and Environment details

CentOS Linux release 7.1.1503 (Core)
### Description of the Issue (and unexpected/desired result)
- ServiceEnableTagOverride is set true
- When updating tags via the catalog ServiceEnableTagOverride becomes false, until presumably the agent syncs, even when EnableTagOverride: true is set in the payload to the catalog.
- Can't update again until ServiceEnableTagOverride becomes true
### Reproduction steps
- Create service
- Update tags
- Try to update tags immediately after, get rejected.

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the catalog service update sequence described: create a service, update its tags, and immediately attempt a second update. Trace the catalog update path involving ServiceEnableTagOverride and EnableTagOverride; done means tag updates are not rejected during the temporary false state.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
api, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.