Skip to content

Fix/datarace flags #607

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
May 27, 2015
Merged

Conversation

odersky
Copy link
Contributor

@odersky odersky commented May 26, 2015

Made FlagTranslation threadsafe, Review by @DarkDimius or @retronym or @vsalvis

odersky added 2 commits May 26, 2015 21:29
Both tests fail with the same error: "Cannot create object because
protected[this] newBuilder is not implemented". Not clear why partests
claim to succeed here.
@odersky
Copy link
Contributor Author

odersky commented May 26, 2015

/rebuild

@odersky
Copy link
Contributor Author

odersky commented May 26, 2015

The test says "output differs" on one of the run tests. How do get at the log file in jenkins?

@DarkDimius
Copy link
Contributor

@odersky, it's quite involved, you'll need help from either @lrytz or @adriaanm.

@odersky
Copy link
Contributor Author

odersky commented May 26, 2015

Note: I cannot run the tests locally. sbt partest gives:

[error] Test dotc.tests.new_all failed: scala.reflect.io.FileOperationException: File 'arrays.flags' already exists., took 0.008 sec
[error] at scala.reflect.io.Path$.fail(Path.scala:78)
[error] at scala.reflect.io.Path.createFile(Path.scala:235)
[error] at test.CompilerTest.copyFiles(CompilerTest.scala:238)
[error] at test.CompilerTest.computeDestAndCopyFiles(CompilerTest.scala:220)

So it seems we are truly stuck.

@DarkDimius
Copy link
Contributor

ping @vsalvis, see stacktrace in previous comment.

@vsalvis
Copy link
Contributor

vsalvis commented May 26, 2015

Running locally, I get the test failure as well for:
[info] !! 376 - run/t7291.scala [output differs]
The diff is that it prints only "conjure", whereas the check file is

conjure
traversable

I also see spurious failures of pos/tools and pos/io on my machine.

@odersky, can you try manually deleting the /Users/vera/git/dotty/tests/partest-generated/ directory? Do you have uncommitted tests in dotty/tests/new? What does the /Users/vera/git/dotty/tests/partest-generated/gen.log file say in the end (output might be out of order because of parallel JUnit tests)?

@adriaanm
Copy link
Contributor

@DarkDimius, this is a side-effect of how you run partest. You can make it output the diff with --show-diff (https://github.com/scala/scala-partest/blob/3e608c08a80dd8aaece52b2638518b7281fc6c15/src/main/scala/scala/tools/partest/nest/ConsoleRunnerSpec.scala#L38). You can also archive the log files if you prefer as build artifacts (with a variation on: https://github.com/scala/scala-jenkins-infra/blob/master/templates/default/jobs/scala/validate/test.xml.erb#L20).

@retronym
Copy link
Member

Here's the corresponding fix for Scalac: scala/scala#2842

@DarkDimius
Copy link
Contributor

@adriaanm, for some reason, --show-diff does not work on Dotty. #609

DarkDimius added a commit to DarkDimius/scala-jenkins-infra that referenced this pull request May 27, 2015
@DarkDimius
Copy link
Contributor

LGTM, though need to make tests pass, or disable failing tests.

@vsalvis
Copy link
Contributor

vsalvis commented May 27, 2015

Sorry this slipped through, we talked about displaying as much debugging
output as possible because of the difficulties of accessing logs. It
probably makes sense to run partest on Jenkins with "--verbose" to get more
information about failures at the end. --verbose will also display diffs if
there are any, as well as compilation logs if compilation failed.
On May 27, 2015 9:21 AM, "Dmitry Petrashko" [email protected]
wrote:

LGTM, though need to make tests pass, or disable failing tests.


Reply to this email directly or view it on GitHub
#607 (comment).

@DarkDimius
Copy link
Contributor

@vsalvis, lets take partest discussion to #609

@odersky
Copy link
Contributor Author

odersky commented May 27, 2015

@vsalvis Thanks for the tip. It was indeed an uncommitted .java file in tests/new. Now I can run partest locally, and get the same test failure you are seeing on run/t7291, both on current master and this branch. Which makes me wonder how master could have succeeded? Do we have flakey run test diagnosis in jenkins, or is it some other problem?

odersky added 3 commits May 27, 2015 10:30
Some of them were moved from disabled after verifiying that they compile now.
@odersky
Copy link
Contributor Author

odersky commented May 27, 2015

@smarter I did a reorg of disabled after all. It was easier to do it sooner rather than later.

DarkDimius added a commit that referenced this pull request May 27, 2015
@DarkDimius DarkDimius merged commit 6ec4b0a into scala:master May 27, 2015
@allanrenucci allanrenucci deleted the fix/datarace-flags branch December 14, 2017 19:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants