You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apex.apache.org by th...@apache.org on 2017/07/21 23:37:04 UTC

[apex-malhar] branch master updated: APEXMALHAR-2488 APEXMALHAR-2503 Deprecated inner join operator and ignored tests Removed inner join example

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

thw pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/apex-malhar.git


The following commit(s) were added to refs/heads/master by this push:
     new b443b1a  APEXMALHAR-2488 APEXMALHAR-2503 Deprecated inner join operator and ignored tests Removed inner join example
b443b1a is described below

commit b443b1ac31f9275c682ea74508db00f2c168ff50
Author: bhupeshchawda <bh...@apache.org>
AuthorDate: Sun May 28 20:19:56 2017 -0700

    APEXMALHAR-2488 APEXMALHAR-2503 Deprecated inner join operator and ignored tests
    Removed inner join example
---
 examples/innerjoin/README.md                       |   6 -
 examples/innerjoin/pom.xml                         |  70 -----
 examples/innerjoin/src/assemble/appPackage.xml     |  63 -----
 .../examples/innerjoin/InnerJoinApplication.java   |  60 -----
 .../apex/examples/innerjoin/POJOGenerator.java     | 286 ---------------------
 .../src/main/resources/META-INF/properties.xml     |  56 ----
 .../innerjoin/InnerJoinApplicationTest.java        |  40 ---
 .../innerjoin/src/test/resources/log4j.properties  |  43 ----
 examples/pom.xml                                   |   1 -
 .../malhar/lib/join/POJOInnerJoinOperator.java     |   6 +
 .../lib/join/POJOPartitionJoinOperatorTest.java    |   2 +
 11 files changed, 8 insertions(+), 625 deletions(-)

diff --git a/examples/innerjoin/README.md b/examples/innerjoin/README.md
deleted file mode 100644
index 7cc1d7d..0000000
--- a/examples/innerjoin/README.md
+++ /dev/null
@@ -1,6 +0,0 @@
-Sample application to show how to use the POJOInnerJoinOperator to join two data streams.
-
-Operators in sample application are as follows:
-1) POJOGenerator which emits SalesEvent/ProductEvent POJO's
-2) POJOInnerJoinOperator which joins two POJO streams and emits POJO tuple.
-3) ConsoleOutputOperator which write joined POJO tuples to stdout.
diff --git a/examples/innerjoin/pom.xml b/examples/innerjoin/pom.xml
deleted file mode 100644
index c9438f4..0000000
--- a/examples/innerjoin/pom.xml
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
-    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.
-
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-
-  <parent>
-    <groupId>org.apache.apex</groupId>
-    <artifactId>malhar-examples</artifactId>
-    <version>3.8.0-SNAPSHOT</version>
-  </parent>
-
-  <artifactId>malhar-examples-innerjoin</artifactId>
-  <packaging>jar</packaging>
-
-  <name>Apache Apex Malhar Inner Join Example</name>
-  <description>Sample Application for Inner Join</description>
-
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.apex</groupId>
-      <artifactId>malhar-library</artifactId>
-      <version>${project.version}</version>
-      <!--
-           If you know that your application does not need transitive dependencies pulled in by malhar-library,
-           uncomment the following to reduce the size of your app package.
-      -->
-      <exclusions>
-        <exclusion>
-          <groupId>*</groupId>
-          <artifactId>*</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven.plugins</groupId>
-      <artifactId>maven-surefire-plugin</artifactId>
-      <version>2.14.1</version>
-    </dependency>
-    <dependency>
-      <groupId>joda-time</groupId>
-      <artifactId>joda-time</artifactId>
-      <version>2.9.1</version>
-    </dependency>
-    <dependency>
-      <groupId>org.codehaus.janino</groupId>
-      <artifactId>commons-compiler</artifactId>
-      <version>2.7.8</version>
-      <type>jar</type>
-    </dependency>
-  </dependencies>
-</project>
diff --git a/examples/innerjoin/src/assemble/appPackage.xml b/examples/innerjoin/src/assemble/appPackage.xml
deleted file mode 100644
index a870807..0000000
--- a/examples/innerjoin/src/assemble/appPackage.xml
+++ /dev/null
@@ -1,63 +0,0 @@
-<!--
-
-    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.
-
--->
-<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
-  <id>appPackage</id>
-  <formats>
-    <format>jar</format>
-  </formats>
-  <includeBaseDirectory>false</includeBaseDirectory>
-  <fileSets>
-    <fileSet>
-      <directory>${basedir}/target/</directory>
-      <outputDirectory>/app</outputDirectory>
-      <includes>
-        <include>${project.artifactId}-${project.version}.jar</include>
-      </includes>
-    </fileSet>
-    <fileSet>
-      <directory>${basedir}/target/deps</directory>
-      <outputDirectory>/lib</outputDirectory>
-    </fileSet>
-    <fileSet>
-      <directory>${basedir}/src/site/conf</directory>
-      <outputDirectory>/conf</outputDirectory>
-      <includes>
-        <include>*.xml</include>
-      </includes>
-    </fileSet>
-    <fileSet>
-      <directory>${basedir}/src/main/resources/META-INF</directory>
-      <outputDirectory>/META-INF</outputDirectory>
-    </fileSet>
-    <fileSet>
-      <directory>${basedir}/src/main/resources/app</directory>
-      <outputDirectory>/app</outputDirectory>
-    </fileSet>
-    <fileSet>
-      <directory>${basedir}/src/main/resources/resources</directory>
-      <outputDirectory>/resources</outputDirectory>
-    </fileSet>
-  </fileSets>
-
-</assembly>
-
diff --git a/examples/innerjoin/src/main/java/org/apache/apex/examples/innerjoin/InnerJoinApplication.java b/examples/innerjoin/src/main/java/org/apache/apex/examples/innerjoin/InnerJoinApplication.java
deleted file mode 100644
index 809e115..0000000
--- a/examples/innerjoin/src/main/java/org/apache/apex/examples/innerjoin/InnerJoinApplication.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- * 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.apex.examples.innerjoin;
-
-import org.apache.apex.malhar.lib.join.POJOInnerJoinOperator;
-import org.apache.hadoop.conf.Configuration;
-
-import com.datatorrent.api.Context;
-import com.datatorrent.api.DAG;
-import com.datatorrent.api.StreamingApplication;
-import com.datatorrent.api.annotation.ApplicationAnnotation;
-import com.datatorrent.lib.io.ConsoleOutputOperator;
-
-@ApplicationAnnotation(name = "InnerJoinExample")
-/**
- * @since 3.7.0
- */
-public class InnerJoinApplication implements StreamingApplication
-{
-  @Override
-  public void populateDAG(DAG dag, Configuration conf)
-  {
-    // SalesEvent Generator
-    POJOGenerator salesGenerator = dag.addOperator("Input1", new POJOGenerator());
-    // ProductEvent Generator
-    POJOGenerator productGenerator = dag.addOperator("Input2", new POJOGenerator());
-    productGenerator.setSalesEvent(false);
-
-    // Inner join Operator
-    POJOInnerJoinOperator join = dag.addOperator("Join", new POJOInnerJoinOperator());
-    ConsoleOutputOperator output = dag.addOperator("Output", new ConsoleOutputOperator());
-
-    // Streams
-    dag.addStream("SalesToJoin", salesGenerator.output, join.input1);
-    dag.addStream("ProductToJoin", productGenerator.output, join.input2);
-    dag.addStream("JoinToConsole", join.outputPort, output.input);
-
-    // Setting tuple class properties to the ports of join operator
-    dag.setInputPortAttribute(join.input1, Context.PortContext.TUPLE_CLASS, POJOGenerator.SalesEvent.class);
-    dag.setInputPortAttribute(join.input2, Context.PortContext.TUPLE_CLASS, POJOGenerator.ProductEvent.class);
-    dag.setOutputPortAttribute(join.outputPort,Context.PortContext.TUPLE_CLASS, POJOGenerator.SalesEvent.class);
-  }
-}
diff --git a/examples/innerjoin/src/main/java/org/apache/apex/examples/innerjoin/POJOGenerator.java b/examples/innerjoin/src/main/java/org/apache/apex/examples/innerjoin/POJOGenerator.java
deleted file mode 100644
index 7a4344b..0000000
--- a/examples/innerjoin/src/main/java/org/apache/apex/examples/innerjoin/POJOGenerator.java
+++ /dev/null
@@ -1,286 +0,0 @@
-/**
- * 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.apex.examples.innerjoin;
-
-import java.util.Random;
-
-import javax.validation.constraints.Min;
-
-import com.datatorrent.api.Context;
-import com.datatorrent.api.DefaultOutputPort;
-import com.datatorrent.api.InputOperator;
-
-/**
- * Generates and emits the SalesEvent/ProductEvent based on isSalesEvent.
- *
- * @since 3.7.0
- */
-public class POJOGenerator implements InputOperator
-{
-  @Min(1)
-  private int maxProductId = 100000;
-  @Min(1)
-  private int maxCustomerId = 100000;
-  @Min(1)
-  private int maxProductCategories = 100;
-  private double maxAmount = 100.0;
-  private long tuplesCounter;
-  private long time;
-  private long timeIncrement;
-  private boolean isSalesEvent = true;
-  // Limit number of emitted tuples per window
-  @Min(0)
-  private long maxTuplesPerWindow = 100;
-  private final Random random = new Random();
-  public final transient DefaultOutputPort<Object> output = new DefaultOutputPort<>();
-
-  @Override
-  public void beginWindow(long windowId)
-  {
-    tuplesCounter = 0;
-  }
-
-  @Override
-  public void endWindow()
-  {
-    time += timeIncrement;
-  }
-
-  @Override
-  public void setup(Context.OperatorContext context)
-  {
-    time = System.currentTimeMillis();
-    timeIncrement = context.getValue(Context.OperatorContext.APPLICATION_WINDOW_COUNT) *
-      context.getValue(Context.DAGContext.STREAMING_WINDOW_SIZE_MILLIS);
-  }
-
-  @Override
-  public void teardown()
-  {
-
-  }
-
-  SalesEvent generateSalesEvent() throws Exception
-  {
-    SalesEvent salesEvent = new SalesEvent();
-    salesEvent.productId = randomId(maxProductId);
-    salesEvent.customerId = randomId(maxCustomerId);
-    salesEvent.amount = randomAmount();
-    salesEvent.timestamp = time;
-    return salesEvent;
-  }
-
-  ProductEvent generateProductEvent() throws Exception
-  {
-    ProductEvent productEvent = new ProductEvent();
-    productEvent.productId = randomId(maxProductId);
-    productEvent.productCategory = randomId(maxProductCategories);
-    productEvent.timestamp = time;
-    return productEvent;
-  }
-
-  private int randomId(int max)
-  {
-    if (max < 1) {
-      return 1;
-    }
-    return 1 + random.nextInt(max);
-  }
-
-  private double randomAmount()
-  {
-    return maxAmount * random.nextDouble();
-  }
-
-  @Override
-  public void emitTuples()
-  {
-    while (tuplesCounter++ < maxTuplesPerWindow) {
-      try {
-        if (isSalesEvent) {
-          SalesEvent event = generateSalesEvent();
-          this.output.emit(event);
-        } else {
-          ProductEvent event = generateProductEvent();
-          this.output.emit(event);
-        }
-
-      } catch (Exception ex) {
-        throw new RuntimeException(ex);
-      }
-    }
-  }
-
-  public static class SalesEvent
-  {
-    public int customerId;
-    public int productId;
-    public int productCategory;
-    public double amount;
-    public long timestamp;
-
-    public int getCustomerId()
-    {
-      return customerId;
-    }
-
-    public void setCustomerId(int customerId)
-    {
-      this.customerId = customerId;
-    }
-
-    public int getProductId()
-    {
-      return productId;
-    }
-
-    public void setProductId(int productId)
-    {
-      this.productId = productId;
-    }
-
-    public int getProductCategory()
-    {
-      return productCategory;
-    }
-
-    public void setProductCategory(int productCategory)
-    {
-      this.productCategory = productCategory;
-    }
-
-    public double getAmount()
-    {
-      return amount;
-    }
-
-    public void setAmount(double amount)
-    {
-      this.amount = amount;
-    }
-
-    public long getTimestamp()
-    {
-      return timestamp;
-    }
-
-    public void setTimestamp(long timestamp)
-    {
-      this.timestamp = timestamp;
-    }
-  }
-
-  public static class ProductEvent
-  {
-    public int productId;
-    public int productCategory;
-    public long timestamp;
-
-    public int getProductId()
-    {
-      return productId;
-    }
-
-    public void setProductId(int productId)
-    {
-      this.productId = productId;
-    }
-
-    public int getProductCategory()
-    {
-      return productCategory;
-    }
-
-    public void setProductCategory(int productCategory)
-    {
-      this.productCategory = productCategory;
-    }
-
-    public long getTimestamp()
-    {
-      return timestamp;
-    }
-
-    public void setTimestamp(long timestamp)
-    {
-      this.timestamp = timestamp;
-    }
-  }
-
-  public int getMaxProductId()
-  {
-    return maxProductId;
-  }
-
-  public void setMaxProductId(int maxProductId)
-  {
-    this.maxProductId = maxProductId;
-  }
-
-  public int getMaxCustomerId()
-  {
-    return maxCustomerId;
-  }
-
-  public void setMaxCustomerId(int maxCustomerId)
-  {
-    this.maxCustomerId = maxCustomerId;
-  }
-
-  public int getMaxProductCategories()
-  {
-    return maxProductCategories;
-  }
-
-  public void setMaxProductCategories(int maxProductCategories)
-  {
-    this.maxProductCategories = maxProductCategories;
-  }
-
-  public double getMaxAmount()
-  {
-    return maxAmount;
-  }
-
-  public void setMaxAmount(double maxAmount)
-  {
-    this.maxAmount = maxAmount;
-  }
-
-  public boolean isSalesEvent()
-  {
-    return isSalesEvent;
-  }
-
-  public void setSalesEvent(boolean salesEvent)
-  {
-    isSalesEvent = salesEvent;
-  }
-
-  public long getMaxTuplesPerWindow()
-  {
-    return maxTuplesPerWindow;
-  }
-
-  public void setMaxTuplesPerWindow(long maxTuplesPerWindow)
-  {
-    this.maxTuplesPerWindow = maxTuplesPerWindow;
-  }
-}
diff --git a/examples/innerjoin/src/main/resources/META-INF/properties.xml b/examples/innerjoin/src/main/resources/META-INF/properties.xml
deleted file mode 100644
index 879d010..0000000
--- a/examples/innerjoin/src/main/resources/META-INF/properties.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0"?>
-<!--
-
-    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.
-
--->
-<configuration>
-  <property>
-    <name>dt.application.InnerJoinExample.operator.Join.attr.MEMORY_MB</name>
-    <value>1024</value>
-  </property>
-  <property>
-    <name>dt.application.InnerJoinExample.operator.Join.prop.leftKeyExpression</name>
-    <value>productId</value>
-  </property>
-  <property>
-    <name>dt.application.InnerJoinExample.operator.Join.prop.rightKeyExpression</name>
-    <value>productId</value>
-  </property>
-  <property>
-    <name>dt.application.InnerJoinExample.operator.Join.prop.timeFieldsStr</name>
-    <value>timestamp,timestamp</value>
-  </property>
-  <property>
-    <name>dt.application.InnerJoinExample.operator.Join.prop.expiryTime</name>
-    <value>3600000</value>
-  </property>
-  <property>
-    <name>dt.application.InnerJoinExample.operator.Join.prop.includeFieldStr</name>
-    <value>customerId,productId,amount;productCategory,timestamp</value>
-  </property>
-  <property>
-    <name>dt.application.InnerJoinExample.operator.Join.prop.noOfBuckets</name>
-    <value>2</value>
-  </property>
-  <property>
-    <name>dt.application.InnerJoinExample.operator.Join.attr.PARTITIONER</name>
-    <value>com.datatorrent.common.partitioner.StatelessPartitioner:3</value>
-  </property>
-</configuration>
-
diff --git a/examples/innerjoin/src/test/java/org/apache/apex/examples/innerjoin/InnerJoinApplicationTest.java b/examples/innerjoin/src/test/java/org/apache/apex/examples/innerjoin/InnerJoinApplicationTest.java
deleted file mode 100644
index 03152a4..0000000
--- a/examples/innerjoin/src/test/java/org/apache/apex/examples/innerjoin/InnerJoinApplicationTest.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/**
- * 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.apex.examples.innerjoin;
-
-import org.junit.Test;
-import org.apache.hadoop.conf.Configuration;
-import com.datatorrent.api.LocalMode;
-
-public class InnerJoinApplicationTest
-{
-  @Test
-  public void testApplication() throws Exception
-  {
-    LocalMode lma = LocalMode.newInstance();
-    Configuration conf = new Configuration(false);
-    conf.addResource(this.getClass().getResourceAsStream("/META-INF/properties.xml"));
-    lma.prepareDAG(new InnerJoinApplication(), conf);
-    LocalMode.Controller lc = lma.getController();
-    lc.runAsync();
-    Thread.sleep(10 * 1000);
-    lc.shutdown();
-  }
-}
diff --git a/examples/innerjoin/src/test/resources/log4j.properties b/examples/innerjoin/src/test/resources/log4j.properties
deleted file mode 100644
index 41c733d..0000000
--- a/examples/innerjoin/src/test/resources/log4j.properties
+++ /dev/null
@@ -1,43 +0,0 @@
-#
-# 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.
-#
-
-log4j.rootLogger=DEBUG,CONSOLE
-
-log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
-log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
-log4j.appender.CONSOLE.layout.ConversionPattern=%d{ISO8601} [%t] %-5p %c{2} %M - %m%n
-log4j.appender.CONSOLE.threshold=${test.log.console.threshold}
-test.log.console.threshold=INFO
-
-log4j.appender.RFA=org.apache.log4j.RollingFileAppender
-log4j.appender.RFA.layout=org.apache.log4j.PatternLayout
-log4j.appender.RFA.layout.ConversionPattern=%d{ISO8601} [%t] %-5p %c{2} %M - %m%n
-log4j.appender.RFA.File=/tmp/app.log
-
-# to enable, add SYSLOG to rootLogger
-log4j.appender.SYSLOG=org.apache.log4j.net.SyslogAppender
-log4j.appender.SYSLOG.syslogHost=127.0.0.1
-log4j.appender.SYSLOG.layout=org.apache.log4j.PatternLayout
-log4j.appender.SYSLOG.layout.conversionPattern=${dt.cid} %-5p [%t] %c{2} %x - %m%n
-log4j.appender.SYSLOG.Facility=LOCAL1
-
-#log4j.logger.org.apache.commons.beanutils=warn
-log4j.logger.com.datatorrent=debug
-log4j.logger.org.apache.apex=debug
-log4j.logger.org=info
diff --git a/examples/pom.xml b/examples/pom.xml
index 1eb405d..6c76381 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -193,7 +193,6 @@
     <module>dynamic-partition</module>
     <module>enricher</module>
     <module>filter</module>
-    <module>innerjoin</module>
     <module>partition</module>
     <module>recordReader</module>
     <module>throttle</module>
diff --git a/library/src/main/java/org/apache/apex/malhar/lib/join/POJOInnerJoinOperator.java b/library/src/main/java/org/apache/apex/malhar/lib/join/POJOInnerJoinOperator.java
index a7eff1d..812271f 100644
--- a/library/src/main/java/org/apache/apex/malhar/lib/join/POJOInnerJoinOperator.java
+++ b/library/src/main/java/org/apache/apex/malhar/lib/join/POJOInnerJoinOperator.java
@@ -22,6 +22,8 @@ import java.lang.reflect.Array;
 import java.util.HashMap;
 import java.util.Map;
 
+import org.apache.apex.malhar.lib.window.impl.KeyedWindowedMergeOperatorImpl;
+import org.apache.apex.malhar.lib.window.impl.WindowedMergeOperatorImpl;
 import org.apache.commons.lang3.ClassUtils;
 
 import com.datatorrent.api.Context;
@@ -39,8 +41,12 @@ import com.datatorrent.lib.util.PojoUtils;
  * @displayName POJO Inner Join Operator
  * @tags join
  *
+ * @deprecated This operator is deprecated and would be removed in the following major release. <br/>
+ * Please use {@link WindowedMergeOperatorImpl} or {@link KeyedWindowedMergeOperatorImpl} for join use cases.
+ *
  * @since 3.5.0
  */
+@Deprecated
 @org.apache.hadoop.classification.InterfaceStability.Evolving
 public class POJOInnerJoinOperator extends AbstractManagedStateInnerJoinOperator<Object,Object> implements Operator.ActivationListener<Context>
 {
diff --git a/library/src/test/java/org/apache/apex/malhar/lib/join/POJOPartitionJoinOperatorTest.java b/library/src/test/java/org/apache/apex/malhar/lib/join/POJOPartitionJoinOperatorTest.java
index 9b05fcb..9833093 100644
--- a/library/src/test/java/org/apache/apex/malhar/lib/join/POJOPartitionJoinOperatorTest.java
+++ b/library/src/test/java/org/apache/apex/malhar/lib/join/POJOPartitionJoinOperatorTest.java
@@ -24,6 +24,7 @@ import java.util.Random;
 import java.util.concurrent.CountDownLatch;
 
 import org.junit.Assert;
+import org.junit.Ignore;
 import org.junit.Test;
 
 import org.apache.hadoop.conf.Configuration;
@@ -43,6 +44,7 @@ import com.datatorrent.common.partitioner.StatelessPartitioner;
 import com.datatorrent.common.util.BaseOperator;
 import com.datatorrent.lib.io.ConsoleOutputOperator;
 
+@Ignore
 public class POJOPartitionJoinOperatorTest
 {
   public static final int NUM_OF_PARTITIONS = 4;

-- 
To stop receiving notification emails like this one, please contact
['"commits@apex.apache.org" <co...@apex.apache.org>'].