Skip to content

v1.0.0-rc.0

Compare
Choose a tag to compare
@rallen090 rallen090 released this 09 Nov 22:23
· 1054 commits to master since this release
c6a256d

Changelog

Official M3 1.0 release candidate

1.0.0

Features

  • M3DB: Namespace resolution and retention now configured dynamically via API and stored in etcd instead of being defined statically in M3Coordinator configuration.
message DatabaseCreateRequest {
  // ...

  // Optional aggregated namespace to create in 
  // addition to unaggregated namespace
  AggregatedNamespace aggregated_namespace = 8;
}
  • M3DB: Minimal configuration file with default settings looks like:
coordinator: {}
db: {}

and includes common settings such as global query limits.

Backwards Incompatible Changes

Configuration

  • M3DB: db.bootstrap.bootstrappers removed
  • M3DB: db.config nested under db.discovery.config (discovery can optionally accept different types of defaults instead of a custom config)
  • M3Coordinator: cluster.namespaces.storageMetricsType removed
  • M3Coordinator: tagOptions.tagOptions no longer supports legacy type
  • M3Query: limits.perQuery.maxComputedDatapoints removed
  • M3Query: limits.perQuery.maxFetchedDatapoints removed
  • M3Query: limits.global.maxFetchedDatapoints removed
  • M3Query: cache removed
  • M3Query: listenAddress changed to always be resolved as a string from config. Format changed from
listenAddress:
  config: "..."
  value: "..."

to

listenAddress: "..."

API

  • M3DB: /services/m3db/database/config/bootstrappers dynamic bootstappers endpoint removed
  • M3Coordinator: Removed deprecated URL /api/v1/namespace in favor of stable preferred URL /api/v1/services/m3db/namespace
  • M3Coordinator: Removed deprecated URL /api/v1/namespace/init in favor of stable preferred URL /api/v1/services/m3db/namespace/init
  • M3Coordinator: Removed deprecated URL /api/v1/namespace/unagg in favor of stable preferred URL /api/v1/services/m3db/namespace/unagg
  • M3Coordinator: Removed deprecated URL /api/v1/placement in favor of stable preferred URL /api/v1/services/m3db/placement
  • M3Coordinator: Removed deprecated URL /api/v1/placement/init in favor of stable preferred URL /api/v1/services/m3db/placement/init

Package

  • github.com/m3db/m3/src/x/close removed in favor of github.com/m3db/m3/src/x/resource
  • github.com/m3db/m3/src/dbnode/clock removed in favor of github.com/m3db/m3/src/x/clock
  • github.com/m3db/m3/src/x/dice/dice.go moved to github.com/m3db/m3/src/dbnode/storage/dice.go
  • github.com/m3db/m3/src/x/lockfile/lockfile.go moved to github.com/m3db/m3/src/dbnode/server/lockfile.go

Misc

  • M3Query: Concept of data point limit enforcers removed in favor of the other remaining query limits (e.g. max series). This also removed metrics cost_reporter_datapoints, cost_reporter_datapoints_counter, and cost_reporter_over_datapoints_limit.
  • Linter enabled