Skip to content

Commit

Permalink
Move mantis-rxcontrol from its own repo to submodule of mantis oss (#667
Browse files Browse the repository at this point in the history
)

* Initial commit for open source.

* Travis setup

* Fix travis badge link.

* Use `-SNAPSHOT` version for OJO publishing

* Clutch now respects UserDefiend metrics, pins high first.

Clutch will now always scale on a UserDefined metric if one is present
in the metrics stream. It will also now pin high for the first config so
as to prevent underscaling while it is learning about the environment.

Also added some additional unit tests for the control loop.
Finally added license headers.

* Fixed some checkStyle violations.

* Clutch: Default rope is now [25.0, 0.0]

* Update committers list.

* Added new ClutchExperimental RPS based implementation.

* ClutchExperimental enters cooldown on cluster size changed.

* ClutchExperimental: Heavily reduced default gain.

Reduced gain by approximately two orders of magnitude but set
proportional to the RPS computed by the instance. There are significant
wins to be had scheduling a more approporiate gain but some thought will
need to go into this process.

* ClutchExperimental: Widened ROPE and decreased KP slightly.

* ClutchExperimental: Can now pass a sketch -> config function if desired.

* ExperimentalControlLoop now uses timer to close size observable to properly unsubscribe.

* ClutchExperimental: Now respects user passed cooldown.

* Updated Lombok to 1.18.12 and set ClutchConfiguration to public access level.

* ClutchExperimental: Reduced gain by three orders of magnitude.

* ClutchExperimental: Lag now uses derivative.

* Added debug output to ExperimentalControlLoop to view autoscaler metrics as the scaler sees them.

* ClutchExperimental: Now passing all sketches to configurator.

* Fix bug on getting dominant resource

* Add assert

* Fix bug worker count reset to initial size every day

* Introduce integral decay factor in PIDController

* Move decay factor to be part of clutch configuration

* Support decay in Integrator

* add more tests

* Add hooks to clutch controlloop

* Make hooks easier to extend

* Add clutch metric enum for source job drop

* Add clutch metric enum for source job drop

* Include sourcejob drop in rps computation

* fix system.out

* Upgrade to modern Gradle/Nebula and replace TravisCI with Github Actions

* Update nebula-publish.yml

* Replace JCenter with Maven Central

* Add staging profile for io.mantisrx

* Fix logging

* Fix bug where current number of worker is incorrect

* add logging

* Updating publish and snapshot workflows

* Update netflixoss plugin version

* Add descriptive stats as a test

* update github actions

* fix snapshot pr target

* Update nebula-publish.yml

* Update nebula-ci.yml

* migrate mantis-rxcontrol from github Netflix/mantis-rxcontrol as a submodule of mantis OSS

* refactor package name

---------

Co-authored-by: Cody Rioux <[email protected]>
Co-authored-by: Rob Spieldenner <[email protected]>
Co-authored-by: Jeff Chao <[email protected]>
Co-authored-by: Calvin Cheung <[email protected]>
Co-authored-by: calvin681 <[email protected]>
Co-authored-by: Roberto Perez Alcolea <[email protected]>
Co-authored-by: Andy Zhang <[email protected]>
  • Loading branch information
8 people authored May 1, 2024
1 parent 22b0a28 commit 46249fa
Show file tree
Hide file tree
Showing 57 changed files with 3,201 additions and 180 deletions.
14 changes: 7 additions & 7 deletions mantis-connectors/mantis-connector-job/dependencies.lock
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.spectator:spectator-api": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -205,7 +205,7 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.spectator:spectator-api": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -394,13 +394,13 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-core": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.rxjava:rxjava-math": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -663,7 +663,7 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.spectator:spectator-api": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -847,13 +847,13 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-core": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.rxjava:rxjava-math": {
"firstLevelTransitive": [
Expand Down
12 changes: 6 additions & 6 deletions mantis-connectors/mantis-connector-publish/dependencies.lock
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.spectator:spectator-api": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -316,13 +316,13 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-core": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.rxjava:rxjava-math": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -543,7 +543,7 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.spectator:spectator-api": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -727,13 +727,13 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-core": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.rxjava:rxjava-math": {
"firstLevelTransitive": [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -255,13 +255,13 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-core": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.rxjava:rxjava-math": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -652,13 +652,13 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-core": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.rxjava:rxjava-math": {
"firstLevelTransitive": [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-core": {
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-guice": {
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.spectator:spectator-api": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -79,13 +79,13 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-core": {
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-guice": {
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.spectator:spectator-api": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -149,35 +149,35 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-core": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core",
"io.mantisrx:mantis-publish-netty",
"io.mantisrx:mantis-publish-netty-guice"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-guice": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-netty-guice"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.spectator:spectator-api": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "1.7.11"
"locked": "1.7.12"
},
"com.netflix.spectator:spectator-ext-ipc": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core",
"io.mantisrx:mantis-publish-netty",
"io.mantisrx:mantis-publish-netty-guice"
],
"locked": "1.7.11"
"locked": "1.7.12"
},
"com.netflix.spectator:spectator-nflx-plugin": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -269,13 +269,13 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-core": {
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-guice": {
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.spectator:spectator-api": {
"firstLevelTransitive": [
Expand Down Expand Up @@ -340,35 +340,35 @@
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-core": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core",
"io.mantisrx:mantis-publish-netty",
"io.mantisrx:mantis-publish-netty-guice"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.archaius:archaius2-guice": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-netty-guice"
],
"locked": "2.7.6"
"locked": "2.7.9"
},
"com.netflix.spectator:spectator-api": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core"
],
"locked": "1.7.11"
"locked": "1.7.12"
},
"com.netflix.spectator:spectator-ext-ipc": {
"firstLevelTransitive": [
"io.mantisrx:mantis-publish-core",
"io.mantisrx:mantis-publish-netty",
"io.mantisrx:mantis-publish-netty-guice"
],
"locked": "1.7.11"
"locked": "1.7.12"
},
"com.netflix.spectator:spectator-nflx-plugin": {
"firstLevelTransitive": [
Expand Down
Loading

0 comments on commit 46249fa

Please sign in to comment.