> On Feb. 24, 2015, 10:25 a.m., Adam B wrote:
> > src/launcher/fetcher.cpp, lines 172-173
> > <https://reviews.apache.org/r/31362/diff/1/?file=874122#file874122line172>
> >
> >     What if the user had set the MESOS_FRAMEWORKS_HOME env variable instead 
> > of the --frameworks_home flag? Would that have still worked in 0.21? Will 
> > it work now?

MESOS_FRAMEWORKS_HOME is not an env var that anybody else than mesos-fetcher 
itself was expected to use for anything. It is supposed to be brought into the 
fold with all other MESOS_XXX env vars that disappeared into the JSON object 
that now represents fetcher parameters. Sorry that this was not done earlier!

HADOOP_HOME is different, because it has significance outside internal Mesos 
affairs. So we are keeping this one.


> On Feb. 24, 2015, 10:25 a.m., Adam B wrote:
> > src/launcher/fetcher.cpp, line 180
> > <https://reviews.apache.org/r/31362/diff/1/?file=874122#file874122line180>
> >
> >     We don't end log messages in punctuation. (Comments, however, must be 
> > punctuated.)

I will comply even though in this case we have two complete sentences. Would 
you like me to remove the period after the first sentence, two? Hm. I'll put a 
semicolon there to side-step this issue :-)


> On Feb. 24, 2015, 10:25 a.m., Adam B wrote:
> > src/launcher/fetcher.cpp, lines 300-303
> > <https://reviews.apache.org/r/31362/diff/1/?file=874122#file874122line300>
> >
> >     if fetch() takes an Option already, can we just pass it 
> > `fetcherInfo.get().frameworks_home()` directly? I thought there might be 
> > some auto-translation between optional protobufs and Options..

There is no such auto-translation that I am aware of. Please point me to the 
routine that does this! 

Just passing directly could AFAIK result in a SOME with an empty string instead 
of a NONE. See fetcher.pb.h:

inline const ::std::string& FetcherInfo::frameworks_home() const {
  return *frameworks_home_;
}


> On Feb. 24, 2015, 10:25 a.m., Adam B wrote:
> > src/tests/fetcher_tests.cpp, line 343
> > <https://reviews.apache.org/r/31362/diff/1/?file=874124#file874124line343>
> >
> >     This wasn't necessary before, since you weren't using a relative path 
> > for URI, right?

Right.


> On Feb. 24, 2015, 10:25 a.m., Adam B wrote:
> > src/tests/fetcher_tests.cpp, line 435
> > <https://reviews.apache.org/r/31362/diff/1/?file=874124#file874124line435>
> >
> >     What non-0 return status do you expect?

Our Subprocess (see subprocess.hpp) implementation does not report the exit 
code from the program it ran. Instead it returns what waitpid() reports, which 
is a child process ID in this case. This is different every time. I think this 
behavior of Subprocess is less useful than it could be, but that's a separate 
issue.


> On Feb. 24, 2015, 10:25 a.m., Adam B wrote:
> > src/tests/fetcher_tests.cpp, line 734
> > <https://reviews.apache.org/r/31362/diff/1/?file=874124#file874124line734>
> >
> >     Should probably verify that 'proof' does not exist before the test 
> > runs. Maybe even delete it if it does somehow exist.

This is a path extension from os::getcwd() in a freshly created sandbox:

class FetcherTest : public TemporaryDirectoryTest {};
...
TEST_F(FetcherTest, HdfsURI)
{
  ...


> On Feb. 24, 2015, 10:25 a.m., Adam B wrote:
> > src/tests/fetcher_tests.cpp, line 737
> > <https://reviews.apache.org/r/31362/diff/1/?file=874124#file874124line737>
> >
> >     Might you want to use '&&' instead of ';', in case the fake fetcher 
> > 'cp' fails?

Not in this case. I see that fetcher cp fails if the file is not there. Then, 
debugging this program, seeing "proof" tells me that the script was invoked. 
Otherwise I might be fooled into believing it wasn't.


> On Feb. 24, 2015, 10:25 a.m., Adam B wrote:
> > src/tests/fetcher_tests.cpp, line 763
> > <https://reviews.apache.org/r/31362/diff/1/?file=874124#file874124line763>
> >
> >     Very cool. Did you (manually) test that this actually works?

This is copied from other tests in this file. BenH wrote this. I deleted it in 
an upcoming patch to reduce code volume. Let me know if you desperately need it 
back when looking at r30774...

Yes, this works.


- Bernd


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/31362/#review73838
-----------------------------------------------------------


On Feb. 24, 2015, 9:28 a.m., Bernd Mathiske wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/31362/
> -----------------------------------------------------------
> 
> (Updated Feb. 24, 2015, 9:28 a.m.)
> 
> 
> Review request for mesos, Adam B, Ben Mahler, and Niklas Nielsen.
> 
> 
> Bugs: MESOS-2390
>     https://issues.apache.org/jira/browse/MESOS-2390
> 
> 
> Repository: mesos
> 
> 
> Description
> -------
> 
> Now the containerizer/fetcher sets the HADOOP_HOME variable for mesos-fetcher 
> again if the slave flag hadoop_home is set. Added a test that checks that 
> HDFS fetching is not broken and also ensures that the flag gets translated to 
> the environment variable and then gets applied in mesos-fetcher. Created a 
> mock hadoop implementation script for this. This script has the exact same 
> side effects as a real haddop client in the scope of our testing. Using this, 
> Mesos testing has no extra external dependencies (on Hadoop).
> 
> Slave flag frameworks_home does not need to be an evironment variable. It is 
> now part of FetcherInfo only, but it also gets tested now that it works.
> 
> 
> Diffs
> -----
> 
>   include/mesos/fetcher/fetcher.proto 
> facb87b92bf3194516f636dcc348e136af537721 
>   src/launcher/fetcher.cpp fed0105946da579a38357a30e7ae56e646e05b89 
>   src/slave/containerizer/fetcher.cpp 
> d290f95251def3952c5ee34f600e1d71467f6293 
>   src/tests/fetcher_tests.cpp 2438620e2db94c3c56336fa5d8e69a18fe8f3bac 
>   src/tests/mock_hadoop.sh PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/31362/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Bernd Mathiske
> 
>

Reply via email to