This is an automated email from the ASF dual-hosted git repository.

zhangmang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/auron.git


The following commit(s) were added to refs/heads/master by this push:
     new 6f77955d [AURON #1858] Introduce Flink Auron interface (#2057)
6f77955d is described below

commit 6f77955d3586652226b5983f0077b1242d8b9e29
Author: zhangmang <[email protected]>
AuthorDate: Tue Mar 3 17:14:13 2026 +0800

    [AURON #1858] Introduce Flink Auron interface (#2057)
    
    # Which issue does this PR close?
    
    Closes #1858
    
    # Rationale for this change
    
    Introducing Flink support for the Operator and Function interfaces
    implemented by Auron to facilitate subsequent feature development.
    
    # What changes are included in this PR?
    * add SupportsAuronNative
    * add FlinkAuronFunction
    * FlinkAuronOperator
    
    # Are there any user-facing changes?
    
    * No
    
    # How was this patch tested?
    * No need test
---
 .../flink/runtime/operator/FlinkAuronFunction.java | 22 ++++++++++
 .../flink/runtime/operator/FlinkAuronOperator.java | 22 ++++++++++
 .../runtime/operator/SupportsAuronNative.java      | 48 ++++++++++++++++++++++
 3 files changed, 92 insertions(+)

diff --git 
a/auron-flink-extension/auron-flink-runtime/src/main/java/org/apache/auron/flink/runtime/operator/FlinkAuronFunction.java
 
b/auron-flink-extension/auron-flink-runtime/src/main/java/org/apache/auron/flink/runtime/operator/FlinkAuronFunction.java
new file mode 100644
index 00000000..6c26de6c
--- /dev/null
+++ 
b/auron-flink-extension/auron-flink-runtime/src/main/java/org/apache/auron/flink/runtime/operator/FlinkAuronFunction.java
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.auron.flink.runtime.operator;
+
+/**
+ * Flink function which supports Auron should implement this interface.
+ */
+public interface FlinkAuronFunction extends SupportsAuronNative {}
diff --git 
a/auron-flink-extension/auron-flink-runtime/src/main/java/org/apache/auron/flink/runtime/operator/FlinkAuronOperator.java
 
b/auron-flink-extension/auron-flink-runtime/src/main/java/org/apache/auron/flink/runtime/operator/FlinkAuronOperator.java
new file mode 100644
index 00000000..2318c76b
--- /dev/null
+++ 
b/auron-flink-extension/auron-flink-runtime/src/main/java/org/apache/auron/flink/runtime/operator/FlinkAuronOperator.java
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.auron.flink.runtime.operator;
+
+/**
+ * Flink operator which supports Auron should implement this interface.
+ */
+public interface FlinkAuronOperator extends SupportsAuronNative {}
diff --git 
a/auron-flink-extension/auron-flink-runtime/src/main/java/org/apache/auron/flink/runtime/operator/SupportsAuronNative.java
 
b/auron-flink-extension/auron-flink-runtime/src/main/java/org/apache/auron/flink/runtime/operator/SupportsAuronNative.java
new file mode 100644
index 00000000..a15c595c
--- /dev/null
+++ 
b/auron-flink-extension/auron-flink-runtime/src/main/java/org/apache/auron/flink/runtime/operator/SupportsAuronNative.java
@@ -0,0 +1,48 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.auron.flink.runtime.operator;
+
+import java.util.List;
+import org.apache.auron.metric.MetricNode;
+import org.apache.auron.protobuf.PhysicalPlanNode;
+import org.apache.flink.table.types.logical.RowType;
+
+/**
+ * Support native Auron interface.
+ */
+public interface SupportsAuronNative {
+
+    /**
+     * Get physical plan nodes.
+     */
+    List<PhysicalPlanNode> getPhysicalPlanNodes();
+
+    /**
+     * Get output type.
+     */
+    RowType getOutputType();
+
+    /**
+     * Get Auron operator id.
+     */
+    String getAuronOperatorId();
+
+    /**
+     * Get metric node.
+     */
+    MetricNode getMetricNode();
+}

Reply via email to