diff --git a/hyracks-dataflow-hadoop/src/main/java/edu/uci/ics/hyracks/dataflow/hadoop/HadoopReadOperatorDescriptor.java b/hyracks-dataflow-hadoop/src/main/java/edu/uci/ics/hyracks/dataflow/hadoop/HadoopReadOperatorDescriptor.java
index a75e6a9..254be49 100644
--- a/hyracks-dataflow-hadoop/src/main/java/edu/uci/ics/hyracks/dataflow/hadoop/HadoopReadOperatorDescriptor.java
+++ b/hyracks-dataflow-hadoop/src/main/java/edu/uci/ics/hyracks/dataflow/hadoop/HadoopReadOperatorDescriptor.java
@@ -92,9 +92,6 @@
             InputFormat inputFormat = (InputFormat) ReflectionUtils.newInstance(inputFormatClass, conf);
             RecordReader hadoopRecordReader = (RecordReader) inputFormat.getRecordReader(inputSplit, conf,
                     createReporter());
-            System.out.println("split :" + inputSplit);
-            System.out.println(" READER (proxy): KEY : " + hadoopRecordReader.createKey().getClass().getName());
-            System.out.println(" READER (proxy): VALUE : " + hadoopRecordReader.createValue().getClass().getName());
         }
     }
 
@@ -175,10 +172,6 @@
                     RecordDescriptor outputRecordDescriptor = DatatypeHelper.createKeyValueRecordDescriptor(
                             (Class<? extends Writable>) hadoopRecordReader.createKey().getClass(),
                             (Class<? extends Writable>) hadoopRecordReader.createValue().getClass());
-                    /*
-                    RecordDescriptor outputRecordDescriptor = recordDescProvider.getOutputRecordDescriptor(
-                            getOperatorId(), 0);
-                    */
                     int nFields = outputRecordDescriptor.getFields().length;
                     ArrayTupleBuilder tb = new ArrayTupleBuilder(nFields);
                     while (hadoopRecordReader.next(key, value)) {
