Thanks for testing the suggested fix, Laurens.  I created METRON-1265 so we
can get this dependency doc'd.

https://issues.apache.org/jira/browse/METRON-1265

On Wed, Oct 18, 2017 at 11:55 AM, Laurens Vets <laur...@daemon.be> wrote:

> I was hesitant to believe Ryan that this was a compiler issue, but I
> upgraded my compiler on CentOS 6 to 4.9.2 and the build worked on the first
> try... Lesson learned: Never question Ryan again!
>
> How to upgrade compiler on CentOS 6:
>
> $ sudo yum install centos-release-scl
> $ sudo yum install devtoolset-3-toolchain
> $ scl enable devtoolset-3 bash
> $ <compile Metron>
>
> On 2017-10-13 11:12, Ryan Merriman wrote:
>
>> We recently ran into this and the cause was an old C++ compiler version.
>> It wants a compiler that has support for C++11:
>> https://gcc.gnu.org/projects/cxx-status.html#cxx11.
>>
>> On Fri, Oct 13, 2017 at 1:00 PM, Laurens Vets <laur...@daemon.be> wrote:
>>
>> ...
>>> [INFO] --- frontend-maven-plugin:1.3:npm (ng build) @ metron-config ---
>>> [DEBUG] Configuring mojo com.github.eirslett:frontend-m
>>> aven-plugin:1.3:npm
>>> from plugin realm ClassRealm[plugin>com.github.e
>>> irslett:frontend-maven-plugin:1.3, parent:
>>> sun.misc.Launcher$AppClassLoad
>>> er@70dea4e]
>>> [DEBUG] Configuring mojo 'com.github.eirslett:frontend-
>>> maven-plugin:1.3:npm'
>>> with basic configurator -->
>>> [DEBUG]   (f) arguments = run build
>>> [DEBUG]   (f) npmInheritsProxyConfigFromMaven = false
>>> [DEBUG]   (f) project = MavenProject: org.apache.metron:metron-confi
>>> g:0.4.1
>>> @ /root/metron/metron-interface/metron-config/pom.xml
>>> [DEBUG]   (f) repositorySystemSession = org.eclipse.aether.DefaultRepo
>>> sitorySystemSession@e883a51
>>> [DEBUG]   (f) session = org.apache.maven.execution.MavenSession@2aaefbd
>>> [DEBUG]   (f) skip = false
>>> [DEBUG]   (f) skipTests = true
>>> [DEBUG]   (f) workingDirectory = /root/metron/metron-interface/
>>> metron-config
>>> [DEBUG]   (f) execution = com.github.eirslett:frontend-m
>>> aven-plugin:1.3:npm
>>> {execution: ng build}
>>> [DEBUG] -- end configuration --
>>> [INFO] npm not inheriting proxy config from Maven
>>> [INFO] Running 'npm run build' in /root/metron/metron-interface/
>>> metron-config
>>> [INFO]
>>> [INFO] > metron-management-ui@0.4.1 build /root/metron/metron-interface/
>>> metron-config
>>> [INFO] > ./node_modules/angular-cli/bin/ng build -prod
>>> [INFO]
>>> [INFO] Cannot find module 'tough-cookie'
>>> [INFO] Error: Cannot find module 'tough-cookie'
>>> [INFO]     at Function.Module._resolveFilename (module.js:440:15)
>>> [INFO]     at Function.Module._load (module.js:388:25)
>>> [INFO]     at Module.require (module.js:468:17)
>>> [INFO]     at require (internal/module.js:20:19)
>>> [INFO]     at Object.<anonymous> (/root/metron/metron-interface
>>> /metron-config/node_modules/request/lib/cookies.js:3:13)
>>> [INFO]     at Module._compile (module.js:541:32)
>>> [INFO]     at Object.Module._extensions..js (module.js:550:10)
>>> [INFO]     at Module.load (module.js:458:32)
>>> [INFO]     at tryModuleLoad (module.js:417:12)
>>> [INFO]     at Function.Module._load (module.js:409:3)
>>> [INFO]     at Module.require (module.js:468:17)
>>> [INFO]     at require (internal/module.js:20:19)
>>> [INFO]     at Object.<anonymous> (/root/metron/metron-interface
>>> /metron-config/node_modules/request/index.js:18:15)
>>> [INFO]     at Module._compile (module.js:541:32)
>>> [INFO]     at Object.Module._extensions..js (module.js:550:10)
>>> [INFO]     at Module.load (module.js:458:32)
>>> [INFO]     at tryModuleLoad (module.js:417:12)
>>> [INFO]     at Function.Module._load (module.js:409:3)
>>> [INFO]     at Module.require (module.js:468:17)
>>> [INFO]     at require (internal/module.js:20:19)
>>> [INFO]     at Leek._enqueue (/root/metron/metron-interface
>>> /metron-config/node_modules/leek/lib/leek.js:60:30)
>>> [INFO]     at Leek.track (/root/metron/metron-interface
>>> /metron-config/node_modules/leek/lib/leek.js:87:15)
>>> [INFO]     at Class.Command.validateAndRun (/root/metron/metron-interface
>>> /metron-config/node_modules/angular-cli/lib/models/command.js:119:18)
>>> [INFO]     at /root/metron/metron-interface/
>>> metron-config/node_modules/ang
>>> ular-cli/lib/cli/cli.js:86:22
>>> [INFO]     at tryCatch (/root/metron/metron-interface
>>> /metron-config/node_modules/rsvp/dist/lib/rsvp/-internal.js:198:12)
>>> [INFO]     at invokeCallback (/root/metron/metron-interface
>>> /metron-config/node_modules/rsvp/dist/lib/rsvp/-internal.js:211:13)
>>> [INFO]     at /root/metron/metron-interface/
>>> metron-config/node_modules/rsv
>>> p/dist/lib/rsvp/then.js:26:14
>>> [INFO]     at flush (/root/metron/metron-interface
>>> /metron-config/node_modules/rsvp/dist/lib/rsvp/asap.js:80:5)
>>> [INFO]     at _combinedTickCallback (internal/process/next_tick.js:67:7)
>>> [INFO]     at process._tickCallback (internal/process/next_tick.js:98:9)
>>> [ERROR]
>>> [ERROR] npm ERR! Linux 2.6.32-696.13.2.el6.x86_64
>>> [ERROR] npm ERR! argv "/root/metron/metron-interface
>>> /metron-config/node/node"
>>> "/root/metron/metron-interface/metron-config/node/node_
>>> modules/npm/bin/npm-cli.js"
>>> "run" "build"
>>> [ERROR] npm ERR! node v6.2.0
>>> [ERROR] npm ERR! npm  v3.8.9
>>> [ERROR] npm ERR! code ELIFECYCLE
>>> [ERROR] npm ERR! metron-management-ui@0.4.1 build:
>>> `./node_modules/angular-cli/bin/ng build -prod`
>>> [ERROR] npm ERR! Exit status 1
>>> [ERROR] npm ERR!
>>> [ERROR] npm ERR! Failed at the metron-management-ui@0.4.1 build script
>>> './node_modules/angular-cli/bin/ng build -prod'.
>>> [ERROR] npm ERR! Make sure you have the latest version of node.js and npm
>>> installed.
>>> [ERROR] npm ERR! If you do, this is most likely a problem with the
>>> metron-management-ui package,
>>> [ERROR] npm ERR! not with npm itself.
>>> [ERROR] npm ERR! Tell the author that this fails on your system:
>>> [ERROR] npm ERR!     ./node_modules/angular-cli/bin/ng build -prod
>>> [ERROR] npm ERR! You can get information on how to open an issue for this
>>> project with:
>>> [ERROR] npm ERR!     npm bugs metron-management-ui
>>> [ERROR] npm ERR! Or if that isn't available, you can get their info via:
>>> [ERROR] npm ERR!     npm owner ls metron-management-ui
>>> [ERROR] npm ERR! There is likely additional logging output above.
>>> [ERROR]
>>> [ERROR] npm ERR! Please include the following file with any support
>>> request:
>>> [ERROR] npm ERR!     /root/metron/metron-interface/metron-config/npm-
>>> debug.log
>>> [INFO] ------------------------------------------------------------
>>> ------------
>>> [INFO] Reactor Summary:
>>> [INFO]
>>> [INFO] Metron ............................................. SUCCESS [
>>> 1.310 s]
>>> [INFO] metron-stellar ..................................... SUCCESS [
>>> 0.245 s]
>>> [INFO] stellar-common ..................................... SUCCESS [
>>> 47.893 s]
>>> [INFO] metron-analytics ................................... SUCCESS [
>>> 0.154 s]
>>> [INFO] metron-maas-common ................................. SUCCESS [
>>> 2.604 s]
>>> [INFO] metron-platform .................................... SUCCESS [
>>> 0.211 s]
>>> [INFO] metron-test-utilities .............................. SUCCESS [
>>> 7.094 s]
>>> [INFO] metron-integration-test ............................ SUCCESS [
>>> 18.934 s]
>>> [INFO] metron-maas-service ................................ SUCCESS [
>>> 14.548 s]
>>> [INFO] metron-common ...................................... SUCCESS [
>>> 30.774 s]
>>> [INFO] metron-statistics .................................. SUCCESS [
>>> 45.088 s]
>>> [INFO] metron-writer ...................................... SUCCESS [
>>> 46.510 s]
>>> [INFO] metron-storm-kafka-override ........................ SUCCESS [
>>> 1.130 s]
>>> [INFO] metron-storm-kafka ................................. SUCCESS [
>>> 0.837 s]
>>> [INFO] metron-hbase ....................................... SUCCESS [
>>> 2.750 s]
>>> [INFO] metron-profiler-common ............................. SUCCESS [
>>> 1.805 s]
>>> [INFO] metron-profiler-client ............................. SUCCESS [
>>> 35.840 s]
>>> [INFO] metron-profiler .................................... SUCCESS
>>> [01:51 min]
>>> [INFO] metron-hbase-client ................................ SUCCESS [
>>> 28.237 s]
>>> [INFO] metron-enrichment .................................. SUCCESS
>>> [01:47 min]
>>> [INFO] metron-indexing .................................... SUCCESS [
>>> 32.076 s]
>>> [INFO] metron-solr ........................................ SUCCESS [
>>> 33.035 s]
>>> [INFO] metron-pcap ........................................ SUCCESS [
>>> 2.972 s]
>>> [INFO] metron-parsers ..................................... SUCCESS
>>> [01:40 min]
>>> [INFO] metron-pcap-backend ................................ SUCCESS [
>>> 56.719 s]
>>> [INFO] metron-data-management ............................. SUCCESS
>>> [01:49
>>> min]
>>> [INFO] metron-api ......................................... SUCCESS [
>>> 44.754 s]
>>> [INFO] metron-management .................................. SUCCESS [
>>> 15.315 s]
>>> [INFO] elasticsearch-shaded ............................... SUCCESS [
>>> 18.489 s]
>>> [INFO] metron-elasticsearch ............................... SUCCESS
>>> [01:36 min]
>>> [INFO] metron-deployment .................................. SUCCESS [
>>> 0.015 s]
>>> [INFO] Metron Ambari Management Pack ...................... SUCCESS [
>>> 6.645 s]
>>> [INFO] metron-contrib ..................................... SUCCESS [
>>> 0.123 s]
>>> [INFO] metron-docker ...................................... SUCCESS [
>>> 5.313 s]
>>> [INFO] metron-interface ................................... SUCCESS [
>>> 0.068 s]
>>> [INFO] metron-config ...................................... FAILURE
>>> [32:49 min]
>>> [INFO] metron-alerts ...................................... SUCCESS
>>> [23:51 min]
>>> [INFO] metron-rest-client ................................. SUCCESS [
>>> 13.580 s]
>>> [INFO] metron-rest ........................................ SUCCESS
>>> [02:13 min]
>>> [INFO] site-book .......................................... SUCCESS [
>>> 1.882 s]
>>> [INFO] 3rd party Functions (just for tests) ............... SUCCESS [
>>> 0.438 s]
>>> [INFO] ------------------------------------------------------------
>>> ------------
>>> [INFO] BUILD FAILURE
>>> [INFO] ------------------------------------------------------------
>>> ------------
>>> [INFO] Total time: 32:53 min (Wall Clock)
>>> [INFO] Finished at: 2017-10-13T10:43:23-07:00
>>> [INFO] Final Memory: 171M/2115M
>>> [INFO] ------------------------------------------------------------
>>> ------------
>>> [ERROR] Failed to execute goal com.github.eirslett:frontend-m
>>> aven-plugin:1.3:npm
>>> (ng build) on project metron-config: Failed to run task: 'npm run build'
>>> failed. (error code 1) -> [Help 1]
>>> org.apache.maven.lifecycle.LifecycleExecutionException: Failed to
>>> execute
>>> goal com.github.eirslett:frontend-maven-plugin:1.3:npm (ng build) on
>>> project metron-config: Failed to run task
>>>         at org.apache.maven.lifecycle.internal.MojoExecutor.execute(Moj
>>> oExecutor.java:212)
>>>         at org.apache.maven.lifecycle.internal.MojoExecutor.execute(Moj
>>> oExecutor.java:153)
>>>         at org.apache.maven.lifecycle.internal.MojoExecutor.execute(Moj
>>> oExecutor.java:145)
>>>         at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.b
>>> uildProject(LifecycleModuleBuilder.java:116)
>>>         at org.apache.maven.lifecycle.internal.builder.multithreaded.Mu
>>> ltiThreadedBuilder$1.call(MultiThreadedBuilder.java:185)
>>>         at org.apache.maven.lifecycle.internal.builder.multithreaded.Mu
>>> ltiThreadedBuilder$1.call(MultiThreadedBuilder.java:181)
>>>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>>>         at java.util.concurrent.Executors$RunnableAdapter.call(
>>> Executors.java:511)
>>>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>>>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool
>>> Executor.java:1149)
>>>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo
>>> lExecutor.java:624)
>>>         at java.lang.Thread.run(Thread.java:748)
>>> Caused by: org.apache.maven.plugin.MojoFailureException: Failed to run
>>> task
>>>         at com.github.eirslett.maven.plugins.frontend.mojo.AbstractFron
>>> tendMojo.execute(AbstractFrontendMojo.java:95)
>>>         at org.apache.maven.plugin.DefaultBuildPluginManager.executeMoj
>>> o(DefaultBuildPluginManager.java:134)
>>>         at org.apache.maven.lifecycle.internal.MojoExecutor.execute(Moj
>>> oExecutor.java:207)
>>>         ... 11 more
>>> Caused by: com.github.eirslett.maven.plugins.frontend.lib.TaskRunnerExc
>>> eption:
>>> 'npm run build' failed. (error code 1)
>>>         at com.github.eirslett.maven.plugins.frontend.lib.NodeTaskExecu
>>> tor.execute(NodeTaskExecutor.java:60)
>>>         at com.github.eirslett.maven.plugins.frontend.mojo.NpmMojo.exec
>>> ute(NpmMojo.java:62)
>>>         at com.github.eirslett.maven.plugins.frontend.mojo.AbstractFron
>>> tendMojo.execute(AbstractFrontendMojo.java:89)
>>>         ... 13 more
>>> [ERROR]
>>> [ERROR]
>>> [ERROR] For more information about the errors and possible solutions,
>>> please read the following articles:
>>> [ERROR] [Help 1] http://cwiki.apache.org/conflu
>>> ence/display/MAVEN/MojoFailureException
>>> [ERROR]
>>> [ERROR] After correcting the problems, you can resume the build with the
>>> command
>>> [ERROR]   mvn <goals> -rf :metron-config
>>> [root@centos6 metron]#
>>>
>>> [root@centos6 metron]# gcc -v
>>> Using built-in specs.
>>> Target: x86_64-redhat-linux
>>> Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
>>> --infodir=/usr/share/info --with-bugurl=http://bugzilla.
>>> redhat.com/bugzilla --enable-bootstrap --enable-shared
>>> --enable-threads=posix --enable-checking=release --with-system-zlib
>>> --enable-__cxa_atexit --disable-libunwind-exceptions
>>> --enable-gnu-unique-object --enable-languages=c,c++,objc,
>>> obj-c++,java,fortran,ada
>>> --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/
>>> java-1.5.0-gcj-1.5.0.0/jre
>>> --enable-libgcj-multifile --enable-java-maintainer-mode
>>> --with-ecj-jar=/usr/share/java/eclipse-ecj.jar
>>> --disable-libjava-multilib
>>> --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686
>>> --build=x86_64-redhat-linux
>>> Thread model: posix
>>> gcc version 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC)
>>> [root@centos6 metron]#
>>>
>>>
>>> On 2017-10-04 13:15, James Sirota wrote:
>>>
>>> Can you run it with the -X flag and paste the error?  What version of
>>>> the gcc compiler do you have?
>>>>
>>>> 02.10.2017, 09:37, "Laurens Vets" <laur...@daemon.be>:
>>>>
>>>> I might have spoken too soon. This is what I see now on 0.4.1-release:
>>>>>
>>>>> ...
>>>>> [INFO] metron-contrib ..................................... SUCCESS [
>>>>> 0.006 s]
>>>>> [INFO] metron-docker ...................................... SUCCESS [
>>>>> 3.088 s]
>>>>> [INFO] metron-interface ................................... SUCCESS [
>>>>> 0.057 s]
>>>>> [INFO] metron-config ...................................... FAILURE
>>>>> [06:54 min]
>>>>> [INFO] metron-alerts ...................................... SUCCESS
>>>>> [03:44 min]
>>>>> [INFO] metron-rest-client ................................. SUCCESS [
>>>>> 0.411 s]
>>>>> [INFO] metron-rest ........................................ SUCCESS [
>>>>> 26.628 s]
>>>>> [INFO] site-book .......................................... SUCCESS [
>>>>> 1.136 s]
>>>>> [INFO]
>>>>> ------------------------------------------------------------
>>>>> ------------
>>>>> [INFO] BUILD FAILURE
>>>>> [INFO]
>>>>> ------------------------------------------------------------
>>>>> ------------
>>>>> [INFO] Total time: 06:56 min (Wall Clock)
>>>>> [INFO] Finished at: 2017-10-02T16:33:39+00:00
>>>>> [INFO] Final Memory: 240M/3203M
>>>>> [INFO]
>>>>> ------------------------------------------------------------
>>>>> ------------
>>>>> [ERROR] Failed to execute goal
>>>>> com.github.eirslett:frontend-maven-plugin:1.3:npm (ng build) on
>>>>> project
>>>>> metron-config: Failed to run task: 'npm run build' failed. (error code
>>>>> 1) -> [Help 1]
>>>>> [ERROR]
>>>>> [ERROR] To see the full stack trace of the errors, re-run Maven with
>>>>> the
>>>>> -e switch.
>>>>> [ERROR] Re-run Maven using the -X switch to enable full debug logging.
>>>>> [ERROR]
>>>>> [ERROR] For more information about the errors and possible solutions,
>>>>> please read the following articles:
>>>>> [ERROR] [Help 1]
>>>>> http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
>>>>> [ERROR]
>>>>> [ERROR] After correcting the problems, you can resume the build with
>>>>> the
>>>>> command
>>>>> [ERROR] mvn <goals> -rf :metron-config
>>>>>
>>>>> On 2017-10-02 08:16, Laurens Vets wrote:
>>>>>
>>>>>  I can confirm 0.4.1 (on CentOS 6!) builds for me as well.
>>>>>>
>>>>>>  Are we sure it isn't due to the version of node shipped with the OS?
>>>>>>
>>>>>>  On 2017-10-02 08:04, zeo...@gmail.com wrote:
>>>>>>
>>>>>>  Hmm, 0.4.1 built fine for me.
>>>>>>>
>>>>>>>  Jon
>>>>>>>
>>>>>>>  On Mon, Oct 2, 2017 at 10:44 AM Casey Stella <ceste...@gmail.com>
>>>>>>>  wrote:
>>>>>>>
>>>>>>>  Ok, the build is broken in metron-config due to some transitive
>>>>>>>
>>>>>>>>  changes
>>>>>>>>  that happened in npm-land:
>>>>>>>>
>>>>>>>>  [INFO]
>>>>>>>>
>>>>>>>>  /Users/cstella/Documents/workspace/metron/fork/incubator-
>>>>>>>> metron/metron-interface/metron-config/node_modules/
>>>>>>>> toposort/index.js:32
>>>>>>>>  [INFO] throw new Error('Cyclic dependency:
>>>>>>>>  '+JSON.stringify(node))
>>>>>>>>  [INFO] ^
>>>>>>>>  [INFO] Error: Cyclic dependency: "[object Object]"
>>>>>>>>  [INFO] at visit
>>>>>>>>
>>>>>>>>  (/Users/cstella/Documents/workspace/metron/fork/incubator-
>>>>>>>> metron/metron-interface/metron-config/node_modules/
>>>>>>>> toposort/index.js:32:13)
>>>>>>>>  [INFO] at visit
>>>>>>>>
>>>>>>>>  (/Users/cstella/Documents/workspace/metron/fork/incubator-
>>>>>>>> metron/metron-interface/metron-config/node_modules/
>>>>>>>> toposort/index.js:48:9)
>>>>>>>>
>>>>>>>>  Evidently one of our transitive dependencies has changed and we
>>>>>>>> have
>>>>>>>>  ended
>>>>>>>>  up with a cyclic dependency. I'm not sure where or why yet, but I
>>>>>>>>  believe
>>>>>>>>  this breaks both master and our 0.4.1 release (I haven't confirmed
>>>>>>>>  this
>>>>>>>>  yet, but I strongly suspect).
>>>>>>>>
>>>>>>>>  While the good work of tracking down this specific error is done,
>>>>>>>> I'd
>>>>>>>>  like
>>>>>>>>  to bring up a broader discussion point: our practice of not fixing
>>>>>>>>  versions
>>>>>>>>  for our node dependencies. This is, in effect, causing a few
>>>>>>>>  problems:
>>>>>>>>
>>>>>>>>     - We do not have a consistent, repeatable build.
>>>>>>>>     - We set ourselves up for possible license violation without
>>>>>>>>  knowing
>>>>>>>>     about it (a transitive dependency changes its license)
>>>>>>>>
>>>>>>>>  As we stand, we have a release which doesn't not build after we
>>>>>>>> have
>>>>>>>>  released it and tested it. It seems to me that we should at a
>>>>>>>>  minimum as a
>>>>>>>>  stopgap:
>>>>>>>>
>>>>>>>>     - fix the versions of our dependencies so that they are in a
>>>>>>>>  working
>>>>>>>>     state
>>>>>>>>     - consider a point release to get a working build.
>>>>>>>>
>>>>>>>>  I guess my questions to those of us with more javascript and UI
>>>>>>>>  experience
>>>>>>>>  is as follows:
>>>>>>>>
>>>>>>>>     - Does fixing the version of our dependencies actually fix the
>>>>>>>>  problem
>>>>>>>>     transitively?
>>>>>>>>     - IF not, then how do we get a version of a build which is
>>>>>>>>  consistent
>>>>>>>>     and repeatable and does not expose us to downstream licensing
>>>>>>>>  issues?
>>>>>>>>
>>>>>>>>  Thanks,
>>>>>>>>
>>>>>>>>  Casey
>>>>>>>>
>>>>>>>>
>>>>>>> -------------------
>>>> Thank you,
>>>>
>>>> James Sirota
>>>> PPMC- Apache Metron (Incubating)
>>>> jsirota AT apache DOT org
>>>>
>>>>
>>>

Reply via email to