storj/satellite/orders
Jeff Wendling 85a74b47e7 satellite/orders: 3-phase rollout
This adds a config flag orders.window-endpoint-rollout-phase
that can take on the values phase1, phase2 or phase3.

In phase1, the current orders endpoint continues to work as
usual, and the windowed orders endpoint uses the same backend
as the current one (but also does a bit extra).

In phase2, the current orders endpoint is disabled and the
windowed orders endpoint continues to use the same backend.

In phase3, the current orders endpoint is still disabled and
the windowed orders endpoint uses the new backend that requires
much less database traffic and state.

The intention is to deploy in phase1, roll out code to nodes
to have them use the windowed endpoint, switch to phase2, wait
a couple days for all existing orders to expire, then switch
to phase3.

Additionally, it fixes a bug where a node could submit a bunch
of orders and rack up charges for a bucket.

Change-Id: Ifdc10e09ae1645159cbec7ace687dcb2d594c76d
2020-08-03 17:01:42 +00:00
..
encryptionkey_test.go satellite/orders: add EncryptionKey encryption 2020-07-13 16:10:19 +00:00
encryptionkey.go satellite/orders: add EncryptionKey encryption 2020-07-13 16:10:19 +00:00
endpoint_test.go satellite/orders: 3-phase rollout 2020-08-03 17:01:42 +00:00
endpoint.go satellite/orders: 3-phase rollout 2020-08-03 17:01:42 +00:00
orders_test.go satellite/orders: add buckets db to service 2020-07-24 17:36:49 +03:00
rollups_chore.go satellite/orders: Flush all pending bandwidth rollup writes on shutdown 2020-01-23 08:12:41 -07:00
rollups_write_cache_test.go satellite/orders: add settled amount to rollups write cache 2020-07-07 14:46:06 +00:00
rollups_write_cache.go all: fix dots 2020-07-16 14:58:28 +00:00
serials_test.go satellite: remove some unnecessary UTC() calls 2020-03-13 13:49:44 +00:00
service.go satellite/orders: 3-phase rollout 2020-08-03 17:01:42 +00:00
window_endpoint_phase.go satellite/orders: 3-phase rollout 2020-08-03 17:01:42 +00:00