title: Spark Kafka Streaming - Send original timestamp rather than current timestamp
body: <p>I am using spark Structured streaming to send records to a kafka topic. The kafka topic is created with the config - <code>message.timestamp.type=CreateTime</code></p>
  
  <p>This is done so that the target Kafka topic records have the same timestamp as the original Records. </p>
  
  <p>My kafka streaming code : </p>
  
  <pre><code>kafkaRecords.selectExpr("CAST(key AS STRING)", "CAST(value AS BINARY)","CAST(timestamp AS TIMESTAMP)")
      .write
      .format("kafka")
      .option("kafka.bootstrap.servers","IP Of kafka")
      .option("topic",targetTopic)
      .option("kafka.max.in.flight.requests.per.connection", "1")
      .option("checkpointLocation",checkPointLocation)
      .save()
  </code></pre>
  
  <p>However, this does not preserve the original timestamp that is 2018/11/04, instead the timestamp reflects the latest date 2018/11/9. </p>
  
  <p>On another note, just to confirm that kafka config is functioning, when I explicitly create a Kafka Producer and producer records having the timestamp and send that across, the original timestamp is preserved. </p>
  
  <p>How can I get the same behaviour in Kafka Structured Streaming as well. </p>