All,
I created an RC2 checklist for what we discussed at the CCB today. Recall our
CCB Plan Forward (Items in green finished).
* GMT-7243 approved.
* DJC commit this. Send email to Team when finished.
* Tuan create LatestComplete Version. Send email to DSC.
* DSC run bundling package to create the 4 bundles. Send email.
* DSC kick off test.
* Internal Installer AlphaOn
* Public Zip
* Probably will run more over the weekend
* DJC run Sample Linux tests (including API)
* JM run Sample Windows tests (Including API)
* JM to run API script regression tests on Windows.
* DJC to run API script regression tests on Linux.
* MS to run full regression test for RC2
* Internal
* Public
When you are finished with an item, check it off. See the updated Testing of
Release Candidates section of
http://gmatcentral.org/display/GW/GMAT+R2020a+Release+Process
Thanks,
Steve
From: Cooley, D S. (GSFC-5950)
Sent: Wednesday, April 29, 2020 11:37 AM
To: John McGreevy
<[email protected]<mailto:[email protected]>>;
Darrel Conway
<[email protected]<mailto:[email protected]>>; Hughes,
Steven P. (GSFC-5950)
<[email protected]<mailto:[email protected]>>; Shoan, Wendy C.
(GSFC-5830) <[email protected]<mailto:[email protected]>>; Stark,
Michael E. (GSFC-5830)
<[email protected]<mailto:[email protected]>>; Nguyen, Tuan D.
(GSFC-5830) <[email protected]<mailto:[email protected]>>; Royzman,
Tetyana (GSFC-595.0)[Pearl River Technologies]
<[email protected]<mailto:[email protected]>>
Subject: RE: We will need an RC2
Yikes, definitely need to run these much more often.
From: John McGreevy
<[email protected]<mailto:[email protected]>>
Sent: Wednesday, April 29, 2020 11:36 AM
To: Cooley, D S. (GSFC-5950) <[email protected]<mailto:[email protected]>>;
Darrel Conway
<[email protected]<mailto:[email protected]>>; Hughes,
Steven P. (GSFC-5950)
<[email protected]<mailto:[email protected]>>; Shoan, Wendy C.
(GSFC-5830) <[email protected]<mailto:[email protected]>>; Stark,
Michael E. (GSFC-5830)
<[email protected]<mailto:[email protected]>>; Nguyen, Tuan D.
(GSFC-5830) <[email protected]<mailto:[email protected]>>; Royzman,
Tetyana (GSFC-595.0)[Pearl River Technologies]
<[email protected]<mailto:[email protected]>>
Subject: [EXTERNAL] RE: We will need an RC2
We have 48 API tests that take about 5 minutes to run.
From: Cooley, D S. (GSFC-5950) <[email protected]<mailto:[email protected]>>
Sent: Wednesday, 29 April, 2020 11:34
To: John McGreevy
<[email protected]<mailto:[email protected]>>;
Darrel Conway
<[email protected]<mailto:[email protected]>>; Hughes,
Steven P. (GSFC-5950)
<[email protected]<mailto:[email protected]>>; Shoan, Wendy C.
(GSFC-5830) <[email protected]<mailto:[email protected]>>; Stark,
Michael E. (GSFC-5830)
<[email protected]<mailto:[email protected]>>; Nguyen, Tuan D.
(GSFC-5830) <[email protected]<mailto:[email protected]>>; Royzman,
Tetyana (GSFC-595.0)[Pearl River Technologies]
<[email protected]<mailto:[email protected]>>
Subject: RE: We will need an RC2
When you say “Samples,” do you mean the Samples directory? Or do you mean the
API folder?
Lesson Learned: Sounds like we should have run the API folder in addition to
everything in the Samples folder.
Out of curiousity, how many API regression tests do we have and how long do
they take to run?
From: John McGreevy
<[email protected]<mailto:[email protected]>>
Sent: Wednesday, April 29, 2020 10:59 AM
To: Darrel Conway
<[email protected]<mailto:[email protected]>>; Cooley,
D S. (GSFC-5950) <[email protected]<mailto:[email protected]>>; Hughes,
Steven P. (GSFC-5950)
<[email protected]<mailto:[email protected]>>; Shoan, Wendy C.
(GSFC-5830) <[email protected]<mailto:[email protected]>>; Stark,
Michael E. (GSFC-5830)
<[email protected]<mailto:[email protected]>>; Nguyen, Tuan D.
(GSFC-5830) <[email protected]<mailto:[email protected]>>; Royzman,
Tetyana (GSFC-595.0)[Pearl River Technologies]
<[email protected]<mailto:[email protected]>>
Subject: [EXTERNAL] RE: We will need an RC2
Same on WIndows
From: Darrel Conway
<[email protected]<mailto:[email protected]>>
Sent: Wednesday, 29 April, 2020 00:01
To: Cooley, D S. (GSFC-5950) <[email protected]<mailto:[email protected]>>;
John McGreevy
<[email protected]<mailto:[email protected]>>;
Hughes, Steven P. (GSFC-5950)
<[email protected]<mailto:[email protected]>>; Shoan, Wendy C.
(GSFC-5830) <[email protected]<mailto:[email protected]>>; Stark,
Michael E. (GSFC-5830)
<[email protected]<mailto:[email protected]>>; Nguyen, Tuan D.
(GSFC-5830) <[email protected]<mailto:[email protected]>>; Royzman,
Tetyana (GSFC-595.0)[OMITRON]
<[email protected]<mailto:[email protected]>>
Subject: Re: We will need an RC2
With this change, all API samples run as expected in Linux.
On 4/28/20 6:14 PM, Darrel Conway wrote:
The API issue is in a change to the object initializer
(src/base/foundation/ObjectInitializer.cpp, lines 447 and following) made in
early April. The crashing code looks like this:
for (omi = GOS->begin(); omi != GOS->end(); ++omi)
{
GmatBase *obj = omi->second;
if (obj->IsOfType(Gmat::SPACECRAFT))
{
GmatEpoch ep = ((Spacecraft*)(obj))->GetEpoch();
#ifdef DEBUG_BASE_EPOCH
MessageInterface::ShowMessage("--- (GOS) earliest is %.12lf\n",
earliest);
MessageInterface::ShowMessage("--- (GOS) ep is %.12lf\n", ep);
#endif
// Find the earliest Spacecraft time but omit the standard default
epoch
if ((ep < earliest) && !(GmatMathUtil::IsEqual(ep, baseDefault,
epochTol)))
earliest = ep;
}
}
The issue is that the global object store (GOS) likely does not exist when GMAT
is run using the API. The fix looks like this:
if (includeGOS)
{
for (omi = GOS->begin(); omi != GOS->end(); ++omi)
{
GmatBase *obj = omi->second;
if (obj->IsOfType(Gmat::SPACECRAFT))
{
GmatEpoch ep = ((Spacecraft*)(obj))->GetEpoch();
#ifdef DEBUG_BASE_EPOCH
MessageInterface::ShowMessage("--- (GOS) earliest is %.12lf\n",
earliest);
MessageInterface::ShowMessage("--- (GOS) ep is %.12lf\n", ep);
#endif
// Find the earliest Spacecraft time but omit the standard default
epoch
if ((ep < earliest) && !(GmatMathUtil::IsEqual(ep, baseDefault,
epochTol)))
earliest = ep;
}
}
}
(I attached the file containing the fix.)
Lesson learned: We need to get the API tests better integrated into the script
test system. We've known this, but haven't had schedule to make it happen.
The good news, such as it is, is that the boolean parameter includeGOS rarely
affects the code in a meaningful way, except when the system is run using the
API. (The global object store in NULL in API runs, leading to the crash.)
Generally in GMAT, running from either the console or the GUI, the GOS is set
regardless of the setting on this flag, and the flag itself is false except
when managing functions or manipulating owned objects in a Sandbox.
That means that generally speaking, the test results seen to date are likely
still solid (but, of course, must be rechecked). The question remains how to
proceed; here's what I suggest:
1. John and I check the code fix for use in the API examples
2. Rebuild with the fix, and run the internal/no alpha script tests (or turn
on the alphas)
3. Run additional TBD test sets - maybe all of them, but that may be
overkill.
If #2 matches the results of the existing runs, I'd be in favor of declaring
the fix valid. Running the subset test cases (public etc) just turns off
cases, and we've already checked that the packaging is correct for those
subsets.
Thoughts?
- DJC
On 4/28/20 4:52 PM, Darrel Conway wrote:
Something that occurred recently has broken the API. We were solid on 3/23.
We are crashing the the release packages for Linux and Windows.
Investigating now. There are plenty of intervening code merges. Sigh.
- DJC
--
Darrel J. Conway, Ph.D. Thinking Systems, Inc.
Senior Scientist and CEO 437 W Thurber Road, Suite 6
Phone: (623) 298-4530 Tucson, AZ 85705
FAX: (520) 232-2533
www.thinksysinc.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__www.thinksysinc.com&d=DwMGaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=VScJSNoKSOyAbmOHypDTOJwz8PcYtqjPxvOf88b9L1k&m=zR-4P7iAhsh7NOhF68Pkbiykuoe-X5G5KnOjiwprQrg&s=doVt1mu-rtw32Zz_NRAL3zO385cbBLVKgQ0iLXG5ITI&e=>
Cell: (520) 425-3626
[email protected]<mailto:[email protected]>
--
Darrel J. Conway, Ph.D. Thinking Systems, Inc.
Senior Scientist and CEO 437 W Thurber Road, Suite 6
Phone: (623) 298-4530 Tucson, AZ 85705
FAX: (520) 232-2533
www.thinksysinc.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__www.thinksysinc.com&d=DwMGaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=VScJSNoKSOyAbmOHypDTOJwz8PcYtqjPxvOf88b9L1k&m=zR-4P7iAhsh7NOhF68Pkbiykuoe-X5G5KnOjiwprQrg&s=doVt1mu-rtw32Zz_NRAL3zO385cbBLVKgQ0iLXG5ITI&e=>
Cell: (520) 425-3626
[email protected]<mailto:[email protected]>
_______________________________________________
Gmat-buildtest mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gmat-buildtest