summaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/schema/expressiontransforms
diff options
context:
space:
mode:
authorArne Juul <arnej@yahooinc.com>2023-03-08 13:14:52 +0000
committerArne Juul <arnej@yahooinc.com>2023-03-08 15:10:34 +0000
commitba27fe6783235871f1737c15ec7a0b5caebc90ab (patch)
tree7883ecd1649970201d6426acdb33fdb3636fdfeb /config-model/src/main/java/com/yahoo/schema/expressiontransforms
parenta5276a07e0e9a4b06a715609aeec9f6a78dadba2 (diff)
Reapply "deeper processing of onnx inputs"
This reverts commit 9c495646db8acadc02f698b5326c67dc8a59d283.
Diffstat (limited to 'config-model/src/main/java/com/yahoo/schema/expressiontransforms')
-rw-r--r--config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java11
1 files changed, 10 insertions, 1 deletions
diff --git a/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java b/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java
index 4e7988a2006..b0f63ebb732 100644
--- a/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java
+++ b/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java
@@ -3,13 +3,16 @@ package com.yahoo.schema.expressiontransforms;
import com.yahoo.schema.FeatureNames;
import com.yahoo.schema.RankProfile;
+import com.yahoo.searchlib.rankingexpression.RankingExpression;
import com.yahoo.searchlib.rankingexpression.Reference;
+import com.yahoo.searchlib.rankingexpression.parser.ParseException;
import com.yahoo.searchlib.rankingexpression.rule.CompositeNode;
import com.yahoo.searchlib.rankingexpression.rule.ConstantNode;
import com.yahoo.searchlib.rankingexpression.rule.ExpressionNode;
import com.yahoo.searchlib.rankingexpression.rule.ReferenceNode;
import com.yahoo.searchlib.rankingexpression.transform.ExpressionTransformer;
+import java.io.StringReader;
import java.util.Set;
/**
@@ -83,7 +86,13 @@ public class InputRecorder extends ExpressionTransformer<RankProfileTransformCon
throw new IllegalArgumentException("missing onnx model: " + arg);
}
for (String onnxInput : model.getInputMap().values()) {
- neededInputs.add(onnxInput);
+ var reader = new StringReader(onnxInput);
+ try {
+ var asExpression = new RankingExpression(reader);
+ transform(asExpression.getRoot(), context);
+ } catch (ParseException e) {
+ throw new IllegalArgumentException("illegal onnx input '" + onnxInput + "': " + e.getMessage());
+ }
}
return;
}