From dev-return-31785-archive-asf-public=cust-asf.ponee.io@ignite.apache.org Wed Mar 7 13:13:52 2018 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id 847E6180656 for ; Wed, 7 Mar 2018 13:13:51 +0100 (CET) Received: (qmail 35579 invoked by uid 500); 7 Mar 2018 12:13:50 -0000 Mailing-List: contact dev-help@ignite.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ignite.apache.org Delivered-To: mailing list dev@ignite.apache.org Received: (qmail 35567 invoked by uid 99); 7 Mar 2018 12:13:49 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 07 Mar 2018 12:13:49 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 569ABC113F for ; Wed, 7 Mar 2018 12:13:49 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 0.229 X-Spam-Level: X-Spam-Status: No, score=0.229 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.25, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd1-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id 8_1hS_oWWw5q for ; Wed, 7 Mar 2018 12:13:48 +0000 (UTC) Received: from mail-lf0-f44.google.com (mail-lf0-f44.google.com [209.85.215.44]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id 2DBCA5F195 for ; Wed, 7 Mar 2018 12:13:48 +0000 (UTC) Received: by mail-lf0-f44.google.com with SMTP id o145-v6so2920153lff.0 for ; Wed, 07 Mar 2018 04:13:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:message-id:subject:to:date:in-reply-to:references :mime-version; bh=TJoEQj6zaI1PJeaR7+aPFkShBziZ43Bpsj5/jmrSWNo=; b=WST0OqcMOz1g3tuijAb54E2rGWPeSwN9MX1ZNUJvrnYogQenjHSwx9B37Rg+sQ9qQ6 gVhcay5N5RJct8kofMAeEcl15EBOqndSI6dPg5/Wik01Q66V9CZZs2kiMQfhiA0KopQt JVb9wM8lMchHJ5FukLLmdO5MgusmkZglJV8NbUa7Ym/XN25iwzQFeMN7OzZkJxFCLB8s Ztd83vyhjWoqg9nHSSKwCtGyIg23KL1qheyoiWp+UUN4VOrSZiJqiO2Sh9IWWQ4QF/tU Lnd9mai5iED99Y/yDt988tDnVvsufbthzh/+MPUFVqtWLq2FKO/UB9lBoLMyw6HJKdwl o/6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:message-id:subject:to:date :in-reply-to:references:mime-version; bh=TJoEQj6zaI1PJeaR7+aPFkShBziZ43Bpsj5/jmrSWNo=; b=ZAxo2SlpGzgUtCdwbMo9e3A08DDmtmjnW/yAg3Z1XvetV2QjnpylB4epwmLvhEb8lI tDogDzCq4XwBKo5gFr8NdSpc0j5LbOfpYPaH5T6C19zn41EzrvbmE0+W0uX8G7ha0lwB U1MjKzSHglyZ8rtAoP3c5gmNz70hoSXAYDWRUksOI1h1EA8X0XUJw5D+B5HzV2mfDkks FrGxcf4CMfkKd1hqM6WA2Jz0vARMrGufxBKaTp7ka2UXvaHajs33uSreBl/j3A4AJyyp fRijiHEuQG9l4fUXRBXrIoocebbh1z6+dJYkWCzn58Fs/M3QQGbQzkKjb4PSr2WYcHLl WNfA== X-Gm-Message-State: APf1xPDcRBvkiN7YycqjJs8tV2EdOdVBo/unqbzmasU2d747L1hEwaAB efXDS2R87+1tLQfiBAOLcByExgVf X-Google-Smtp-Source: AG47ELt/g4j1adyooP+EyZRsqd7XnfLOqYdxS8WuxxxBYVxBAlRoyp3U+K3UtDdQrBF6Rh0NEhTDyw== X-Received: by 10.46.18.21 with SMTP id t21mr16177239lje.6.1520424820663; Wed, 07 Mar 2018 04:13:40 -0800 (PST) Received: from newDragon ([91.210.95.4]) by smtp.googlemail.com with ESMTPSA id l5sm3606086lje.58.2018.03.07.04.13.39 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 07 Mar 2018 04:13:39 -0800 (PST) Sender: =?UTF-8?B?0J3QuNC60L7Qu9Cw0Lkg0JjQttC40LrQvtCy?= From: Nikolay Izhikov X-Google-Original-From: Nikolay Izhikov Message-ID: <1520424813.23407.20.camel@gmail.com> Subject: Re: QueryEntity design To: dev@ignite.apache.org Date: Wed, 07 Mar 2018 15:13:33 +0300 In-Reply-To: References: <1520420437.23407.16.camel@gmail.com> Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-nkD7BCKKBdtdrITE884o" X-Mailer: Evolution 3.26.1-1 Mime-Version: 1.0 --=-nkD7BCKKBdtdrITE884o Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Vladimir. Thank you, it's clear now. I also wonder, why we provide access to internal HashMaps through getters? Should we wrap internal maps into `Collections.unmodifiableMap`? ``` public Map getDefaultFieldValues() { return defaultFieldValues; } ``` =D0=92 =D0=A1=D1=80, 07/03/2018 =D0=B2 14:36 +0300, Vladimir Ozerov =D0=BF= =D0=B8=D1=88=D0=B5=D1=82: > Hi Nikolay, >=20 > The answer is simple - legacy. QueryEntity was introduced long before we > had rich SQL support. At this point we should consider both QueryEntity a= nd > our SQL API obsolete. There is a ticket to design new SQL API [1] and new > "QueryEntity" should be it's integral part. If you have any ideas please > feel free to share. >=20 > Vladimir. >=20 > [1] https://issues.apache.org/jira/browse/IGNITE-4701 >=20 > On Wed, Mar 7, 2018 at 2:00 PM, Nikolay Izhikov wro= te: >=20 > > Hello, Igniters. > >=20 > > I'm working on IGNITE-7691 [1] > > The goal of ticket is provide scale and precision info about DECIMAL > > columns. > >=20 > > I see that QueryEntity has a separate collection for each type of meta > > information: > >=20 > > * not null fields - [2] > > * default values - [3] > >=20 > > Why we have such class design? > > It seems like a wrong design to have a separate collection for every ty= pe > > of metainfo. > >=20 > > Because, there are many pieces of column meta information: > >=20 > > * not null > > * default value > > * maximum length/size for VARCHAR or ARRAY or BINARY > > * scale, precision > > * etc. > >=20 > > Do we have plans to provide this information to user through QueryEntit= y? > >=20 > > [1] https://issues.apache.org/jira/projects/IGNITE/issues/IGNITE-7691 > > [2] https://github.com/apache/ignite/blob/master/modules/ > > core/src/main/java/org/apache/ignite/cache/QueryEntity.java#L87 > > [3] https://github.com/apache/ignite/blob/master/modules/ > > core/src/main/java/org/apache/ignite/cache/QueryEntity.java#L90 --=-nkD7BCKKBdtdrITE884o Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iQEcBAABCAAGBQJan9dtAAoJEG4mj244PdRlJ94H+gPW7DV5R+1mWBcsqeHR1ozJ AzWS4HqSj/0NTrQOdtqaBLfo+uKfsX+uSfZELebXPUFvSmPU9p5dBqhfbUacBDIO wd40Hd4I+EemIGPGOHJYsSSDv1Rc/fWaafRcbgH9L5F28uQ4lKDMcKZ1fWxpSCv/ i8e5yj1v3KaNa35FyPfQWYLCpqN+9FwKyweYqdpDx5spIlUaNbsQteXdT15bTA+/ dvH25F7gGj6QDOvQdEeWQLyeZsYvJP4ceqIg3mF9u1Y/zGxrupYbx+dltRTPDVT/ lZug2Q8FO4yOLfcntc32IssliZBYkyXpCou9Vh2TPd8fjpgs0REBxka4yRk387A= =HHst -----END PGP SIGNATURE----- --=-nkD7BCKKBdtdrITE884o--