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 36580200D0E for ; Tue, 26 Sep 2017 23:51:47 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 34E411609EA; Tue, 26 Sep 2017 21:51:47 +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 5D0571609D7 for ; Tue, 26 Sep 2017 23:51:46 +0200 (CEST) Received: (qmail 13688 invoked by uid 500); 26 Sep 2017 21:51:45 -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 13666 invoked by uid 99); 26 Sep 2017 21:51:45 -0000 Received: from mail-relay.apache.org (HELO mail-relay.apache.org) (140.211.11.15) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 26 Sep 2017 21:51:45 +0000 Received: from [192.168.75.83] (c-67-160-238-197.hsd1.ca.comcast.net [67.160.238.197]) by mail-relay.apache.org (ASF Mail Server at mail-relay.apache.org) with ESMTPSA id 6B9D31A0185; Tue, 26 Sep 2017 21:51:44 +0000 (UTC) From: Denis Magda Content-Type: multipart/alternative; boundary="Apple-Mail=_0E1DCF45-DAD1-4A03-95C5-84EA7828FAEA" Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Subject: Re: An issue of Ignite In-Menory Sql Grid since version 2.0.0 Date: Tue, 26 Sep 2017 14:51:43 -0700 References: <64463048.a536.15ea8f25405.Coremail.hebo824@163.com> <3f61b6a1.1a55.15eb69613e5.Coremail.hebo824@163.com> To: user@ignite.apache.org, dmekhanikov@gmail.com, dev@ignite.apache.org In-Reply-To: Message-Id: X-Mailer: Apple Mail (2.3273) archived-at: Tue, 26 Sep 2017 21:51:47 -0000 --Apple-Mail=_0E1DCF45-DAD1-4A03-95C5-84EA7828FAEA Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Denis Mek., How do you suggest executing the same query without SQL? Please be = specific if you advise discontinuing the SQL for the use case. Alex P., Vladimir, What=E2=80=99s the main reason of WITH RECURSIVE removal? Why it worked = before and broken now? https://issues.apache.org/jira/browse/IGNITE-5289 = =20 =E2=80=94 Denis > On Sep 25, 2017, at 12:31 AM, Denis Mekhanikov = wrote: >=20 > Yes, you are right about that, but Ignite has no intention to support = this syntax, it worked in 1.9 by chance. > Here, I found a ticket to explicitly forbid it: = https://issues.apache.org/jira/browse/IGNITE-5289 = >=20 > So, it's better to use cache directly without SQL in your case. >=20 > Denis >=20 > =D0=BF=D0=BD, 25 =D1=81=D0=B5=D0=BD=D1=82. 2017 =D0=B3. =D0=B2 4:11, = =E8=B4=BA=E6=B3=A2 >: > Hi! > I have executed the recursive sql statement on H2 database,it = executes correctly.But it executes error since version 2.0.0.So = I think it's a bug of Ingite,not H2.My test demo is = in the attachment. >=20 >=20 >=20 >=20 >=20 >=20 > At 2017-09-23 00:20:12, "Denis Mekhanikov" > wrote: > Hi! >=20 > Internally Ignite uses H2 to process SQL queries. Recursive queries is = an experimental feature of H2, so I wouldn't recommend you to use it in = production for now.=20 > Ignite 2.0 and 2.1 don't seem to support this kind of queries, so the = best option for you is to modify your query if possible to avoid = recursive constructs, or retrieve data from cache directly, without use = of SQL. >=20 > Denis >=20 > =D0=BF=D1=82, 22 =D1=81=D0=B5=D0=BD=D1=82. 2017 =D0=B3. =D0=B2 12:37, = =E8=B4=BA=E6=B3=A2 >: > Hi,I used Apache Ignite in my project for more than a year,from = version 1.8.0 to 2.2.0.I use Ignite In-Menory Sql Grid in my project.I = use =E2=80=9Cwith as=E2=80=9D sql function in my sql,it executes = correctly in version 1.9.0,but executes error since version 2.0.0.My = sql statement is: > with RECURSIVE children(typeId, pTypeId) AS (=20 > SELECT typeId, pTypeId FROM ProcessDefTypePo WHERE = pTypeId =3D '1' > UNION ALL=20 > SELECT ProcessDefTypePo.typeId, ProcessDefTypePo.pTypeId = FROM children INNER JOIN ProcessDefTypePo ON children.typeId = =3DProcessDefTypePo.pTypeId=20 > ) > select t1.typeId,t1.pTypeId,t1.typeName,t1.description, = t2.typeName as pTypeName from ProcessDefTypePo t1 left join = ProcessDefTypePo t2 on t1.pTypeId=3Dt2.typeId where t1.typeId not in ( = select typeId from children ) > =20 > The execution error in version 2.2.0 is: > Caused by: class org.apache.ignite.IgniteCheckedException: Unknown = query type: null > at = org.apache.ignite.internal.processors.query.GridQueryProcessor.executeQuer= y(GridQueryProcessor.java:2316) > at = org.apache.ignite.internal.processors.query.GridQueryProcessor.querySqlFie= lds(GridQueryProcessor.java:1820) > ... 165 more > Caused by: java.lang.UnsupportedOperationException: Unknown query = type: null > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eQuery(GridSqlQueryParser.java:1225) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eTable(GridSqlQueryParser.java:501) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eTableFilter(GridSqlQueryParser.java:465) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eSelect(GridSqlQueryParser.java:565) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eQuery(GridSqlQueryParser.java:1220) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eQueryExpression(GridSqlQueryParser.java:452) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eExpression0(GridSqlQueryParser.java:1436) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eExpression(GridSqlQueryParser.java:1267) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eExpression0(GridSqlQueryParser.java:1378) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eExpression(GridSqlQueryParser.java:1267) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eSelect(GridSqlQueryParser.java:536) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= eQuery(GridSqlQueryParser.java:1220) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQueryParser.pars= e(GridSqlQueryParser.java:1181) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQuerySplitter.pa= rse(GridSqlQuerySplitter.java:1604) > at = org.apache.ignite.internal.processors.query.h2.sql.GridSqlQuerySplitter.sp= lit(GridSqlQuerySplitter.java:197) > at = org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.queryDistr= ibutedSqlFields(IgniteH2Indexing.java:1307) > at = org.apache.ignite.internal.processors.query.GridQueryProcessor$5.applyx(Gr= idQueryProcessor.java:1815) > at = org.apache.ignite.internal.processors.query.GridQueryProcessor$5.applyx(Gr= idQueryProcessor.java:1813) > at = org.apache.ignite.internal.util.lang.IgniteOutClosureX.apply(IgniteOutClos= ureX.java:36) > at = org.apache.ignite.internal.processors.query.GridQueryProcessor.executeQuer= y(GridQueryProcessor.java:2293) >=20 > Can you help me with this problem?Thanks. >=20 >=20 >=20 > =20 >=20 >=20 > =20 >=20 >=20 > = =E3=80=90=E7=BD=91=E6=98=93=E8=87=AA=E8=90=A5=E3=80=91=E5=A5=BD=E5=90=83=E5= =88=B0=E7=88=86=EF=BC=81=E9=B2=9C=E9=A6=99=E5=BC=B9=E6=BB=91=E5=8A=A0=E7=83= =AD=E5=8D=B3=E9=A3=9F=EF=BC=8C=E7=BB=8F=E5=85=B813=E9=A6=99/=E9=BA=BB=E8=BE= =A3=E5=B0=8F=E9=BE=99=E8=99=BE=E4=BB=8575=E5=85=833=E6=96=A4>> =C2=A0 = =20 --Apple-Mail=_0E1DCF45-DAD1-4A03-95C5-84EA7828FAEA--