Jump to: navigation, search

Difference between revisions of "Trove/minor-config-edits"

m (Database)
m
Line 1: Line 1:
 
== Description ==
 
== Description ==
  
To improve the user experience for configuration edits, we want to add a '''created''' timestamp, '''updated''' timestamp, and '''number of instances''' associated with the configuration group on the list configurations call and list configurations details call.
+
To improve the user experience for configuration edits, we'd like to add a '''created''' timestamp, '''updated''' timestamp, and '''number of instances''' associated with the configuration group on the list configurations call and list configurations details call.
  
Blueprint: TBD
+
Blueprint: https://blueprints.launchpad.net/trove/+spec/minor-config-edits
  
 
== Justification/Benefits ==
 
== Justification/Benefits ==

Revision as of 12:41, 30 May 2014

Description

To improve the user experience for configuration edits, we'd like to add a created timestamp, updated timestamp, and number of instances associated with the configuration group on the list configurations call and list configurations details call.

Blueprint: https://blueprints.launchpad.net/trove/+spec/minor-config-edits

Justification/Benefits

The updated timestamp is a good secondary success indicator for making config edits, as well as serving as a potential time marker for correlating when detrimental config changes were made. It would also help to see how many instances use a particular config and users will be able to see up front how many instances the config changes will effect.

Impacts

Configuration

None

Database

This involves database migration to add created and updated columns of type datetime to the trove/configurations db.

ReST API

(Lines in blue are new.)

The GET /configurations call will return something like this:

{
  "configurations": [
      {
          "id": "12345678-1111-2222-3333-444444444444",
          "name": "Enhanced Performance Settings",
          "description": "Performance Enhancing Settings",
          "datastore_version_id": "8d458990-db80-4569-936e-6b359d664449",
          "instance_count": "1",
          "created": "2014-05-25T21:53:10Z",
          "updated": "2014-05-25T21:53:10Z"
      },
      {
          "id": "11111111-2222-3333-4444-444444444444",
          "name": "Another great configuration group",
          "description": "Super Speed MySQL",
          "datastore_version_id": "8d458990-db80-4569-936e-6b359d664449",
          "instance_count": 0,
          "created": "2014-05-25T21:53:10Z",
          "updated": "2014-05-25T21:53:10Z"
      }
  ]
}

The GET /configurations/{id} call will return something like this:

{
  "configuration": {
      "id": "12345678-1111-2222-3333-444444444444",
      "name": "Enhanced Performance Settings",
      "description": "Performance Enhancing Settings",
      "created": "2012-01-25T21:53:10Z",
      "updated": "2012-01-25T21:53:10Z",
      "values": {
          "ft_min_word_len": "2",
          "key_buffer_size": "300M"
      },
      "instance_count": "1"
  }
}

Comments/Questions From Community