Return-Path: X-Original-To: apmail-flink-issues-archive@minotaur.apache.org Delivered-To: apmail-flink-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 90D17185D6 for ; Tue, 23 Feb 2016 19:08:18 +0000 (UTC) Received: (qmail 34747 invoked by uid 500); 23 Feb 2016 19:08:18 -0000 Delivered-To: apmail-flink-issues-archive@flink.apache.org Received: (qmail 34692 invoked by uid 500); 23 Feb 2016 19:08:18 -0000 Mailing-List: contact issues-help@flink.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@flink.apache.org Delivered-To: mailing list issues@flink.apache.org Received: (qmail 34654 invoked by uid 99); 23 Feb 2016 19:08:18 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 23 Feb 2016 19:08:18 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id 38AD92C1F57 for ; Tue, 23 Feb 2016 19:08:18 +0000 (UTC) Date: Tue, 23 Feb 2016 19:08:18 +0000 (UTC) From: "ASF GitHub Bot (JIRA)" To: issues@flink.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (FLINK-3435) Change interplay of Ingestion Time and Event Time MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/FLINK-3435?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15159444#comment-15159444 ] ASF GitHub Bot commented on FLINK-3435: --------------------------------------- GitHub user StephanEwen opened a pull request: https://github.com/apache/flink/pull/1699 [FLINK-3435] Proparly separate IngestionTime and EventTime This pull request changes the interplay between **Event Time** and **Ingestion Time** Prior to this pull request, both time characteristics were essentially equal. After this pull request: - *Ingestion Time* auto generates ingestion timestamps and watermarks. - *Event Time* does not generate and automatic watermarks, and assigns -1 as timestamps - Timestamp extractors are not allowed to assign negative timestamps any more - If a default window operator finds a -1 event time timestamp, this indicates that the system runs on Event Time and does not have a timestamp assigner. This causes an exception so the program will immediately fail with an informative error message. - Mixing Event Time and Ingestion Time requires using Event Time and using an included IngestionTimestampExtractor. This also removes `ExecutionConfig.areTimestampsEnabled()` and similar methods. Desirable changes for future versions: - At pre-flight time, deactivate custom timestamp assigners when using Ingesion Time. - At pre-flight time, check whether Event Time pipelines actually have timestamp assigners. You can merge this pull request into a Git repository by running: $ git pull https://github.com/StephanEwen/incubator-flink time_interplay Alternatively you can review and apply these changes as the patch at: https://github.com/apache/flink/pull/1699.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1699 ---- commit 7441934f885beecf51a71963b63b758769492573 Author: Stephan Ewen Date: 2016-02-22T16:58:07Z [FLINK-3468] [streaming] Handle negative timestamps in timestamp assigner operators commit 3b54eba64deeff7da9fc4fb66e79fc53a84f41fb Author: Stephan Ewen Date: 2016-02-22T18:22:47Z [FLINK-3435] [streaming] EventTime window assigners error out on negative timestamps commit 843912a46ba0969319300fe055a8554db8f86a52 Author: Stephan Ewen Date: 2016-02-22T19:32:07Z [hotfix] Minor cleanups and removal of unused parameter commit 81458f5ee79aa1cc1f350a3bdb57252487d134b5 Author: Stephan Ewen Date: 2016-02-23T17:32:43Z [FLINK-3435] [streaming] Proparly separate IngestionTime and EventTime - IngestionTime now only auto-generates watermarks - EventTime does not auto-generate ingestion watermarks This also removes the "ExecutionConfig.areTimestampsEnabled()" flag. ---- > Change interplay of Ingestion Time and Event Time > ------------------------------------------------- > > Key: FLINK-3435 > URL: https://issues.apache.org/jira/browse/FLINK-3435 > Project: Flink > Issue Type: Improvement > Components: Streaming > Affects Versions: 0.10.2 > Reporter: Stephan Ewen > Priority: Blocker > Fix For: 1.0.0 > > > Currently, "EventTime" and "IngestionTime" are completely the same. > For both happens the following: > - Sources generate ingestion time timestamps and watermarks > - If a user adds a manual timestamp extractor / watermark generator, then those override the ingestion time timestamps and watermarks > - That implies that event time on a certain input falls back to ingestion time, if one forgets (or incorrectly uses) the timestamp extractors > - Also, Ingestion Time and Event Time simply mix if some inputs have timestamp assigners, and others have not. > This behavior is quite tricky to understand. After some discussions with [~aljoscha] and [~rmetzger], we suggest to change it the following way. > 1. On Ingestion Time, the timestamps and watermarks are generated as they are now. > 2. On event time, no default timestamps and watermarks are generated. If a user does not implement a timestamp extractor / watermark generator, then the event time operations will fail fast. > 3. If one wants to use ingestion time on event time settings (mix), one can use an explicit "WallClockTimetampsAndWatermark" generator. > 4. Later, the "Ingestion Time" settings should automatically disable and user-defined timestamp extractors / assigners. -- This message was sent by Atlassian JIRA (v6.3.4#6332)