Skip to content
This repository has been archived by the owner on Aug 2, 2022. It is now read-only.

Rename TransportState to NodeState #259

Closed
wants to merge 2 commits into from

Conversation

kaituo
Copy link
Member

@kaituo kaituo commented Oct 15, 2020

Note: since there are a lot of dependencies, I only list the main class and test code to save reviewers' time. The build will fail due to missing dependencies. I will use that PR just for review. will not merge it. Will have a big one in the end and merge once after all review PRs get approved.

Issue #, if available:

Description of changes:

Previously, we have TransportState and TransportStateManager to track states used by transport layers. Now the state is not only used by the transport layer. Methods like getDetector are used by ModelManager etc. This PR renames the class to reflect the fact.

This PR also modifies how we track whether a cold start is running or not. Previously, the caller had to manually set it on and off. And we have a code everywhere. Now, we return a Releasable object that can be called automatically. The current way is more concise and easier to avoid bugs.

This PR also adds states to track last index throttling time as we face index rejections issues.

Testing done:

  1. will add unit tests.
  2. end-to-end testing pass.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@codecov
Copy link

codecov bot commented Oct 15, 2020

Codecov Report

Merging #259 into master will decrease coverage by 0.20%.
The diff coverage is 34.21%.

Impacted file tree graph

@@             Coverage Diff              @@
##             master     #259      +/-   ##
============================================
- Coverage     73.01%   72.81%   -0.21%     
- Complexity     1461     1464       +3     
============================================
  Files           164      164              
  Lines          6834     6867      +33     
  Branches        527      533       +6     
============================================
+ Hits           4990     5000      +10     
- Misses         1594     1615      +21     
- Partials        250      252       +2     
Flag Coverage Δ Complexity Δ
#cli 79.27% <ø> (ø) 0.00 <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ Complexity Δ
...est/handler/IndexAnomalyDetectorActionHandler.java 51.17% <0.00%> (-0.25%) 26.00 <0.00> (ø)
.../handler/IndexAnomalyDetectorJobActionHandler.java 11.44% <0.00%> (-0.22%) 4.00 <0.00> (ø)
...stroforelasticsearch/ad/model/AnomalyDetector.java 62.06% <35.71%> (-1.96%) 52.00 <0.00> (+1.00) ⬇️
...oforelasticsearch/ad/model/AnomalyDetectorJob.java 58.97% <42.85%> (-2.20%) 24.00 <1.00> (+2.00) ⬇️
...oforelasticsearch/ad/AnomalyDetectorJobRunner.java 76.59% <100.00%> (+0.12%) 35.00 <0.00> (ø)
...ransport/SearchAnomalyDetectorTransportAction.java 77.77% <0.00%> (-22.23%) 2.00% <0.00%> (ø%)

Previously, we have TransportState and TransportStateManager to track states used by transport layers.  Now the state is not only used by the transport layer. Methods like getDetector are used by ModelManager etc.  This PR renames the class to reflect the fact.

This PR also modifies how we track whether a cold start is running or not.  Previously, the caller had to manually set it on and off.  And we have a code everywhere.  Now, we return a Releasable object that can be called automatically.  The current way is more concise and easier to avoid bugs.

This PR also adds states to track last index throttling time as we face index rejections issues.

Testing done:
1. will add unit tests.
2. end-to-end testing pass.
kaituo added a commit that referenced this pull request Oct 16, 2020
* Add support filtering the data by one categorical variable

This PR is a conglomerate of the following PRs.

#247
#249
#250
#252
#253
#256
#257
#258
#259
#260
#261
#262
#263
#264
#265
#266
#267
#268
#269

This spreadsheet contains the mappings from files to PR number: https://quip-amazon.com/DiHkAmz9oSLu/HC-PR

Testing done:
1. Add unit tests except four classes (excluded in build.gradle). Will add them in the later PR.
2. Manual testing passes.
@kaituo kaituo closed this Oct 16, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants