Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#4980 closed defect (fixed)

Javascript result files missing in newInst verification reports by Hudson

Reported by: Francesco Casella Owned by: Martin Sjölund
Priority: high Milestone: 1.13.0
Component: Testing Framework Version:
Keywords: Cc: Adrian Pop, Per Östlund

Description

All test results contained in https://libraries.openmodelica.org/branches/newInst lack the javascript and csv files of wrong signals.

Please fix that ASAP.

Change History (13)

comment:1 by Francesco Casella, 6 years ago

Most likely due to variable/file names containing square brackets that are not escaped correctly.

comment:2 by Francesco Casella, 6 years ago

Now all the test cases with some verification issues are reported as failing during simulation, even though the link under (sim) says the simulation ended successfully, see also #4997

comment:3 by Adrian Pop, 6 years ago

That's my bad, I fixed the Python testing script (all tests were failing) but in one case it was some bad code. It should return to the previous behavior soon enough.

comment:4 by Adrian Pop, 6 years ago

Strangely enough, diff files are generated for "master" branch but not for "newInst" branch.
That might imply some weird error when calling diffSimulationResults due to setting -d=newInst.

comment:5 by Adrian Pop, 6 years ago

What is even more strange is that
ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640
does not verify but
ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_1280
verifies fine :)

in reply to:  4 comment:6 by Francesco Casella, 6 years ago

Cc: Per Östlund added

Replying to adrpo:

Strangely enough, diff files are generated for "master" branch but not for "newInst" branch.
That might imply some weird error when calling diffSimulationResults due to setting -d=newInst.

@perost, any idea?

comment:7 by Adrian Pop, 6 years ago

I think the problem is that Martin used rsync --include-from=pattern-file which copies files that match the *patterns* in pattern-file. But if a file has a pattern like:

/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.transmissionline.L[5].v.csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.transmissionline.L[5].v.html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.transmissionline.L[4].v.csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.transmissionline.L[4].v.html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.transmissionline.L[3].v.csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.transmissionline.L[3].v.html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.transmissionline.L[2].v.csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.transmissionline.L[2].v.html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.transmissionline.C[5].p.i.csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.transmissionline.C[5].p.i.html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.L[5].i).csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.L[5].i).html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.L[4].i).csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.L[4].i).html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.L[3].i).csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.L[3].i).html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.L[2].i).csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.L[2].i).html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.C[5].v).csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.C[5].v).html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.C[4].v).csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.C[4].v).html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.C[3].v).csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.C[3].v).html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.C[2].v).csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.C[2].v).html
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.C[1].v).csv
/files/ScalableTestSuite_noopt_ScalableTestSuite.Electrical.TransmissionLine.ScaledExperiments.TransmissionLineModelica_N_640.diff.der(transmissionline.C[1].v).html

they will actually not match the files in question as the parentheses are interpreted differently in patterns.

I attempt a fix here
https://github.com/OpenModelica/OpenModelicaLibraryTesting/commit/4c8ea0f87c9aa33fd7c3ce8768aadfa79a886c37
where I use different patterns and increase rsync verbosity so we see what is actually copied.

comment:8 by Francesco Casella, 6 years ago

Let's see what happens with the next test run.

However, I'm not sure this is actually the problem. TransmissionLineModelica_N_640 has issues while TransmissionLineModelica_N_320 doesn't. It turns out, the missing variables in the 640 case are also found in the 320 case. So, I'm afraid the root cause is somewhere else, e.g. rsync timeout or something like that.

BTW, are all legal Modelica variable name also legal parts of a filenames in Windows, Linux and MacOS? Otherwise, besides escaping characters that have a "pattern" meaning (assuming it is necessary), we should also encode characters that are not allowed in filenames.

comment:9 by Adrian Pop, 6 years ago

Yes, that is strange that larger or smaller variation of the same model verifies fine but the 640 one doesn't!

There should be no problem with filenames as the things not allowed in filenames are never present in Modelica variables (except maybe when we have quoted identifiers).
Anyhow we have error reporting if the files are not created. The only problem here is that we don't copy them to libraries. The test runs on ripper.openmodelica.org and at the end we copy stuff to libraries.openmodelica.org via rsync.

comment:10 by Francesco Casella, 6 years ago

Let's see if a more verbose rsync will finally tell us what's happening

comment:12 by Adrian Pop, 6 years ago

Resolution: fixed
Status: newclosed

comment:13 by Francesco Casella, 6 years ago

Great, thanks! Now I can make some analysis

Note: See TracTickets for help on using tickets.