Hi,

I declare I do not know a lot about JAVA or MAVEN. What I have discovered is 
this:

The tests when building RANGER (and its plugins) only apply to the build. 
However, it seems that whoever is developing this has a far different setup to 
any folks who may have a requirement to use this software.

Starting with a vanilla system (no repository) the ranger-2.4.0 software fails 
to build. I make some changes to some versions with some POM or other and it 
continues up to a point but fails again.  I then avoid the assembly:assembly 
install phases and end up with a bunch of tar.gz files. GREAT! I think. 
Ranger-admin installs and runs fine.  I install usersync. Seems to run but does 
nothing. Imagine my utter surprise when I look inside ranger-ugsync-site.xml 
and see

        <property>
                <name>ranger.usersync.enabled</name>
                <value>false</value>
        </property>

Now, I ask myself are these people thinking clearly?  What is going on?

If a person DOWNLOADS the software, BUILDS the software, INSTALLS the software 
and RUNS the software, any sane individual would expect that the person 
actually wanted to make use of it!  So WHY WHY WHY is this option false?

I continue with other plugins. I extract the TAR and enable the plugin but, yet 
again problems. It seems that my decision to not pursue the build past the 
(failed) assembly phase may be the problem. So I spent more days trying to make 
it semi-clear as to why I have to go further in the build.  I see dozens of 
phantomjs errors and it seems a fix is to set OPENSSL_CONF=/dev/null. I have no 
idea why this is or why the build actually complains about a different thing 
altogether.

I continue and all seems well. NO more build errors. WHOOO!

However, when I come to enable plugins I get

Unable to store password in non-plain text format. Error: [SLF4J: Failed to 
load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further 
details.
Exception in thread "main" java.lang.NoClassDefFoundError: 
org/apache/commons/logging/LogFactory
        at org.apache.hadoop.fs.FileSystem.<clinit>(FileSystem.java:170)
        at org.apache.hadoop.fs.Path.getFileSystem(Path.java:365)
        at 
org.apache.hadoop.security.alias.JavaKeyStoreProvider.initFileSystem(JavaKeyStoreProvider.java:89)
        at 
org.apache.hadoop.security.alias.AbstractJavaKeyStoreProvider.<init>(AbstractJavaKeyStoreProvider.java:85)
        at 
org.apache.hadoop.security.alias.JavaKeyStoreProvider.<init>(JavaKeyStoreProvider.java:49)
        at 
org.apache.hadoop.security.alias.JavaKeyStoreProvider.<init>(JavaKeyStoreProvider.java:41)
        at 
org.apache.hadoop.security.alias.JavaKeyStoreProvider$Factory.createProvider(JavaKeyStoreProvider.java:100)
        at 
org.apache.hadoop.security.alias.CredentialProviderFactory.getProviders(CredentialProviderFactory.java:73)
        at 
org.apache.ranger.credentialapi.CredentialReader.getDecryptedString(CredentialReader.java:74)
        at 
org.apache.ranger.credentialapi.buildks.createCredential(buildks.java:87)
        at org.apache.ranger.credentialapi.buildks.main(buildks.java:41)
Caused by: java.lang.ClassNotFoundException: 
org.apache.commons.logging.LogFactory
        at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
        ... 11 more]
Exiting plugin installation

...and now I am having to troubleshoot this problem also.

So I guess my questions are these:

WHY is it that these build problems are NEVER found by the people developing 
the software?  It seems that they may not begin with a clean maven/system slate 
and have artifacts sitting around which the rest of us do not seem to possess.

WHY is it that no one seems to actually INSTALL and try to run the software. 
Because, surely if they had the same build problems as the rest of us, they 
would encounter the same install problems as the rest of us.

I tried with 2.5.0 but gave up early when it seems that usersync is not logging 
ANYTHING with this version.

Do you suppose that, if people had to pay for this, that the due diligence 
would be undertaken and MOST EGREGIOUSLY, any documentation would not be so 
incredibly out of date, completely useless at some points, and absolutely 
non-existent for almost everything else.

Yours unhappily

Marc

Reply via email to