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

Alexander Kriegisch commented on SUREFIRE-1881:
-----------------------------------------------

Why not? It sounds good to me.

_Some slightly off-topic background information: Me being an Agile Coach - not 
a simple Scrum Master, BTW - I have been training and coaching Scrum Masters, 
teams and management for almost 15 years, before then I was a developer myself 
- I am all for direct collaboration, avoiding the 7 wastes of lean production 
as they also appear in [software 
development|https://agilecoachdiaries.wordpress.com/2017/01/19/lean-software-development-7-wastes-of-software-development/]._

This problem existed for months, led to many misunderstandings in this ticket 
as well as a previous one already and was a huge waste of time and effort for 
all people involved. Unfortunately and somewhat ironically, this is typical in 
OSS development, where there often is a lack of direct collaboration (think 
pair programming or at least direct interactive calls). Why am I saying 
"ironically"? Because in OSS most people work in their scarce sparetime, which 
should motivate them to want to use their time efficiently. But instead, they 
are doing the opposite, wasting time by working as lone wolf superheroes. The 
thing is, a *group* of rock star programmers working on the same OSS project is 
still inefficient and easily outperformed by some slightly above-average 
programmers who collaborate closely and are a *team,* not just a group - a team 
being more than the sum of its constituents. {{group != team}}.

This issue here could have been resolved long ago with less work, less pain and 
less irritation. Tibor could focus on his Surefire 3 roadmap if this was off 
the table.

> Java agent printing to native console makes build block when using 
> SurefireForkNodeFactory
> ------------------------------------------------------------------------------------------
>
>                 Key: SUREFIRE-1881
>                 URL: https://issues.apache.org/jira/browse/SUREFIRE-1881
>             Project: Maven Surefire
>          Issue Type: Bug
>          Components: Maven Failsafe Plugin, Maven Surefire Plugin
>    Affects Versions: 3.0.0-M5
>            Reporter: Alexander Kriegisch
>            Assignee: Tibor Digana
>            Priority: Major
>         Attachments: Bildschirmfoto von 2021-03-29 21-50-25.png, 
> image-2021-02-08-12-07-34-183.png, image-2021-03-26-09-48-11-398.png, 
> image-2021-03-26-09-52-36-881.png, image-2021-03-26-18-00-37-889.png, 
> image-2021-03-31-11-22-50-682.png, image-2021-03-31-11-38-11-119.png, 
> image-2021-03-31-12-31-55-818.png, image-2021-03-31-12-32-41-589.png, 
> maven-failsafe-debug-log.txt, screenshot-1.png, screenshot-2.png
>
>
> This is a follow-up to SUREFIRE-1788 which was closed prematurely even though 
> there still were open issues which were discussed there initially. Basically 
> the situation is as follows:
>  * I use Java agents writing to stdOut and stdErr in my tests.
>  * I was annoyed that Surefire/Failsafe were writing lots of {{[WARNING] 
> Corrupted STDOUT by directly writing to native stream in forked JVM}} lines 
> into {{*-jvmRun1.dumpstream}} files. [~tibordigana] then told me to use 
> {{<forkNode 
> implementation="org.apache.maven.plugin.surefire.extensions.SurefireForkNodeFactory"/>}}
>  in my POM in order to fix the issue.
>  * I tried this in version 3.0.0-M5, but unfortunately, it makes 
> Surefire/Failsafe freeze if a Java agent prints something to stdOut or 
> stdErr. This happens both in M5 and in M6-SNAPSHOT after both SUREFIRE-1788 
> and SUREFIRE-1809 have been merged in already.
>  * My [sample 
> project|https://github.com/kriegaex/Maven_Surefire_PrintToConsoleProblems] 
> reproduces the issue as soon as you uncomment the option in the POM and run 
> {{mvn clean verify}}.
>  * The second issue is: *Not* using this option leads to garbled log output 
> when a Java agent writes to both stdOut and stdErr before/during tests. See 
> comments in class 
> [{{Agent.DummyTransformer}}|https://github.com/kriegaex/Maven_Surefire_PrintToConsoleProblems/blob/master/src/main/java/de/scrum_master/dummy/Agent.java]
>  for examples for garbled log lines and also comments in 
> [pom.xml|https://github.com/kriegaex/Maven_Surefire_PrintToConsoleProblems/blob/master/pom.xml#L36]
>  for further information.
>  * If the garbled output would also appear with this option activated, cannot 
> be tested at present due to the Surefire/Failsafe freeze. I will re-test that 
> after the freeze has been fixed and before this issue can be closed.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to