HomeMesosphereNo notifications. 4 unresolved issues.

Fix flaky metrics tests, and fix issues with stream monitoring
ClosedAll Users

Authored by timcharper on Jul 27 2017, 5:26 AM.

Details

Summary
  • Calling Kamon.start() in the before block causes erratic behavior in Kamon. I don't know why this is. But it is. We should only call Kamon.start() only for tests that require it.
  • Stream monitoring was causing exceptions to be swallowed.
  • Stream monitoring started with the first element to flow through the stream; this meant that streams that have only one element will have a duration of close to 0.
Test Plan

modify test locally to loop it 1000 times to assert flakiness is gone

Diff Detail

Repository
rMARATHON marathon
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
timcharper created this revision.Jul 27 2017, 5:26 AM
jenkins requested changes to this revision.Jul 27 2017, 5:32 AM
This revision now requires changes to proceed.Jul 27 2017, 5:32 AM
jenkins accepted this revision.Jul 27 2017, 5:48 AM
This revision is now accepted and ready to land.Jul 27 2017, 5:48 AM
✔ Build of 3860 completed jenkins-public-marathon-phabricator-598.

You can create a DC/OS with your patched Marathon by creating a new pull
request with the following changes in buildinfo.json:

"url": "https://downloads.mesosphere.io/marathon/snapshots/marathon-1.5.0-SNAPSHOT-670-g762a11f.tgz",
"sha1": "38be33908835009efb9e0c35757b838b4e5e3be1"

\\ ٩( ᐛ )و //

zen-dog requested changes to this revision.Jul 27 2017, 11:51 AM

I wonder why java.time.Clock and not mesosphere.marathon.core.base.Clock. Otherwise that looks great and it also doesn't fail in my local loop. Thx!

src/main/scala/mesosphere/marathon/metrics/HistogramTimer.scala
30

clock.instant instead of Option[Long] is neat. But I wonder why java.time.Clock and not our own mesosphere.marathon.core.base.Clock which we use everywhere else?

45

I wonder what kind of errors we swallowed here previously...

This revision now requires changes to proceed.Jul 27 2017, 11:51 AM
zen-dog accepted this revision.Jul 27 2017, 3:26 PM
zen-dog added inline comments.
src/main/scala/mesosphere/marathon/metrics/HistogramTimer.scala
30

...because our Clock has ms precision :(

This revision is now accepted and ready to land.Jul 27 2017, 3:26 PM
unterstein accepted this revision.Jul 27 2017, 3:28 PM
This revision was automatically updated to reflect the committed changes.
jdef added a subscriber: jdef.Jul 28 2017, 4:11 AM
jdef added inline comments.
src/main/scala/mesosphere/marathon/metrics/HistogramTimer.scala
22

curious: why was final removed?