On 04/01/2018 05:37 PM, Malhar Thakkar wrote:
> I had a look at lein's FAQ to find the following answer (find screenshot
> attached). I tried doing it, but it didn't work.
I read the FAQ, poked around in lein, googled for the error message, found this
thread on the first page:
https://github.com/technomancy/leiningen/issues/2392,
added the suggested aether snippet to project.clj, re-ran `lein test`, and found
an issue with a transitive dependency: high-scale-lib, which is a part of the
knossos deps, and at the time used an HTTP repository.
Back then, lein was fine with this, but newer versions of lein refuse (sensibly)
to use http. I suggest either re-running with a contemporary version of lein, or
grabbing the new https repository from the current `knossos` project and
rebuilding the *old* version of knossos with that repo instead of the http one.
You can locally install your changes using `lein install`.
> Also, I have a few queries regarding MongoDB 3.4.0-rc3.
>
> * The scenario mentioned in the blog-post that exposes the problem in
> MongoDB's v0 replication (isolating the primary node) is definitely
> possible, but isn't the probability of that happening low?
That's one particular example that suffices to break v0, but not the only one.
"Low" is sort of a tricky question, and it's difficult to answer empirically
since setups vary so much. It's gonna depend on your workload, hardware,
topology, client distribution, etc etc.
> * Also, in order to try and see for myself that MongoDB's 3.4.0-rc3 indeed
> loses acknowledged writes, I wanted to know the parameters that were set in
> order to find the vulnerability. Currently, I am running the test in the
> following way.
> o *lein run test -t set -p 0 --time-limit 700 --key-time-limit 300*
> o So far, I've run about 100 tests with the above setting only to find
> that the test passed every time. Am I missing something? Or is 100 too
> small a number to find the problem with the replication protocol?
I'd say one to five tests ought to do it, but it's been a bit and I don't
remember all the details. I was firing up an AWS cluster to confirm for you, but
my ISP actually lost its route to AWS so... that's gonna have to be another
time. Gotta do some real work today too. ;-)
> * Statistics about approximately how many times the aforementioned test was
> run (and with which parameters) to expose the vulnerability would be helpful
It's going to depend on your environment: node speed, network performance, etc
are going to affect concurrency intervals and throughput, which can have a
significant effect on test reproducibility. I go through a fair bit of tuning to
try and create repeatable tests, but it's a big ball of nondeterministic
concurrent state. YMMV.
--Kyle