Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id DF615200B36 for ; Wed, 6 Jul 2016 18:59:38 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id DDCAC160A64; Wed, 6 Jul 2016 16:59:38 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 3E36A160A55 for ; Wed, 6 Jul 2016 18:59:37 +0200 (CEST) Received: (qmail 67401 invoked by uid 500); 6 Jul 2016 16:59:36 -0000 Mailing-List: contact user-help@ignite.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@ignite.apache.org Delivered-To: mailing list user@ignite.apache.org Received: (qmail 67391 invoked by uid 99); 6 Jul 2016 16:59:36 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 06 Jul 2016 16:59:36 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id CACA7180481 for ; Wed, 6 Jul 2016 16:59:35 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 2.398 X-Spam-Level: ** X-Spam-Status: No, score=2.398 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=2, KAM_LINEPADDING=1.2, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd3-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx2-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id Ug52x3mjrl3J for ; Wed, 6 Jul 2016 16:59:31 +0000 (UTC) Received: from mail-qk0-f175.google.com (mail-qk0-f175.google.com [209.85.220.175]) by mx2-lw-eu.apache.org (ASF Mail Server at mx2-lw-eu.apache.org) with ESMTPS id CCEA55F343 for ; Wed, 6 Jul 2016 16:59:30 +0000 (UTC) Received: by mail-qk0-f175.google.com with SMTP id e3so118641644qkd.0 for ; Wed, 06 Jul 2016 09:59:30 -0700 (PDT) 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; bh=6rHIoqGZAmCOXK/MoXZ4P9xIB5rSXyicZyU9IeP3Fpo=; b=uq4RJrGlP0TJw47W0oGVjcYCXs3p+E4V9Enx1VJWa+emHSnCmYBF0I4o5iLkry6QYe quKyLlVv+hJNVYLtzlCRjd0DYYd5MxnaUpf3+MBCUWxRc6NlNyc0w81x+PrZDGddbLKg kdRfjWny584BwMZtiIt+vNQ+27ijSIAcypUAr22wcjsh4tbAaXwW5mXW1HdOBgYwroUd mbpRaXWJPBXpyoPFWSIfsaUc6WV5w2PIYkibOf2HjHdJuxIhcTt8IszU+SQfxPXgaR+l CbXrJ/APTCDjtT6akLMWg9URDzyXNuwWzCz0XaSLtZCOt2Q68Z1Ddllwq6oA0jU6zl6v GlpQ== 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; bh=6rHIoqGZAmCOXK/MoXZ4P9xIB5rSXyicZyU9IeP3Fpo=; b=myQXR4wdAI1cjWamCz/7vikaoEcOvpqHhrpRFAOobhkikhNxi4oGXmkhymoAwezBnF Eoqsjlq/Sa2Tfgect686D/w7IJFgBt9XYGI8TBFrFzNboYSOaoOd/F7HrHfhpaQN24o+ E9uZd5YIVQ6FYuLHk2LS+OQOCCNAMi/Aj3WTIL9IUrfAf65pnU3RLtQFUFHy2fjGGRVU RTyzARPLwP+UzgJGGPW2JZYk/6AXFgMpCyBw0OcsWE+Qslx7hb2NjFdNVLK41GrH5skR IIyN4RgOGrfCUEPIdFA/fMbjCjyWb9HAi+ae78nfo5Zu9V0X87FioClv/8DXbrFLApQ+ I81w== X-Gm-Message-State: ALyK8tIjPTmJqSHTo69ky3QWCdg20R0wcDBxKVU92LPLrLTKuEGSGrB5WCSg8VeQ0otMD+5hYbTEA55Io6dzcg== X-Received: by 10.55.188.198 with SMTP id m189mr30397763qkf.205.1467824369802; Wed, 06 Jul 2016 09:59:29 -0700 (PDT) MIME-Version: 1.0 Received: by 10.140.37.72 with HTTP; Wed, 6 Jul 2016 09:59:29 -0700 (PDT) In-Reply-To: References: From: Alexei Scherbakov Date: Wed, 6 Jul 2016 19:59:29 +0300 Message-ID: Subject: =?UTF-8?Q?Re=3A_=E7=AD=94=E5=A4=8D=3A_ignite_group_indexing_not_work_problem?= To: user Content-Type: multipart/alternative; boundary=94eb2c048d2427a49f0536fa7e41 archived-at: Wed, 06 Jul 2016 16:59:39 -0000 --94eb2c048d2427a49f0536fa7e41 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi, Kevin. Have you defined other composite indexes including objid, fieldnum fields ? If yes, try to disable them and check if query picks up correct index. 2016-07-05 15:45 GMT+03:00 Zhengqingzheng : > Hi Alexei, > > Indexing not work again. This time I print the query plan: > > > > [SELECT > > GUID AS __C0 > > FROM "com.huawei.soa.ignite.model.IgniteMetaIndex_Cache".IGNITEMETAINDEX > > /* > "com.huawei.soa.ignite.model.IgniteMetaIndex_Cache"."objId_fieldNum_numVa= lue": > OBJID =3D ?1 > > AND FIELDNUM =3D ?2 > > */ > > WHERE (STRINGVALUE =3D ?3) > > AND ((OBJID =3D ?1) > > AND (FIELDNUM =3D ?2))], [SELECT > > __C0 AS GUID > > FROM PUBLIC.__T0 > > /* "com.huawei.soa.ignite.model.IgniteMetaIndex_Cache"."merge_scan" */] > > > > It seems that the group index is broken, as I can see only objId and > fieldnum are used to check the index, however, I defined three columns: > objid, fieldnum and stringvalue > > And the order is incorrect. > > My query is : > > String qryStr =3D " explain select guid from IgniteMetaIndex where objid= =3D? > and fieldnum=3D? and stringvalue=3D? "; > > =E2=80=A6 > > fieldQry.setArgs( "a1162", 7 ,"18835473249"); > > > > hope you can help me. > > > > > > Best regards, > > Kevin > > *=E5=8F=91=E4=BB=B6=E4=BA=BA:* Alexei Scherbakov [mailto:alexey.scherbako= ff@gmail.com] > *=E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4:* 2016=E5=B9=B46=E6=9C=8829=E6=97= =A5 0:30 > *=E6=94=B6=E4=BB=B6=E4=BA=BA:* user > *=E4=B8=BB=E9=A2=98:* Re: ignite group indexing not work problem > > > > Hi, > > > > I've tried the provided sample and found what instead of using > oId_fNum_num index H2 engine prefers oId_fNum_date, > > thus preventing condition on num field to use index. > > > > I think it's incorrect behavior. > > > > Could you disable oId_fNum_date, execute the query again and provide me > with the query plan and execution time ? > > > > You can get query plan from build-in H2 console. Read more about how to > setup console here [1] > > > > [1] https://apacheignite.readme.io/docs/sql-queries#using-h2-debug-consol= e > > > > > > > > > > 2016-06-28 6:08 GMT+03:00 Zhengqingzheng : > > Hi there, > > My ignite in-memory sql query is very slow. Anyone can help me to figure > out what was wrong? > > > > I am using group indexing to speed up in-memory sql queries. I notice tha= t > my sql query took 2274ms (data set size: 10Million, return result:1). > > > > My query is executed as: > > String qryStr =3D "select * from UniqueField where oid=3D ? and fnum=3D ?= and > num=3D ?"; > > > > String oId=3D"a343"; > > int fNum =3D 3; > > BigDecimal num =3D new BigDecimal("510020000982136"); > > > > IgniteCache cache =3D > igniteMetaUtils.getIgniteCache(IgniteMetaCacheType.UNIQUE_INDEX); // to > get selected cache ,which has been created in some other place > > > > SqlQuery qry =3D new SqlQuery(UniqueField.class, qryStr); > > qry.setArgs(objId,fieldNum, numVal); > > long start =3D System.currentTimeMillis(); > > List result=3D cache.query(qry).getAll(); > > long end =3D System.currentTimeMillis(); > > System.out.println("Time used in query :"+ (end-start)+"ms"); > > > > And the result shows: Time used in query :2274ms > > > > I have set group indexes, and the model is defined as: > > import java.io.Serializable; > > import java.math.BigDecimal; > > import java.util.Date; > > > > import org.apache.ignite.cache.query.annotations.QuerySqlField; > > > > public class UniqueField implements Serializable > > { > > > > @QuerySqlField > > private String orgId; > > > > @QuerySqlField( > > orderedGroups=3D{ > > @QuerySqlField.Group( > > name=3D"oId_fNum_ msg ", order=3D1, descending =3D tr= ue), > > @QuerySqlField.Group( > > name=3D"oId_fNum_ num ", order=3D1, descending =3D > true), > > @QuerySqlField.Group( > > name=3D"oId_fNum_ date ", order=3D1, descending =3D t= rue) > > > > }) > > private String oId; > > > > @QuerySqlField(index=3Dtrue) > > private String gId; > > > > @QuerySqlField( > > orderedGroups=3D{ > > @QuerySqlField.Group( > > name=3D"oId_fNum_ msg ", order=3D2, descending =3D tr= ue), > > @QuerySqlField.Group( > > name=3D"oId_fNum_ num ", order=3D2, descending =3D > true), > > @QuerySqlField.Group( > > name=3D"oId_fNum_ date ", order=3D2, descending =3D t= rue) > > > > }) > > private int fNum; > > > > @QuerySqlField(index=3Dtrue, @QuerySqlField.Group( > > name=3D"oId_fNum_ msg ", order=3D3, descending =3D tr= ue)}) > > private String msg; > > > > @QuerySqlField(index=3Dtrue, @QuerySqlField.Group( > > name=3D"oId_fNum_ num ", order=3D3, descending =3D tr= ue)}) > > private BigDecimal num; > > > > @QuerySqlField(index=3Dtrue, @QuerySqlField.Group( > > name=3D"oId_fNum_ date ", order=3D3, descending =3D t= rue)}) > > private Date date; > > > > public UniqueField(){}; > > > > public UniqueField( > > String orgId, > > String oId, > > String gId, > > int fNum, > > String msg, > > BigDecimal num, > > Date date > > ){ > > this.orgId=3DorgId; > > this.oId=3DoId; > > this.gId =3D gId; > > this.fNum =3D fNum; > > this.msg =3D msg; > > this.num =3D num; > > this.date =3D date; > > } > > > > public String getOrgId() > > { > > return orgId; > > } > > > > public void setOrgId(String orgId) > > { > > this.orgId =3D orgId; > > } > > > > public String getOId() > > { > > return oId; > > } > > > > public void setOId(String oId) > > { > > this.oId =3D oId; > > } > > > > public String getGid() > > { > > return gId; > > } > > > > public void setGuid(String gId) > > { > > this.gId =3D gId; > > } > > > > public int getFNum() > > { > > return fNum; > > } > > > > public void setFNum(int fNum) > > { > > this.fNum =3D fNum; > > } > > > > public String getMsg() > > { > > return msg; > > } > > > > public void setMsg(String msg) > > { > > this.msg =3D msg; > > } > > > > public BigDecimal getNum() > > { > > return num; > > } > > > > public void setNum(BigDecimal num) > > { > > this.num =3D num; > > } > > > > public Date getDate() > > { > > return date; > > } > > > > public void setDate(Date date) > > { > > this.date =3D date; > > } > > > > } > > > > > > > > > > > > > > -- > > > Best regards, > > Alexei Scherbakov > --=20 Best regards, Alexei Scherbakov --94eb2c048d2427a49f0536fa7e41 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi, Kevin.

Have you defined other compo= site indexes including=C2=A0objid, fieldnum fields ?
If yes, try = to disable them and check if query picks up correct index.


2016-07-05 15= :45 GMT+03:00 Zhengqingzheng <zhengqingzheng@huawei.com>:

Hi Alexei,

Indexing not work again. Th= is time I print the query plan:

=C2=A0=

[SELECT

=C2=A0=C2=A0=C2=A0 GUID AS = __C0

FROM "com.huawei.soa.i= gnite.model.IgniteMetaIndex_Cache".IGNITEMETAINDEX

=C2=A0 =C2=A0=C2=A0/* "= ;com.huawei.soa.ignite.model.IgniteMetaIndex_Cache"."objId_fieldN= um_numValue": OBJID =3D ?1

=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 AND FIELDNUM =3D ?2

=C2=A0=C2=A0=C2=A0=C2=A0 */=

WHERE (STRINGVALUE =3D ?3)<= u>

=C2=A0=C2=A0=C2=A0 AND ((OB= JID =3D ?1)

=C2=A0=C2=A0=C2=A0 AND (FIE= LDNUM =3D ?2))], [SELECT

=C2=A0=C2=A0=C2=A0 __C0 AS = GUID

FROM PUBLIC.__T0<= /u>

/= * "com.huawei.soa.ignite.model.IgniteMetaIndex_Cache"."merge= _scan" */]

<= u>=C2=A0

I= t seems that the group index is broken, as I can see only objId and fieldnu= m are used to check the index, however, I defined three columns: objid, fieldnum and stringvalue

A= nd the order is incorrect.

M= y query is :

String qryStr =3D " explain select guid from IgniteMetaIndex where=C2= =A0 objid=3D? and fieldnum=3D? and stringvalue=3D? ";

=E2=80=A6

fieldQry.setArgs( "a1162", 7 ,"18= 835473249");=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0

<= u>=C2=A0

hope you can help me.

=C2=A0=

=C2=A0=

Best regards,=

Kevin<= /p>

=E5=8F=91=E4=BB=B6= =E4=BA=BA: Alexei Scherbakov [mailto:alexey.scherbakoff@gmail.com]
=E5=8F=91=E9=80=81=E6=97=B6=E9=97= =B4: 2016=E5=B9=B46=E6=9C=8829=E6=97=A5 0:30
=E6=94=B6=E4=BB=B6=E4=BA=BA: user
=E4=B8=BB=E9=A2=98: Re: ignite group indexing not work problem

=C2=A0

Hi,

=C2=A0

I've tried the provided sam= ple and found what instead of using oId_fNum_num index H2 engine prefers=C2= =A0oId_fNum_date,

thus preventing condition on nu= m field to use index.

=C2=A0

I think it's incorrect beha= vior.

=C2=A0

Could you disable=C2=A0oId_fNum= _date, execute the query again and provide me with the query plan and execu= tion time ?

=C2=A0

You can get query plan from bui= ld-in H2 console. Read more about how to setup console here [1]

=C2=A0

=C2=A0

2016-06-28 6:08 GMT+03:00 Zheng= qingzheng <zhengqingzheng@huawei.com>:

Hi there,

My =C2=A0ignite in-memory sql q= uery is very slow. Anyone can help me to figure out what was wrong?<= u>

=C2=A0

I am using group indexing to sp= eed up in-memory sql queries. I notice that my sql query took 2274ms (data = set size: 10Million, return result:1).

=C2=A0

My query is executed as:=

String qryStr =3D "select * from UniqueField where oid=3D ? and fnum=3D ? and num=3D ?";

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0String oId=3D"a343";

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 int fNum =3D 3;

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 BigDecimal num =3D new BigDecimal("510020000982136")= ;

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0IgniteCache cache =3D igniteMetaUtils.getIgniteCache(Igni= teMetaCacheType.UNIQUE_INDEX);=C2=A0 // to get selected cache ,which has be= en created in some other place

=C2=A0=C2=A0=C2=A0

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0SqlQuery qry =3D new SqlQuery(UniqueField.class, qryStr);

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 qry.setArgs(objId,fieldNum, numVal);

long start =3D System.currentTimeMillis();

List result=3D cache.query(qry).getAll();

long end =3D System.currentTimeMillis();=

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 System.out.println("Time used in query :"+ (end-star= t)+"ms");

=C2=A0

And the result shows: Time used= in query :2274ms

=C2=A0

I have set group indexes, and t= he model is defined as:

= import java.io.Serializable;

= import java.math.BigDecimal;

= import java.util.Date;

= =C2=A0

= import org.apache.ignite.cache.query.annotations.QuerySqlField;

= =C2=A0

= public class UniqueField implements Serializable

= {

= =C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0@QuerySqlField

= =C2=A0=C2=A0=C2=A0 private String orgId;=

= =C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0@QuerySqlField(<= u>

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 orderedG= roups=3D{

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 @QuerySq= lField.Group(

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 name=3D"oId_fNum_ msg ", = order=3D1, descending =3D true),<= /span>

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 @QuerySq= lField.Group(

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0name=3D"oId_fNum_ num ", = order=3D1, descending =3D true),=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0@Qu= erySqlField.Group(

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 name=3D"oId_fNum_ date ",= order=3D1, descending =3D true)<= /span>

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0

})=C2=A0=C2=A0=C2=A0

private String oId;

= =C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0@QuerySqlField(index=3Dtrue)

= =C2=A0=C2=A0=C2=A0 private String gId;

= =C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0@QuerySqlField(

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 orderedG= roups=3D{

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 @QuerySq= lField.Group(

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 name=3D"oId_fNum_ msg ", = order=3D2, descending =3D true),<= /span>

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 @QuerySq= lField.Group(

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0name=3D"oId_fNum_ num ", = order=3D2, descending =3D true),=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0@Qu= erySqlField.Group(

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 name=3D"oId_fNum_ date ",= order=3D2, descending =3D true)<= /span>

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0

})=C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0 private int fNum;<= /u>

= =C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0@QuerySqlField(index=3Dtrue, @QuerySqlField.Group(<= /span>

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 name=3D"oId_fNum_ msg ", = order=3D3, descending =3D true)})=

= =C2=A0=C2=A0=C2=A0 private String msg;

= =C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0@QuerySqlField(index=3Dtrue, @QuerySqlField.Group(<= /span>

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0name=3D"oId_fNum_ num ", = order=3D3, descending =3D true)})=

= =C2=A0=C2=A0=C2=A0 private BigDecimal num;

= =C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0@QuerySqlField(index=3Dtrue, @QuerySqlField.Group(<= /span>

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 name=3D"oId_fNum_ date ",= order=3D3, descending =3D true)})

= =C2=A0=C2=A0=C2=A0 private Date date;=

= =C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0public UniqueField(){};=

= =C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0public UniqueField(<= /u>

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 String o= rgId,

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 String o= Id,

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 String g= Id,

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 int fNum= ,

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 String m= sg,

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 BigDecim= al num,

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Date dat= e

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ){

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.orgId=3DorgId;

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.oId=3DoId;

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.gId =3D gId;

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.fNum =3D fNum;

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.msg =3D msg;

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.num =3D num;

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.date =3D date;=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0}<= /p>

= =C2=A0=C2=A0=C2=A0

= =C2=A0=C2=A0=C2=A0=C2=A0public String getOrgId()

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return orgId;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public void setOrgId(String orgId)

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.orgId =3D orgId;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public String getOId()

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return oId;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public void setOId(String oId)

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.oId =3D oId;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public String getGid()

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return gId;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public void setGuid(String gId)

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.gId =3D gId;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public int getFNum()<= u>

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return fNum;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public void setFNum(int fNum)

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.fNum =3D fNum;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public String getMsg()

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return msg;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public void setMsg(String msg)

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.msg =3D msg;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public BigDecimal getNum()

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return num;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public void setNum(BigDecimal num)

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.num =3D num;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public Date getDate()=

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return date;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= =C2=A0=C2=A0=C2=A0 public void setDate(Date date)

= =C2=A0=C2=A0=C2=A0 {

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 this.date =3D date;

= =C2=A0=C2=A0=C2=A0 }

= =C2=A0

= }

= =C2=A0

=C2=A0

=C2=A0

=C2=A0



=C2=A0

--


Best regards,

Alexei Scherbakov=




--

Best regards,
Alexei= Scherbakov
--94eb2c048d2427a49f0536fa7e41--