#1328: parameter file parser does not use correct value for parameters in equations ----------------------+----------------------------------------------------- Reporter: rhaas | Owner: Type: defect | Status: new Priority: critical | Milestone: Component: Cactus | Version: Keywords: | ----------------------+----------------------------------------------------- The attached (three line) parfile fails with:
{{{ WARNING level 0 in thorn Cactus processor 0 host horizon.tapir.caltech.edu (line 201 of /mnt/data/rhaas/postdoc/gr/Zelmani/src/main/ProcessParameterDatabase.c): -> CCTKi_SetParameterSetMask: 1 major error in parameter file }}}
ie it does not properly use the just set value "2" of carpet::ghost_zone and instead uses the default of "-1".
I attach parfile and test output. This is very unfortunate since it means that the code silently (if the default ghost_size had been valid input for boundary_x_size_lower) uses wrong parameter values.
#1328: parameter file parser does not use correct value for parameters in equations -----------------------+---------------------------------------------------- Reporter: rhaas | Owner: sbrandt Type: defect | Status: assigned Priority: critical | Milestone: Component: Cactus | Version: Resolution: | Keywords: -----------------------+---------------------------------------------------- Changes (by rhaas):
* owner: => sbrandt * status: new => assigned
#1328: parameter file parser does not use correct value for parameters in equations -----------------------+---------------------------------------------------- Reporter: rhaas | Owner: sbrandt Type: defect | Status: assigned Priority: critical | Milestone: Component: Cactus | Version: Resolution: | Keywords: -----------------------+----------------------------------------------------
Comment (by sbrandt):
The attached patch will actually fix tickets #1290, #1328, and #1324 together.
It contains the fix already attached to #1290, plus another one. Previously, I was maintaining a cache of values set by the parser and using them to get old values rather than ParameterGet. This strategy fails the moment one uses an impl name to set a par value and a thorn name to get it (as in the attached). It was probably a bad idea anyway. In the process of changing this I corrected a variable initialization problem which was the result of Roland's core dump.
A side effect of this fix was my discovery that I'd committed a bad test to the TestPar thorn. TestPar::bool1[3] should evaluate to 0/False.
TestPar::int2[3] = -12*(23%11 + 17) TestPar::bool1[3] = TestPar::int2[3]>0 || -1 >= 10
#1328: parameter file parser does not use correct value for parameters in equations -----------------------+---------------------------------------------------- Reporter: rhaas | Owner: sbrandt Type: defect | Status: review Priority: critical | Milestone: Component: Cactus | Version: Resolution: | Keywords: -----------------------+---------------------------------------------------- Changes (by rhaas):
* status: assigned => review
#1328: parameter file parser does not use correct value for parameters in equations -----------------------+---------------------------------------------------- Reporter: rhaas | Owner: sbrandt Type: defect | Status: reviewed_ok Priority: critical | Milestone: Component: Cactus | Version: Resolution: | Keywords: -----------------------+---------------------------------------------------- Changes (by rhaas):
* status: review => reviewed_ok
Comment:
The attached patch fixes the issue for me.
#1328: parameter file parser does not use correct value for parameters in equations -----------------------+---------------------------------------------------- Reporter: rhaas | Owner: sbrandt Type: defect | Status: closed Priority: critical | Milestone: Component: Cactus | Version: Resolution: fixed | Keywords: -----------------------+---------------------------------------------------- Changes (by sbrandt):
* status: reviewed_ok => closed * resolution: => fixed
trac@lists.einsteintoolkit.org