-----Messaggio originale-----
Da: [email protected] [mailto:[email protected]]
Inviato: mercoledì 11 novembre 2009 22.51
A: Derby Discussion
Oggetto: Re: R: R: using ASTParser and TreeWalker
Hi Flavio,
The ASTParser relies on tree-printing logic in the AST nodes while the
XmlTreeWalker relies on tree walking logic in the nodes. It turns out
that the tree printing logic is more capable than the tree walking logic
for the InsertNode. I have attached a patch to derby-791 which improves
the tree walking logic for InsertNodes. I am attaching the XmlTreeWalker
output for your query when I apply this patch. This makes the
information you need visible.
If the tests run cleanly for me, I can apply this patch to the trunk.
That, however, won't help you if you're running against 10.5.3.0. To get
the benefits of this change, you will need to build the Derby trunk and
run your experiments against the trunk.
Regards,
-Rick
Flavio Palumbo wrote:
Hi Rick,
i'm bit confused ;-)
I've seen the posts at the link you provided and they are quite clear.
Now i'm trying to discover tables and fields from an insert
statement (very
simple : "insert into eurofile.tdepro (dpcdst, dpcdme, dpcdpr)
values(?, ?,
?)"):
If i run ASTParser i get under the node
org.apache.derby.impl.sql.compile.TableName
the table name followed by a
org.apache.derby.impl.sql.compile.ResultColumnList node and 3
org.apache.derby.impl.sql.compile.ResultColumn nodes each one with its
column name.
If i run XmlTreeWalker (better in my mind because i can control the loop
over the nodes) i cannot neither
org.apache.derby.impl.sql.compile.TableName
node nor the 3 org.apache.derby.impl.sql.compile.ResultColumn nodes.
Can you please give me a hint ?
Thanks a lot.
Flavio
-----Messaggio originale-----
Da: [email protected] [mailto:[email protected]]
Inviato: lunedì 9 novembre 2009 19.16
A: Derby Discussion
Oggetto: Re: R: using ASTParser and TreeWalker
Hi Flavio,
There is some commentary on the following issue, which might help you
make some sense of the trees:
https://issues.apache.org/jira/browse/DERBY-3946
These trees are not part of Derby's public API so there's not a lot of
documentation on them other than the Derby engine's javadoc. You may
have to ask a couple more questions before you touch bottom.
Hope this helps,
-Rick
flavio palumbo wrote:
Hi Rick,
renaming junit did it ;-))
I've been able to run ASTParser and XmlTreeWalker and I've seen
that they
give a very big quantity of infos ; where can I find some docs
to discover
how to point what I need ? In particular I'm searching for
tables and fields
names included in the statement, which is the quickest way to
find them ?
Thanks a lot
Flavio
-----Original Message-----
From: Rick Hillegas <[email protected]>
To: Derby Discussion <[email protected]>
Date: Fri, 06 Nov 2009 14:01:50 -0800
Subject: Re: R: using ASTParser and TreeWalker
flavio palumbo wrote:
Hi Rich,
I've just tried to build Derby (now I'm at home with nb 6.5.1 on win
vista)
and got these messages :
.....
.....
Building zip: D:\derby2009\trunk\java\demo\toursdb\toursdb.jar
Finished building toursdb
copyfiles:
Copying 13 files to
D:\derby2009\trunk\classes\org\apache\derbyTesting\functionTests\tests\
demo
toursdb:
demo:
testing:
testing:
junitcomponents:
Compiling 1 source file to D:\derby2009\trunk\classes
D:\derby2009\trunk\java\testing\org\apache\derbyTesting\junit\SecurityM
anagerSetup.java:30:
package junit.extensions does not exist
import junit.extensions.TestSetup;
D:\derby2009\trunk\java\testing\org\apache\derbyTesting\junit\SecurityM
anagerSetup.java:31:
package junit.framework does not exist
import junit.framework.Test;
D:\derby2009\trunk\java\testing\org\apache\derbyTesting\junit\SecurityM
anagerSetup.java:32:
package junit.framework does not exist
import junit.framework.TestSuite;
D:\derby2009\trunk\java\testing\org\apache\derbyTesting\junit\SecurityM
anagerSetup.java:39:
cannot find symbol
symbol: class TestSetup
public final class SecurityManagerSetup extends TestSetup {
D:\derby2009\trunk\java\testing\org\apache\derbyTesting\junit\SecurityM
anagerSetup.java:73:
cannot find symbol
symbol : class Test
location: class org.apache.derbyTesting.junit.SecurityManagerSetup
public SecurityManagerSetup(Test test, String
policyResource)
^
D:\derby2009\trunk\java\testing\org\apache\derbyTesting\junit\SecurityM
anagerSetup.java:94:
cannot find symbol
symbol : class Test
location: class org.apache.derbyTesting.junit.SecurityManagerSetup
public static Test noSecurityManager(Test test)
^
D:\derby2009\trunk\java\testing\org\apache\derbyTesting\junit\SecurityM
anagerSetup.java:94:
cannot find symbol
symbol : class Test
location: class org.apache.derbyTesting.junit.SecurityManagerSetup
public static Test noSecurityManager(Test test)
.....
.....
D:\derby2009\trunk\java\testing\org\apache\derbyTesting\junit\JDBC.java
:673:
cannot find symbol
symbol : variable Assert
location: class org.apache.derbyTesting.junit.JDBC
Assert.assertEquals("Unexpected column count:",
100 errors
D:\derby2009\trunk\build.xml:499: The following error occurred while
executing this line:
D:\derby2009\trunk\java\testing\build.xml:59: The following error
occurred
while executing this line:
D:\derby2009\trunk\java\testing\org\apache\derbyTesting\junit\build.xml
:74:
Compile failed; see the compiler error output for details.
BUILD FAILED (total time: 54 seconds)
The previous time I hadn't read carefully the building.html doc, but
now
I've put ant.jar and junit-3.8.2.jar into my
D:\derby2009\trunk\tools\java
directory.
It seems that nothing has changed :-((
Hi Flavio,
Have you tried building Derby outside Netbeans? That might
help narrow
down the problem. One thing to note: the JUnit jarball
should be called
junit.jar, not junit-3.8.2.jar. Try renaming the JUnit
jarball and see
if that helps.
Regards,
-Rick
Thanks a lot
Flavio
-----Original Message-----
From: Rick Hillegas <[email protected]>
To: Derby Discussion <[email protected]>
Date: Fri, 06 Nov 2009 08:35:38 -0800
Subject: Re: R: using ASTParser and TreeWalker
Hi Flavio,
A couple more comments inline...
Flavio Palumbo wrote:
Hi Rich,
thanks for your super quick answer ;-))
Please tell us more about the problems you are having compiling
the
Derby trunk. We want to make the build easier.
I tried to build Derby following the guide at
http://wiki.apache.org/db-derby/BuildingDerby ; I'm
currently using
NetBeans
6.5 with jdk 1.6.0 ; when I try to build the project I
get a lot of
exceptions due mainly to the fact that I'm not able to add jUnit
jars
to the
project.
I'm bit hurry now, I'll try to generate again the project
this week
end to
be more accurate.
Thanks for giving us this feedback. If you configure the ant build
target to be "buildsource" rather than "all", then you shouldn't
need
the junit jars. For more information, see the BUILDING.html file in
the
root directory of the Derby trunk.
Yes, you should be able to compile these classes against the
official
debug jars for 10.5.3.0.
what you mean with "debug jars" ?
If you go to the 10.5.3 download page (
http://db.apache.org/derby/releases/release-10.5.3.0.cgi ), you'll
see
a
number of downloadable distributions. Two of them have the word
"debug"
in their names. The jars in those two distributions have extra
tracing
logic built into them. The TreeWalker uses that extra
tracing logic.
Hope this helps,
-Rick
Thanks a lot.
Flavio
-----Messaggio originale-----
Da: [email protected] [mailto:[email protected]]
Inviato: venerdì 6 novembre 2009 15.45
A: Derby Discussion
Oggetto: Re: using ASTParser and TreeWalker
Hi Flavio,
Flavio Palumbo wrote:
Hi all,
I tried test ASTParser and TreeWalker to try to parse SQL
strings and the
first works fine while I cannot compile the second cause I
receive
this
compile time error :
TreeWalker is not abstract and does not override abstract method
visitChildrenFirst(org.apache.derby.iapi.sql.compile.Visitable)
in
org.apache.derby.iapi.sql.compile.Visitor
is there a newer version I can use or can somebody tell me how
to fix this
problem ?
The visitChildrenFirst() method was added to the Visitor
interface
recently. I have attached new versions of TreeWalker,
XmlTreeWalker,
and XmlTreePrinter to DERBY-3946, DERBY-791, and DERBY-4415
respectively. The new versions implement the new method
and should
compile against the current Derby trunk. If this doesn't fix your
problem, let me know and I'll look into this more.
also I found the post "Rick Hillegas added a comment -
25/Aug/09 04:00 PM"
on https://issues.apache.org/jira/browse/DERBY-3946 :
I have successfully compiled and run this ASTParser against the
debug
derby.jar that is part of the 10.5.3.0 distribution
it means that I can compile and run ASTParser and TreeWalker
against the
normal distribution of Derby ?
Yes, you should be able to compile these classes against the
official
debug jars for 10.5.3.0.
this would be great cause I fight a lot to compile Derby from
svn.
Please tell us more about the problems you are having compiling
the
Derby trunk. We want to make the build easier.
Thanks,
-Rick
Any hint would be appreciated.
Flavio
-----------------------------------------------------------
Il presente messaggio non costituisce un impegno contrattuale
tra SILMA S.r.l. ed il destinatario.
Le opinioni ivi espresse sono quelle dell'autore.
SILMA S.r.l. non assume alcuna responsabilita riguardo al
contenuto del presente messaggio.
Il messaggio è destinato esclusivamente al destinatario.
Il contenuto e gli allegati sono da considerarsi di natura
confidenziale
Nel caso abbiate ricevuto il presente messaggio per errore
siete pregati di comunicarlo
alla casella [email protected].
-----------------------------------------------------------
Il presente messaggio non costituisce un impegno contrattuale tra
SILMA S.r.l. ed il destinatario.
Le opinioni ivi espresse sono quelle dell'autore.
SILMA S.r.l. non assume alcuna responsabilita riguardo al
contenuto
del presente messaggio.
Il messaggio è destinato esclusivamente al destinatario.
Il contenuto e gli allegati sono da considerarsi di natura
confidenziale
Nel caso abbiate ricevuto il presente messaggio per errore siete
pregati di comunicarlo
alla casella [email protected].
-----------------------------------------------------------
Il presente messaggio non costituisce un impegno contrattuale tra
SILMA S.r.l. ed il destinatario.
Le opinioni ivi espresse sono quelle dell'autore.
SILMA S.r.l. non assume alcuna responsabilita riguardo al contenuto
del presente messaggio.
Il messaggio è destinato esclusivamente al destinatario.
Il contenuto e gli allegati sono da considerarsi di natura
confidenziale
Nel caso abbiate ricevuto il presente messaggio per errore siete
pregati di comunicarlo
alla casella [email protected].
-----------------------------------------------------------
Il presente messaggio non costituisce un impegno contrattuale
tra SILMA S.r.l. ed il destinatario.
Le opinioni ivi espresse sono quelle dell'autore.
SILMA S.r.l. non assume alcuna responsabilita riguardo al
contenuto del presente messaggio.
Il messaggio è destinato esclusivamente al destinatario.
Il contenuto e gli allegati sono da considerarsi di natura
confidenziale
Nel caso abbiate ricevuto il presente messaggio per errore
siete pregati di comunicarlo
alla casella [email protected].
-----------------------------------------------------------
Il presente messaggio non costituisce un impegno contrattuale
tra SILMA S.r.l. ed il destinatario.
Le opinioni ivi espresse sono quelle dell'autore.
SILMA S.r.l. non assume alcuna responsabilita riguardo al
contenuto del presente messaggio.
Il messaggio è destinato esclusivamente al destinatario.
Il contenuto e gli allegati sono da considerarsi di natura confidenziale
Nel caso abbiate ricevuto il presente messaggio per errore
siete pregati di comunicarlo
alla casella [email protected].