[ 
https://issues.apache.org/jira/browse/MESOS-9224?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16686836#comment-16686836
 ] 

Benno Evers commented on MESOS-9224:
------------------------------------

After discussions with Alex and Greg, we failed to identify a way to 
deteministically trigger the batching functionality without either introducing 
some inherent test flakiness or major modifications of both mesos and testing 
code. The main problems I was running into:

 - A correctly working cache should, ideally, be undetectable from the outside, 
so there's the question of how to verify that the test code actually was 
hitting the cache. We thought about introducing new endpoints dynamically that 
just count how often they've been accessed, but it seems not currently possible 
to introduce new routes or replace existing ones at runtime. Additionally, this 
has the problem that the dynamically introduced routes would not be cached.
 - The routines used to implemenet the de-duplication are currently all 
private. We can introduce public getters and setters or just directly open up 
master internals for use in tests, but that seems like a code smell. It's also 
hard to use `protected` here, because instantiating a new master instance is a 
messy process requiring lots of support code, all of which would need to be 
duplicated to use a sub-class of the mesos master.
 - Ideally, we should use the actual http pipeline used by mesos in our unit 
tests, including libprocess authentication and routing, so even if we could 
somehow directly access the mesos-master http internals its questionable if we 
should do it.

I'm currently working on an alternate, slightly probabilistic kind of test that 
tries to launch many requests at once and verifies that they still returning 
the correct answers.

> De-duplicate read-only requests to master based on principal.
> -------------------------------------------------------------
>
>                 Key: MESOS-9224
>                 URL: https://issues.apache.org/jira/browse/MESOS-9224
>             Project: Mesos
>          Issue Type: Improvement
>          Components: HTTP API
>            Reporter: Alexander Rukletsov
>            Assignee: Benno Evers
>            Priority: Major
>              Labels: performance
>
> "Identical" read-only requests can be batched and answered together. With 
> batching available (MESOS-9158), we can now deduplicate requests based on 
> principal.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to