This is an automated email from the ASF dual-hosted git repository.
linxinyuan pushed a commit to branch xinyuan-loop-feb
in repository https://gitbox.apache.org/repos/asf/texera.git
The following commit(s) were added to refs/heads/xinyuan-loop-feb by this push:
new 2ba0fa400d update
2ba0fa400d is described below
commit 2ba0fa400d9a993352259e97583324c5bb62ef91
Author: Xinyuan Lin <[email protected]>
AuthorDate: Wed Feb 11 01:39:46 2026 -0800
update
---
.../org/apache/texera/amber/operator/loop/LoopEndOpDesc.scala | 8 ++++++++
.../org/apache/texera/amber/operator/loop/LoopEndOpExec.scala | 7 ++++++-
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git
a/common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/loop/LoopEndOpDesc.scala
b/common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/loop/LoopEndOpDesc.scala
index f56068e903..72f97f7c89 100644
---
a/common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/loop/LoopEndOpDesc.scala
+++
b/common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/loop/LoopEndOpDesc.scala
@@ -19,6 +19,8 @@
package org.apache.texera.amber.operator.loop
+import com.fasterxml.jackson.annotation.JsonProperty
+import com.kjetland.jackson.jsonSchema.annotations.JsonSchemaTitle
import org.apache.texera.amber.core.executor.OpExecWithClassName
import org.apache.texera.amber.core.virtualidentity.{ExecutionIdentity,
WorkflowIdentity}
import org.apache.texera.amber.core.workflow.{InputPort, OutputPort,
PhysicalOp}
@@ -26,6 +28,12 @@ import org.apache.texera.amber.operator.LogicalOp
import org.apache.texera.amber.operator.metadata.{OperatorGroupConstants,
OperatorInfo}
class LoopEndOpDesc extends LogicalOp {
+
+ @JsonProperty(required = true)
+ @JsonSchemaTitle("Iteration Number")
+ var iteration: Int = _
+
+
override def getPhysicalOp(
workflowId: WorkflowIdentity,
executionId: ExecutionIdentity
diff --git
a/common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/loop/LoopEndOpExec.scala
b/common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/loop/LoopEndOpExec.scala
index 9083c1e77a..cb9393ed4f 100644
---
a/common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/loop/LoopEndOpExec.scala
+++
b/common/workflow-operator/src/main/scala/org/apache/texera/amber/operator/loop/LoopEndOpExec.scala
@@ -21,7 +21,12 @@ package org.apache.texera.amber.operator.loop
import org.apache.texera.amber.core.executor.OperatorExecutor
import org.apache.texera.amber.core.tuple.{Tuple, TupleLike}
+import org.apache.texera.amber.util.JSONUtils.objectMapper
+
+
+class LoopEndOpExec(descString: String) extends OperatorExecutor {
+ private val desc: LoopEndOpDesc = objectMapper.readValue(descString,
classOf[LoopEndOpDesc])
+ val iteration: Int = desc.iteration
-class LoopEndOpExec extends OperatorExecutor {
override def processTuple(tuple: Tuple, port: Int): Iterator[TupleLike] =
Iterator(tuple)
}