Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inconsistent behavior using consistency level [Session] when creating cosmos db account #4118

Closed
smartpcr opened this issue Aug 19, 2019 · 3 comments · Fixed by #4273
Closed

Comments

@smartpcr
Copy link

Community Note

  • Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
  • Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
  • If you are interested in working on this issue or have submitted a pull request, please leave a comment

Terraform (and AzureRM Provider) Version

v0.12.6

Affected Resource(s)

azurerm_cosmosdb_account

Terraform Configuration Files

  • main.tf
resource "azurerm_resource_group" "cosmosdb" {
  name     = "${var.resource_group_name}"
  location = "${var.location}"
}

resource "azurerm_cosmosdb_account" "cosmosdb_account" {
  name                      = "${var.cosmos_db_account}"
  location                  = "${azurerm_resource_group.cosmosdb.location}"
  resource_group_name       = "${azurerm_resource_group.cosmosdb.name}"
  offer_type                = "${var.cosmos_db_offer_type}"
  kind                      = "GlobalDocumentDB"
  enable_automatic_failover = true
  ip_range_filter           = "${var.enable_filewall ? "${var.allowed_ip_ranges}" : ""}"

  consistency_policy {
    consistency_level       = "Session"
    max_interval_in_seconds = 300
    max_staleness_prefix    = 100000
  }

  geo_location {
    prefix            = "${var.cosmos_db_account}-customid"
    location          = "${azurerm_resource_group.cosmosdb.location}"
    failover_priority = 0
  }

  geo_location {
    location          = "${var.alt_location}"
    failover_priority = 1
  }
}

resource "azurerm_cosmosdb_sql_database" "sqldb" {
  name                = "${var.cosmos_db_name}"
  resource_group_name = "${azurerm_cosmosdb_account.cosmosdb_account.resource_group_name}"
  account_name        = "${azurerm_cosmosdb_account.cosmosdb_account.name}"
}

Expected Behavior

Should not need to specify the following variables when using Session consistency level:

  • max_interval_in_seconds
  • max_staleness_prefix

Actual Behavior

It complains that max_staleness_prefix needs to be greater then 100000 and max_interval_in_seconds needs to be greater then 300

After change the values to 100000 and 300, re-apply changes, it then detect the values should be changed from defaults:

  • max_interval_in_seconds = 5 -> 300
  • max_staleness_prefix = 100 -> 100000

Note: The above change was never applied (after 20 min)

@smartpcr smartpcr changed the title Inconsistent behavior when applying consistency level Session in azurerm_cosmosdb_account Inconsistent behavior using consistency level [Session] when creating cosmos db account Aug 19, 2019
@peterbev
Copy link

peterbev commented Sep 3, 2019

The issue appears to occur whenever there are multiple geo locations configured, provider insists on max_staleness_prefix and max_interval_in_seconds being set to the minimums required for BoundedStaleness

@ghost
Copy link

ghost commented Sep 18, 2019

This has been released in version 1.34.0 of the provider. Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading. As an example:

provider "azurerm" {
    version = "~> 1.34.0"
}
# ... other configuration ...

@ghost
Copy link

ghost commented Oct 10, 2019

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.

If you feel this issue should be reopened, we encourage creating a new issue linking back to this one for added context. If you feel I made an error 🤖 🙉 , please reach out to my human friends 👉 [email protected]. Thanks!

@ghost ghost locked and limited conversation to collaborators Oct 10, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.