[DFDL-1143] Tunables should not be global state, related to save-parser Created: 12/Nov/14  Updated: 01/Sep/17  Resolved: 30/Aug/17

Status: Closed
Project: Daffodil
Component/s: CLI, Usability
Affects Version/s: s15
Fix Version/s: 2.0.0

Type: Bug Priority: Normal
Reporter: Elizabeth Finnegan Assignee: Elizabeth Finnegan
Resolution: Fixed Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: 4 hours, 52 minutes
Original Estimate: Not Specified


 Description   

It's unclear whether the -Ttunable=value option should be valid for save-parser or not. Currently, it is listed as an option in the save-parser help but it is not listed on the wiki page. After talking with Steve it seems this is something that needs to be revisited to decide if it should be used for save-parser or only for parse.



 Comments   
Comment by Elizabeth Finnegan [ 01/Sep/17 ]

Verified, added tests, and updated CLI wiki to reflect that tunables can be used with save-parser

Comment by Taylor Wise [ 30/Aug/17 ]

commit 767cb7a6111ae20ffbc8ed2c078742158e8d1046

Comment by Taylor Wise [ 25/Aug/17 ]

Only 789 tests pass.  Most look like they are failing due to a Null Pointer exception.  Likely meaning that the tunable object isn't being set somewhere.

Comment by Taylor Wise [ 25/Aug/17 ]

Status: Everything compiles.  Cleaned up code.  Currently running tests.

Comment by Taylor Wise [ 24/Aug/17 ]

Status: daffodil-core, runtime, lib, test all compile.  Now fixing cli, sapi, japi.  Next step will be to run tests to make sure everything still works as expected.

Comment by Taylor Wise [ 17/Aug/17 ]

Status: Currently debugging a type mismatch which I'm starting to think is due things being corrupt not refreshing.

Comment by Steve Lawrence [ 27/Jul/17 ]

See DFDL-1647, which relies on setting tunables in the TDML runner. Once this is fixed and tunable support is re-enabled, that should work again.

Comment by Steve Lawrence [ 30/Jun/17 ]

See changes made in DFDL-1718. The changes adding an exception and commenting out tests should be reverted when this is resolved.

Comment by Steve Lawrence [ 30/Jun/17 ]

The above is needed to better support using tunables in TDML tests. Current, tunables are global, which means that if a TDML test modifies a tunable, it could potential mess with other tests. So, rather than having DaffodilTunableParameters be a global object, it should instead be a class which each Compiler and DataProcessor getting their own instance (and as mentioned above, perhaps we need separate Compiler/DataProcessor tunables.

Comment by Steve Lawrence [ 22/Jan/15 ]

Tunables should be allowed for the save parser command. However, we might need to split tunables into compiler tunables and runtime tunables. Then we may need separate Compiler.setTunable and DataProcessor.setTunable methods.

Generated at Wed Apr 24 23:14:50 CDT 2024 using Jira 9.12.0#9120000-sha1:e0c80bfafbb0987ecd9cf214f09249800d7ea6a0.