From dev-return-28197-apmail-geode-dev-archive=geode.apache.org@geode.apache.org Tue Mar 13 19:55:32 2018 Return-Path: X-Original-To: apmail-geode-dev-archive@minotaur.apache.org Delivered-To: apmail-geode-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 B459518BAE for ; Tue, 13 Mar 2018 19:55:32 +0000 (UTC) Received: (qmail 73485 invoked by uid 500); 13 Mar 2018 19:55:32 -0000 Delivered-To: apmail-geode-dev-archive@geode.apache.org Received: (qmail 73430 invoked by uid 500); 13 Mar 2018 19:55:32 -0000 Mailing-List: contact dev-help@geode.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@geode.apache.org Delivered-To: mailing list dev@geode.apache.org Received: (qmail 73417 invoked by uid 99); 13 Mar 2018 19:55:31 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 13 Mar 2018 19:55:31 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id 5D4271A023E for ; Tue, 13 Mar 2018 19:55:31 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.98 X-Spam-Level: * X-Spam-Status: No, score=1.98 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=2, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01] autolearn=disabled Authentication-Results: spamd2-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=pivotal-io.20150623.gappssmtp.com Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id Odg76gRlY2Fr for ; Tue, 13 Mar 2018 19:55:29 +0000 (UTC) Received: from mail-lf0-f45.google.com (mail-lf0-f45.google.com [209.85.215.45]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id 142FC5F24F for ; Tue, 13 Mar 2018 19:55:29 +0000 (UTC) Received: by mail-lf0-f45.google.com with SMTP id t132-v6so1271128lfe.2 for ; Tue, 13 Mar 2018 12:55:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pivotal-io.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=NhWYXoEcbNqEj5B9CbylJ7W1eTyFUVSJB7rlIaFpuns=; b=hB7SL4UF5YkuZeyjlIoY49wf+0Sr86fq1HZxtw7d3tMb29GDJfz5tcYUN0tgKP6MsI qpCZkDX194TMnJz0gEYdo8qOus7vVixjeUx39mebAO5Yv5Pz+0tqjNf01Mk6PUlmzlDW yz/ThSqVam8PRgElLeLU+Z0kDfTUMRrCGpOIfMgAsZ1JIRONyx5yHxt+f3Mb+KtIKbKh 5K9ZSA8RdM4ygoKZZJ6KdbQajFKTENvz4He6DeFfbn7Fd6S/fOLcRkQiUGB1auwZj6lY ePLxSzSFwiP3YXgCh+ZVGM06BuXKD+zyYMFpGU7SHTmpmx/756h4Zn63s3juT0/bOGxl N3Bw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=NhWYXoEcbNqEj5B9CbylJ7W1eTyFUVSJB7rlIaFpuns=; b=WgSasW47//6lwQwXk0ut/nUs1ZSUgGXap+YtUqvbe8rQ2ikMAhiBrOazLyeFtMtAKX vb03mhP5EiCPHyiNe4+kc/5A9i5iT7euUZPh1stRuJ2JkEZ9ehlxNvTssNjAh9KiPHpU sdIjoUnHfPH+WlTDHITuZWknQm/Q7c6XDJAyDsoX/eyWVP1jm4NQ3wiSnQTcQdw7zhc5 aaEm2dKQ2xuQ350dLfiMsOHiO+yuylTmayXjCFrtr19uxToTzjJ46rrgC5/qitRKQRaz v7ixvFlx/U0yHXNge+u+rFtwfeQ2b8EC+IsEIFThLTm5zDDkXIZhoY3w81Ny//8lzHSL EDdA== X-Gm-Message-State: AElRT7F9+scZiuAeplWo5vQjXEYdv0LMwkIKaA4nLD/Zzotdi9CG87d7 sgEhMKgyMU4c6psQIn/tfauu+sONKbbkTs8JB7SZEA== X-Google-Smtp-Source: AG47ELt708nSRUDHadG8c05cw7qusp7u9TjJyPDAysB3d3FNlaktmxmrKvQoJSm5gcA3T8F2tQgvEh4ShiU2o8rtYxo= X-Received: by 2002:a19:4acc:: with SMTP id x195-v6mr1502289lfa.46.1520970927175; Tue, 13 Mar 2018 12:55:27 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a19:5903:0:0:0:0:0 with HTTP; Tue, 13 Mar 2018 12:55:26 -0700 (PDT) In-Reply-To: References: From: Patrick Rhomberg Date: Tue, 13 Mar 2018 12:55:26 -0700 Message-ID: Subject: Re: [PROPOSAL] Public API for Cluster Configuration To: dev@geode.apache.org Content-Type: multipart/alternative; boundary="000000000000d41a86056750a377" --000000000000d41a86056750a377 Content-Type: text/plain; charset="UTF-8" Hmm... Jinmei has it right -- that the *Element were for declaring custom XML entries -- but they were only really used during exploration. With this minimal API, we're not actually using those interface-tags in a publicly-visible way... Now I'm torn. On the one hand, it seems a bit strange to require a developer to use an interface that doesn't have an obvious use. On the other hand, I'm hesitant to allow an arbitrary Object to be passed to the XML to be saved, just as type-safety and to ensure intent. Thoughts on "Versatility" vs "Declared Intent"? Regarding naming, I could see it either way, too. "cache config" makes sense since it is modifying the "cache" portion of the configuration XML. "cluster configuration" makes sense since it is shared across the cluster, although there are separate configurations for each member group as well. On Tue, Mar 13, 2018 at 11:14 AM, Jinmei Liao wrote: > 1. CacheElement/RegionElement are used for custom xml element that are to > be added by other modules. They are not meant for those elements defined by > cache.xsd already, like region, gatewayreceiver etc. Maybe we should rename > it back CustomCacheElement/CustomRegionElement > > 1. the mutator updates the CacheConfig object which holds all the elements > inside cache including regions, indexes and the custom elements. the api is > updateCacheConfig > > On Tue, Mar 13, 2018 at 10:55 AM, Sai Boorlagadda < > sai.boorlagadda@gmail.com > > wrote: > > > I have few comments: > > > > 1, What is ClusterElement/RegionElement interfaces used for? > > > > 2. I see that using unary mutator one can mutate both cache and region > > configurations, so the methods in ClusterConfigurationService can be > > getClusterConfig and updateClusterConfig? The naming is debatable as > region > > configuration is part of CacheConfig, so technically user is updating > > CacheConfig even for region changes and changing a group's configuration > is > > not cluster configuration. So I think updateCacheConfig is a better name > > than updateClusterConfig? > > > > On Mon, Mar 12, 2018 at 4:11 PM, Patrick Rhomberg > > wrote: > > > > > Hello all. > > > > > > Please refer to the wiki page [1] for a proposal to expose > modification > > > of cluster configuration. > > > In short, this proposes an endpoint for developers to modify or > extend > > > cluster configuration functionalities. This would eventually replace > > > existing configuration classes (e.g., CacheCreation). > > > The proposed intends to use JAXB to generate and translate between > Java > > > Objects and the underlying cache configuration's XML. Examples of > these > > > generated classes are included in the proposal's Resources section. > > > Regards. > > > > > > Imagination is Change. > > > ~Patrick > > > > > > [1] > > > https://cwiki.apache.org/confluence/display/GEODE/ > > Public+API+for+Cluster+ > > > Configuration > > > > > > > > > -- > Cheers > > Jinmei > --000000000000d41a86056750a377--