mbeckerle commented on a change in pull request #560:
URL: https://github.com/apache/daffodil/pull/560#discussion_r635334464



##########
File path: 
daffodil-tdml-processor/src/main/scala/org/apache/daffodil/tdml/processor/DaffodilTDMLDFDLProcessor.scala
##########
@@ -159,14 +163,18 @@ final class TDMLDFDLProcessorFactory private (
   override def getProcessor(
     schemaSource: DaffodilSchemaSource,
     useSerializedProcessor: Boolean,
-    optRootName: Option[String] = None,
-    optRootNamespace: Option[String] = None): TDML.CompileResult = {
+    optRootName: Option[String],
+    optRootNamespace: Option[String],
+    tunables: Map[String, String]): TDML.CompileResult = {

Review comment:
       Some of the tunables affect compilation, hence, unless they are passed 
in, the cache can return a false match. The unqualifiedPathStepPolicy is the 
primary one where I was actually getting a test failure (can't recall which 
test), but there can (perhaps are) others, so I decided to just pass them all 
in. 
   We could make a subset data structure with just the compler-affecting 
tunables in it, but there are a lot of them, many are used both at compile time 
and runtime. 
   
   These are the tunables accessed by schema compilation:
   unqualifiedPathStepPolicy
   requireTextStandardBaseProperty
   requireEmptyElementParsePolicyProperty
   allowExpressionResultCoercion
   requireChoiceDispatchKeyKindProperty
   requireFloatingProperty
   generatedNamespacePrefixStem
   requireTextBidiProperty
   requireEncodingErrorPolicyProperty
   maxBinaryDecimalVirtualPoint
   minBinaryDecimalVirtualPoint
   parseUnparsePolicy
   maxSkipLengthInBytes
   initialRegexMatchLimitInCharacters
   defaultEmptyElementParsePolicy
   ... and any used by expressions which are evaluated at compile time for 
constant folding purposes.
   e.g., maxValidYear, minValidYear, 
   
   Any of these changing *could* result in an SDE vs. successful compilation. 
   




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to