Return-Path: X-Original-To: apmail-samza-dev-archive@minotaur.apache.org Delivered-To: apmail-samza-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 93D4018072 for ; Thu, 28 Jan 2016 02:47:21 +0000 (UTC) Received: (qmail 16761 invoked by uid 500); 28 Jan 2016 02:46:47 -0000 Delivered-To: apmail-samza-dev-archive@samza.apache.org Received: (qmail 16704 invoked by uid 500); 28 Jan 2016 02:46:47 -0000 Mailing-List: contact dev-help@samza.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@samza.apache.org Delivered-To: mailing list dev@samza.apache.org Received: (qmail 16687 invoked by uid 99); 28 Jan 2016 02:46:46 -0000 Received: from Unknown (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 28 Jan 2016 02:46:46 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 6ACC2C0D4B for ; Thu, 28 Jan 2016 02:46:46 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 2.898 X-Spam-Level: ** X-Spam-Status: No, score=2.898 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=3, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd4-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-us-east.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id mm_g_XoDlsDA for ; Thu, 28 Jan 2016 02:46:45 +0000 (UTC) Received: from mail-ig0-f171.google.com (mail-ig0-f171.google.com [209.85.213.171]) by mx1-us-east.apache.org (ASF Mail Server at mx1-us-east.apache.org) with ESMTPS id 29C3043A19 for ; Thu, 28 Jan 2016 02:46:45 +0000 (UTC) Received: by mail-ig0-f171.google.com with SMTP id ik10so4250419igb.1 for ; Wed, 27 Jan 2016 18:46:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; bh=46K8zmaiDL7Hj05JAIuhXl64ox8fGVGSOnkrkau8xpQ=; b=0GUziBqpeEybkXTdTtL7KdWgEmCm/7AonqbaJaYFog2yPKS4ERQnmzIqDBL4e6x5QZ Rhtu1vyUVm+mzgz2yudzmvU7hN8x9x330It74eaZAWYwKIB2xskP8NWDTJVwaHeIi8Gf smAlC8jJ5Tzl8DuB6faEpVpVG/XNCRJpaUqiyJLztGFAUAgsa9TstnQYjNHSAyXMOy/X uLZ6qL1hEVBeID2q48PzIsULpO2NgA7wLNRB3aQIyhYaSakhQ32uLxvE/PaVRpfOyqGx n3WCozlWGw5p2yeavt/Oiksnhibsyjsn3NQKRemUgf/m6L3WDp8wH0nWYmBVdynYqmM8 oaoA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:content-type; bh=46K8zmaiDL7Hj05JAIuhXl64ox8fGVGSOnkrkau8xpQ=; b=j6OEftOyLIWzYNVKIwvCKEcCeO+MSmm7C2DfzPA3kEPWabUsccqlflFNawX2aeFTpm 0ID1SQkLu6grLrZIiBGhgTmVTIxIR3gEvMP7ORO+rdaswkCLvgpjLrEVavB12ORHFK6W p/u7g+DkLnJBLjbhngfRsinUE8gz2/LXAkaM1kbqKBQStAq8yH2kMZ8YrfIC7KcRJtf5 UM4K4cwSDF7l0i3Do1J9dqiz+mMIPd9jafwMHg1Z0g9Cr5uDJyNvqLG1JWg2O8+Uorey dp+yY2jH6mqP0AmZyktbuFvY7EHvqy6fOml8YHnb/eVCCccx81B/a+x3V0gq9BUYemnX hjLQ== X-Gm-Message-State: AG10YORxES3ewGnxmW47cRLTKWCl526aR5zBhFbW4ZwPW04fRlLPIgMDYu04OMWyN1RdtoHdofh3pu7HqTIbSQ== X-Received: by 10.50.122.38 with SMTP id lp6mr638523igb.12.1453949204788; Wed, 27 Jan 2016 18:46:44 -0800 (PST) MIME-Version: 1.0 Received: by 10.36.71.204 with HTTP; Wed, 27 Jan 2016 18:46:25 -0800 (PST) In-Reply-To: References: From: Jacob Maes Date: Wed, 27 Jan 2016 18:46:25 -0800 Message-ID: Subject: Re: ChangeLog Question for TTL rocksDB stores To: dev@samza.apache.org Content-Type: multipart/alternative; boundary=089e01538360df80a1052a5bedd0 --089e01538360df80a1052a5bedd0 Content-Type: text/plain; charset=UTF-8 Here's my understanding. The others can correct me if I'm mistaken. Samza provides the changelog functionality by intercepting RocksDB "put" and "delete" operations. However, TTL is managed by RocksDB internally and there aren't any hooks exposed in the RocksDB JNI. So there are 2 problems that arise with TTL and change logging: 1. Samza doesn't know when an entry expires, so it can't delete the expired entry from the changelog. 2. The changelog currently has no concept of entry age/timestamp, so when the changelog is restored, it's unknown whether some subset (or all) of the entries should be immediately expired. These issues aren't insurmountable, but they weren't pursued for the initial implementation. Perhaps because there was a shortage of use cases that needed both TTL and changelogging, but I'm not sure. -Jake On Wed, Jan 27, 2016 at 6:19 PM, David Garcia wrote: > So, I saw this very scary message: > > > ERROR - e.kv.RocksDbKeyValueStore$ - sessionJoinStore is a TTL based > store, changelog is not supported for TTL based stores, use at your own > discretion > > > > > A few of questions: > > 1.) Does this mean that this store is NOT backed by the changelog? > > 2.) Provided that the store IS backed by a change log, do the TTL > expirations commit removals from the changelog (I.e. Nulls)...presumably > upon compaction > > 3.) Can I please get a bit more detail on how TTL affects a changelog > store? > > > -David > --089e01538360df80a1052a5bedd0--