title: Timestamp Skew in Google Dataflow
body: <p>I am trying to run a pipeline which reads from from a pubsub topic and writes to bigquery. The timestamps are parsed from the topic messages. However I received an error about allowed timestamp skew with a reference to the documentation reproduced below.</p>
  
  <blockquote>
    <p>getAllowedTimestampSkew public Duration getAllowedTimestampSkew()
    Returns the allowed timestamp skew duration, which is the maximum
    duration that timestamps can be shifted backward in
    DoFn.Context.outputWithTimestamp(OutputT, org.joda.time.Instant). The
    default value is Duration.ZERO, in which case timestamps can only be
    shifted forward to future. For infinite skew, return
    Duration.millis(Long.MAX_VALUE).</p>
  </blockquote>
  
  <p>What I want to know is WHY the default allowed skew is zero? Isn't the whole point of Dataflow to deal with late and out-of-order data? And when would the data be shifted to the future?</p>