You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by Ravisankar Sivasubramaniam <ra...@live.in> on 2013/12/28 10:08:13 UTC

RE: [OS: Windows] Could not find or load main class sqlline.SqlLine

Hello Team,
 
I resolved the below error by reducing the heap memory.  I am not getting the following error?
 
D:\workspace\incubator-drill>java -Xmx1G -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -cp contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar sqlline.SqlLine --verbose=true "$@"
Error: Could not find or load main class sqlline.SqlLine

 
I am not able to identify what I am doing wrong.  As per the unix script, an sqlline jar is supposed to be available in incubator-drill folder but mine doesn't have it.  Did I not checkout the folder correctly or did I miss a compilation step?
 
Regards,
Ravi
 
> From: rasivasu@live.in
> To: drill-dev@incubator.apache.org
> Subject: [OS: Windows] Error initializing VM due to lack of space for object heap
> Date: Thu, 26 Dec 2013 18:54:40 +0530
> 
> 
> 
> 
> Hello team,
>  
> I am getting the following error when trying to execute sqlline.  This is my first attempt.  Would you please let me know how much memory is required by the VM for Object Heap.  Would you please let me know if you have found the optimium JVM settings for Apache Drill?
>  
> D:\workspace\incubator-drill>java -Xmx2G -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -cp contrib\sqlline\target\dependency sqlline.Sq
> lLine --verbose=true "$@"
> Error occurred during initialization of VM
> Could not reserve enough space for object heap
> Error: Could not create the Java Virtual Machine.
> Error: A fatal exception has occurred. Program will exit.
>  
> Regards,
> Ravi
>  
> From: rasivasu@live.in
> To: drill-dev@incubator.apache.org
> Subject: Challenge in creating of sqlline.bat due to windows limitation
> Date: Sun, 22 Dec 2013 22:17:41 +0530
> 
> 
> 
> 
> Hello all,
> Please find the WIP windows batch program.  This works only for 86 file names in .classpath (or 8138 characters long).  But the working version of .classpath has 131 filenames spanning 12,958 characters. The article http://support.microsoft.com/kb/830473 seem to support the variable length limitation - official limt is 8191.
> One possible option is to collate all the required jar files into a common folder so that we can work around the variable value limitation in Windows platform.  Are there any other suggestion from the team? Regards,Ravi
> 
> > Date: Sun, 22 Dec 2013 11:07:50 +0000
> > From: jira@apache.org
> > To: drill-dev@incubator.apache.org
> > Subject: [jira] [Created] (DRILL-338) sqlline script not available for windows OS
> > 
> > Ravisankar Sivasubramaniam created DRILL-338:
> > ------------------------------------------------
> > 
> >              Summary: sqlline script not available for windows OS
> >                  Key: DRILL-338
> >                  URL: https://issues.apache.org/jira/browse/DRILL-338
> >              Project: Apache Drill
> >           Issue Type: Bug
> >     Affects Versions: 1.0.0-milestone-1, 1.0.0-milestone-2, 1.0.0-milestone-3, 1.0.0-milestone-4, 1.0.0
> >          Environment: Windows OS
> >             Reporter: Ravisankar Sivasubramaniam
> > 
> > 
> > Currently sqlline may be executed only on *nix platforms.  Windows version of sqlline need to be created for developers using windows pcs.
> > 
> > 
> > 
> > --
> > This message was sent by Atlassian JIRA
> > (v6.1.5#6160)
>  		 	   		  
>  		 	   		  
 		 	   		  

Re: [OS: Windows] Could not find or load main class sqlline.SqlLine

Posted by Marco Sandrini <sm...@gmail.com>.
Thanks.

This issue seems to happen only when using -jar with dependent jars defined
in the manifest. I haven't spent much time on it, but in my opinion it's
not a problem in sqlline since it works just fine using the classpath and
also Jackson seems to have the same behavior.

Marco


On Sun, Dec 29, 2013 at 4:52 PM, Julian Hyde <ju...@gmail.com> wrote:

> For what it's worth, I am the maintainer of sqlline.
>
> https://github.com/julianhyde/sqlline
>
> If there are improvements to sqlline, feel free to log issues or submit
> pull requests.
>
> Julian

Re: [OS: Windows] Could not find or load main class sqlline.SqlLine

Posted by Julian Hyde <ju...@gmail.com>.
For what it's worth, I am the maintainer of sqlline.

https://github.com/julianhyde/sqlline

If there are improvements to sqlline, feel free to log issues or submit pull requests.

Julian

RE: [OS: Windows] Could not find or load main class sqlline.SqlLine

Posted by Ravisankar Sivasubramaniam <ra...@live.in>.
Hi Marco,
Thanks.  That is working.
0: jdbc:drill:schema=parquet-local> select * from "sample-data/region.parquet";SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".SLF4J: Defaulting to no-operation (NOP) logger implementationSLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|                                                                                  _MAP                                                                               |
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| {"R_REGIONKEY":0,"R_NAME":"AFRICA","R_COMMENT":"lar deposits. blithely final packages cajole. regular waters are final requests. regular accounts are according to  |
| {"R_REGIONKEY":1,"R_NAME":"AMERICA","R_COMMENT":"hs use ironic, even requests. s"}                                                                                  |
| {"R_REGIONKEY":2,"R_NAME":"ASIA","R_COMMENT":"ges. thinly even pinto beans ca"}                                                                                     |
| {"R_REGIONKEY":3,"R_NAME":"EUROPE","R_COMMENT":"ly final courts cajole furiously final excuse"}                                                                     |
| {"R_REGIONKEY":4,"R_NAME":"MIDDLE EAST","R_COMMENT":"uickly special accounts cajole carefully blithely close requests. carefully final asymptotes haggle furiousl"} |
+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+
5 rows selected (3.452 seconds)0: jdbc:drill:schema=parquet-local>
Regards,Ravi
> Date: Sat, 11 Jan 2014 16:53:09 -0800
> Subject: Re: [OS: Windows] Could not find or load main class sqlline.SqlLine
> From: sm4rc0@gmail.com
> To: drill-dev@incubator.apache.org
> 
> Hi Ravi,
> 
> It looks good to me. Did you try to execute a query? For example:
> select * from "sample-data/region.parquet";
> 
> If you like to get rid of the log messages on the console you can edit the
> logback.xml and remove (or comment) this line in the STDOUT appender:
> <level value="warn" />
> 
> Marco
> 
> On Sat, Jan 11, 2014 at 9:27 AM, Ravisankar Sivasubramaniam <
> rasivasu@live.in> wrote:
> 
> > Hi Marco,
> > Thank you very much for your time.  I abandoned the classpath approach and
> > went back to "copy-dependency" approach.  Given below is the output of
> > sqlline.bat.  Can you quickly confirm if the output is as expected?  I will
> > send across the patch for Windows setup separately for code review.
> > D:\workspace\incubator-drill>sqlline.bat -u
> > jdbc:drill:schema=parquet-local -n admin -p admin
> > D:\workspace\incubator-drill>if not exist
> > contrib\sqlline\target\dependencies (call mvn -B -f contrib\sqlline\pom.xml
> > package )
> > D:\workspace\incubator-drill>java -Xmx1G
> > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > -cp ".\contrib\sqlline\target\dependencies\*" sqlline.SqlLine
> > --verbose=true -u jdbc:drill:schema=parquet-local -n admin -p adminLoaded
> > singnal handler: SunSignalHandlerissuing: !connect
> > jdbc:drill:schema=parquet-local admin adminscan complete in 9ms22:51:57,241
> > |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource
> > [.\sqlparser\src\test\resources\logback.xml] at
> > [file:/D:/workspace/incubator-drill/./sqlparser/src/test/resources/logback.xml]22:51:57,361
> > |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug
> > attribute not set22:51:57,374 |-INFO in
> > ch.qos.logback.core.joran.action.AppenderAction - About to instantiate
> > appender of type
> > [de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender]22:51:57,385
> > |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender
> > as [SOCKET]22:51:57,434 |-INFO in
> > de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender[SOCKET] -
> > Waiting 1s to establish connections.22:51:58,434 |-INFO in
> > de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender[SOCKET] -
> > Started
> > de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender[SOCKET]22:51:58,434
> > |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to
> > instantiate appender of type
> > [ch.qos.logback.core.ConsoleAppender]22:51:58,439 |-INFO in
> > ch.qos.logback.core.joran.action.AppenderAction - Naming appender as
> > [STDOUT]22:51:58,447 |-INFO in
> > ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default
> > type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder]
> > property22:51:58,506 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@33:27
> > - no applicable action for [level], current ElementPath  is
> > [[configuration][appender][level]]22:51:58,506 |-INFO in
> > ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of
> > logger [org.apache.drill] to false22:51:58,506 |-INFO in
> > ch.qos.logback.classic.joran.action.LevelAction - org.apache.drill level
> > set to DEBUG22:51:58,507 |-INFO in
> > ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender
> > named [SOCKET] to Logger[org.apache.drill]22:51:58,507 |-INFO in
> > ch.qos.logback.classic.joran.action.LevelAction - ROOT level set to
> > DEBUG22:51:58,507 |-INFO in
> > ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender
> > named [SOCKET] to Logger[ROOT]22:51:58,507 |-INFO in
> > ch.qos.logback.classic.joran.action.ConfigurationAction - End of
> > configuration.22:51:58,508 |-INFO in
> > ch.qos.logback.classic.joran.JoranConfigurator@8c0e89 - Registering
> > current configuration as safe fallback point
> > scan complete in 2207msConnecting to
> > jdbc:drill:schema=parquet-localConnected to: Drill (version 1.0)Driver:
> > Apache Drill JDBC Driver (version 1.0)Autocommit status: trueTransaction
> > isolation: TRANSACTION_REPEATABLE_READsqlline version ??? by Marc
> > Prud'hommeaux0: jdbc:drill:schema=parquet-local>
> > Regards,Ravi
> > > Date: Sun, 29 Dec 2013 12:29:29 -0800
> > > Subject: Re: [OS: Windows] Could not find or load main class
> > sqlline.SqlLine
> > > From: sm4rc0@gmail.com
> > > To: drill-dev@incubator.apache.org
> > >
> > > Ravi,
> > >
> > > sqlline.properties is included in sqlline-1.1.0.jar. You can get rid of
> > > this message by extracting the file and copying it into your user folder
> > > C:\Users\ravisankars\sqlline\. Anyway, this is not critical, you can work
> > > without that file.
> > >
> > > The real problem is the other error [No known driver to handle
> > > "jdbc:drill:schema=parquet-local"]. It looks like the scan of the classes
> > > does not work with jars included from the manifest file of an executable
> > > jar (-jar option). If you specify the full class name for the driver by
> > > appending "-d org.apache.drill.jdbc.Driver", then it finds the Driver
> > class
> > > but it fails loading it because of a deserialization error in Jackson:
> > > com.fasterxml.jackson.databind.JsonMappingException: Could not resolve
> > type
> > > id 'parquet' into a subtype of [simple type, class
> > > org.apache.drill.common.logical.StorageEngineConfig]
> > > Basically, Jackson cannot find annotated classes in the external jars.
> > >
> > > At this point I think the only other way to get this working is by
> > copying
> > > all the dependent jars in a "dependencies" folder. You can do this with
> > > maven:
> > > ...
> > > <plugin>
> > >   <groupId>org.apache.maven.plugins</groupId>
> > >   <artifactId>maven-dependency-plugin</artifactId>
> > >   <version>2.8</version>
> > >   <executions>
> > >     <execution>
> > >       <id>copy-dependencies</id>
> > >       <phase>package</phase>
> > >       <goals>
> > >         <goal>copy-dependencies</goal>
> > >       </goals>
> > >       <configuration>
> > >
> > >
> > <outputDirectory>${project.build.directory}/dependencies/</outputDirectory>
> > >         <overWriteReleases>false</overWriteReleases>
> > >         <overWriteSnapshots>false</overWriteSnapshots>
> > >         <overWriteIfNewer>true</overWriteIfNewer>
> > >       </configuration>
> > >     </execution>
> > >   </executions>
> > > </plugin>
> > > ...
> > >
> > > Then execute sqlline:
> > > java -Xmx1G
> > > -Dlogback.configurationFile=./sqlparser/src/test/resources/logback.xml
> > -cp
> > > "./contrib/sqlline/target/dependencies/*" sqlline.SqlLine --verbose=true
> > -u
> > > jdbc:drill:schema=parquet-local -n admin -p admin
> > >
> > > Hope this will help.
> > >
> > > Marco
> > >
> > >
> > >
> > > On Sat, Dec 28, 2013 at 9:43 PM, Ravisankar Sivasubramaniam <
> > > rasivasu@live.in> wrote:
> > >
> > > > Marco,
> > > > Thank you very much.  That worked for me as well.  Now I am getting the
> > > > following error.  What is the deal on sqlline.properties?
> > > > D:\workspace\incubator-drill>java -Xmx1G
> > > > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > -jar
> > > > contrib\sqlline\target\drill-sqlline-1.0.0-
> > > > m2-incubating-SNAPSHOT.jar --verbose=true -u
> > > > jdbc:drill:schema=parquet-local -n admin -p admin
> > > > Loaded singnal handler: SunSignalHandler
> > > > C:\Users\ravisankars\sqlline\sqlline.properties (The system cannot
> > find the
> > > > file specified)
> > > > issuing: !connect jdbc:drill:schema=parquet-local admin admin scan
> > > > complete in 5ms scan complete in 7ms No known driver to handle
> > > > "jdbc:drill:schema=parquet-local" sqlline version ??? by Marc
> > Prud'hommeaux
> > > > sqlline>
> > > > Best Regards,Ravi> Date: Sat, 28 Dec 2013 12:04:42 -0800
> > > > > Subject: Re: [OS: Windows] Could not find or load main class
> > > > sqlline.SqlLine
> > > > > From: sm4rc0@gmail.com
> > > > > To: drill-dev@incubator.apache.org
> > > > >
> > > > > Ravi,
> > > > >
> > > > > Can you try changing the classpathPrefix in your maven pom file from
> > > > >
> > <classpathPrefix>c:\Users\ravisankars\.m2\repository</classpathPrefix>
> > > > > to
> > > > >
> > <classpathPrefix>/c:/Users/ravisankars/.m2/repository/</classpathPrefix>
> > > > > Or better:
> > > > > <classpathPrefix>/${settings.localRepository}/</classpathPrefix>
> > > > >
> > > > > Notice the '/' at the beginning and at the end of the path. This
> > works
> > > > for
> > > > > me.
> > > > >
> > > > > Best Regards,
> > > > > Marco
> > > > >
> > > > > On Sat, Dec 28, 2013 at 10:00 AM, Ravisankar Sivasubramaniam <
> > > > > rasivasu@live.in> wrote:
> > > > >
> > > > > >  Progress so far
> > > > > > -------------------
> > > > > > Looks like apache-rat-plugin didn't like me logging the content to
> > > > log.txt
> > > > > > under incubator-drill.  Once I instructed mvn to log the output
> > outside
> > > > > > the folder, the build got completed without any error.
> > > > > >
> > > > > > Open issue
> > > > > > ---------------
> > > > > > The sqlline.bat looks as follows:
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > *if not exist contrib\sqlline\target (    cd contrib\sqlline    mvn
> > > > > > package    cd ..\..)*
> > > > > >
> > > > > > *java -Xmx1G
> > > > > >
> > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > > > -jar
> > > > > >
> > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > > > > --verbose=true*
> > > > > > The updated pom.xml has been attached.  In the pom.xml I have
> > included
> > > > > > maven-jar-plugin to add Manifest entries for Classpath and
> > Main-Class.
> > > >  I
> > > > > > have attached the MANIFEST.MF as well for reference.  As per jar
> > spec<
> > > >
> > http://docs.oracle.com/javase/7/docs/technotes/guides/jar/jar.html#Notes_on_Manifest_and_Signature_Files
> > > > >,
> > > > > > maven breaks the classpath at 72 and the continuation starts with a
> > > > single
> > > > > > space.  I have checked that all the files specified in the
> > classpath is
> > > > > > available in my local repository.
> > > > > >
> > > > > > The problem I am facing is that java is not able to find
> > > > sqlline.SqlLine
> > > > > > class from the classpath.
> > > > > >
> > > > > >
> > > > > > *D:\workspace\incubator-drill>java -Xmx1G
> > > > > >
> > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > > > -jar
> > > > > >
> > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > > > > --verbose=trueError: Could not find or load main class
> > sqlline.SqlLine*
> > > > > >
> > > > > > For now I have ignored passing the command line parameter.  But
> > that is
> > > > > > not related to the problem at hand.
> > > > > >
> > > > > > This <
> > http://stackoverflow.com/questions/6780678/run-class-in-jar-file>SO
> > > > answer suggests the command be included in the back quotes, if the
> > > > > > command is not executed from the directory containing the jar, but
> > > > Windows
> > > > > > doesn't support command substitution.
> > > > > >
> > > > > > And this<
> > > >
> > http://stackoverflow.com/questions/16626883/maven-error-trying-to-adding-arbitrary-classpath-in-manifest-mf
> > >SO
> > > > answer suggests to downgrade the maven version to 2.3.2 and change
> > > > > > classpath configuration so that each jar path starts in a new line.
> > > >  Since
> > > > > > I am not manually adding the classpath, I am not sure how to
> > implement
> > > > this
> > > > > > suggestion.
> > > > > >
> > > > > > Would you please let me know your thoughts on this?  I appreciate
> > any
> > > > help
> > > > > > on this.
> > > > > >
> > > > > > Regards,
> > > > > > Ravi
> > > > > >
> > > > > > ------------------------------
> > > > > > From: rasivasu@live.in
> > > > > > To: drill-dev@incubator.apache.org
> > > > > > Subject: RE: [OS: Windows] Could not find or load main class
> > > > > > sqlline.SqlLine
> > > > > > Date: Sat, 28 Dec 2013 15:33:44 +0530
> > > > > >
> > > > > >
> > > > > > Some more information to troubleshoot the problem.  If I execute
> > "mvn
> > > > > > clean install -DskipTests", I am getting the output given at the
> > > > bottom of
> > > > > > this email, which indicates success.  On the other hand if I try to
> > > > log the
> > > > > > output into file, I am getting an error.  I am attaching the log
> > file
> > > > for
> > > > > > reference.
> > > > > >
> > > > > > [INFO]
> > > > > > [INFO] --- maven-install-plugin:2.3.1:install (default-install) @
> > > > > > distribution ---
> > > > > > [INFO] Installing
> > D:\workspace\incubator-drill\distribution\pom.xml to
> > > > > >
> > > >
> > C:\Users\ravisankars\.m2\repository\org\apache\drill\distribution\1.0.0-m2-incubating-SNA
> > > > > > PSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT.pom
> > > > > > [INFO] Installing
> > > > > >
> > > >
> > D:\workspace\incubator-drill\distribution\target\apache-drill-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> > > > > > to C:\Users\ravisankars\.m2\r
> > > > > >
> > > > > >
> > > >
> > epository\org\apache\drill\distribution\1.0.0-m2-incubating-SNAPSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> > > > > > [INFO]
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > > [INFO] Reactor Summary:
> > > > > > [INFO]
> > > > > > [INFO] Apache Drill Root POM ............................. SUCCESS
> > > > [2.047s]
> > > > > > [INFO] Drill Protocol .................................... SUCCESS
> > > > [3.090s]
> > > > > > [INFO] Common (Logical Plan, Base expressions) ........... SUCCESS
> > > > [2.753s]
> > > > > > [INFO] contrib/Parent Pom ................................ SUCCESS
> > > > [0.165s]
> > > > > > [INFO] contrib/hbase-storage-engine ...................... SUCCESS
> > > > [0.247s]
> > > > > > [INFO] exec/Parent Pom ................................... SUCCESS
> > > > [0.179s]
> > > > > > [INFO] exec/Reference Interpreter ........................ SUCCESS
> > > > [1.677s]
> > > > > > [INFO] exec/Netty Little Endian Buffers .................. SUCCESS
> > > > [0.383s]
> > > > > > [INFO] exec/Java Execution Engine ........................ SUCCESS
> > > > > > [12.188s]
> > > > > > [INFO] SQL Parser ........................................ SUCCESS
> > > > [1.703s]
> > > > > > [INFO] contrib/sqlline ................................... SUCCESS
> > > > [1.897s]
> > > > > > [INFO] Packaging and Distribution Assembly ............... SUCCESS
> > > > > > [56.521s]
> > > > > > [INFO]
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > > [INFO] BUILD SUCCESS
> > > > > > [INFO]
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > > [INFO] Total time: 1:23.110s
> > > > > > [INFO] Finished at: Sat Dec 28 15:29:55 IST 2013
> > > > > > [INFO] Final Memory: 52M/168M
> > > > > > [INFO]
> > > > > >
> > > >
> > ------------------------------------------------------------------------
> > > > > > D:\workspace\incubator-drill>
> > > > > >
> > > > > > Regards,
> > > > > > Ravi
> > > > > >
> > > > > > ------------------------------
> > > > > > From: rasivasu@live.in
> > > > > > To: drill-dev@incubator.apache.org
> > > > > > Subject: RE: [OS: Windows] Could not find or load main class
> > > > > > sqlline.SqlLine
> > > > > > Date: Sat, 28 Dec 2013 14:38:13 +0530
> > > > > >
> > > > > > Hello Team,
> > > > > >
> > > > > > I resolved the below error by reducing the heap memory.  I am not
> > > > getting
> > > > > > the following error?
> > > > > >
> > > > > > D:\workspace\incubator-drill>java -Xmx1G
> > > > > >
> > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > > > -cp
> > > > > >
> > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > > > > sqlline.SqlLine --verbose=true "$@"
> > > > > > Error: Could not find or load main class sqlline.SqlLine
> > > > > >
> > > > > >
> > > > > > I am not able to identify what I am doing wrong.  As per the unix
> > > > script,
> > > > > > an sqlline jar is supposed to be available in incubator-drill
> > folder
> > > > but
> > > > > > mine doesn't have it.  Did I not checkout the folder correctly or
> > did I
> > > > > > miss a compilation step?
> > > > > >
> > > > > > Regards,
> > > > > > Ravi
> > > > > >
> > > > > > > From: rasivasu@live.in
> > > > > > > To: drill-dev@incubator.apache.org
> > > > > > > Subject: [OS: Windows] Error initializing VM due to lack of
> > space for
> > > > > > object heap
> > > > > > > Date: Thu, 26 Dec 2013 18:54:40 +0530
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > Hello team,
> > > > > > >
> > > > > > > I am getting the following error when trying to execute sqlline.
> > > > This is
> > > > > > my first attempt. Would you please let me know how much memory is
> > > > required
> > > > > > by the VM for Object Heap. Would you please let me know if you have
> > > > found
> > > > > > the optimium JVM settings for Apache Drill?
> > > > > > >
> > > > > > > D:\workspace\incubator-drill>java -Xmx2G
> > > > > >
> > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > > > -cp
> > > > > > contrib\sqlline\target\dependency sqlline.Sq
> > > > > > > lLine --verbose=true "$@"
> > > > > > > Error occurred during initialization of VM
> > > > > > > Could not reserve enough space for object heap
> > > > > > > Error: Could not create the Java Virtual Machine.
> > > > > > > Error: A fatal exception has occurred. Program will exit.
> > > > > > >
> > > > > > > Regards,
> > > > > > > Ravi
> > > > > > >
> > > > > > > From: rasivasu@live.in
> > > > > > > To: drill-dev@incubator.apache.org
> > > > > > > Subject: Challenge in creating of sqlline.bat due to windows
> > > > limitation
> > > > > > > Date: Sun, 22 Dec 2013 22:17:41 +0530
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > Hello all,
> > > > > > > Please find the WIP windows batch program. This works only for 86
> > > > file
> > > > > > names in .classpath (or 8138 characters long). But the working
> > version
> > > > of
> > > > > > .classpath has 131 filenames spanning 12,958 characters. The
> > article
> > > > > > http://support.microsoft.com/kb/830473 seem to support the
> > variable
> > > > > > length limitation - official limt is 8191.
> > > > > > > One possible option is to collate all the required jar files
> > into a
> > > > > > common folder so that we can work around the variable value
> > limitation
> > > > in
> > > > > > Windows platform. Are there any other suggestion from the team?
> > > > Regards,Ravi
> > > > > > >
> > > > > > > > Date: Sun, 22 Dec 2013 11:07:50 +0000
> > > > > > > > From: jira@apache.org
> > > > > > > > To: drill-dev@incubator.apache.org
> > > > > > > > Subject: [jira] [Created] (DRILL-338) sqlline script not
> > available
> > > > for
> > > > > > windows OS
> > > > > > > >
> > > > > > > > Ravisankar Sivasubramaniam created DRILL-338:
> > > > > > > > ------------------------------------------------
> > > > > > > >
> > > > > > > > Summary: sqlline script not available for windows OS
> > > > > > > > Key: DRILL-338
> > > > > > > > URL: https://issues.apache.org/jira/browse/DRILL-338
> > > > > > > > Project: Apache Drill
> > > > > > > > Issue Type: Bug
> > > > > > > > Affects Versions: 1.0.0-milestone-1, 1.0.0-milestone-2,
> > > > > > 1.0.0-milestone-3, 1.0.0-milestone-4, 1.0.0
> > > > > > > > Environment: Windows OS
> > > > > > > > Reporter: Ravisankar Sivasubramaniam
> > > > > > > >
> > > > > > > >
> > > > > > > > Currently sqlline may be executed only on *nix platforms.
> > Windows
> > > > > > version of sqlline need to be created for developers using windows
> > pcs.
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > --
> > > > > > > > This message was sent by Atlassian JIRA
> > > > > > > > (v6.1.5#6160)
> > > > > > >
> > > > > > >
> > > > > >
> > > >
> > > >
> >
> >
 		 	   		  

Re: [OS: Windows] Could not find or load main class sqlline.SqlLine

Posted by Marco Sandrini <sm...@gmail.com>.
Hi Ravi,

It looks good to me. Did you try to execute a query? For example:
select * from "sample-data/region.parquet";

If you like to get rid of the log messages on the console you can edit the
logback.xml and remove (or comment) this line in the STDOUT appender:
<level value="warn" />

Marco

On Sat, Jan 11, 2014 at 9:27 AM, Ravisankar Sivasubramaniam <
rasivasu@live.in> wrote:

> Hi Marco,
> Thank you very much for your time.  I abandoned the classpath approach and
> went back to "copy-dependency" approach.  Given below is the output of
> sqlline.bat.  Can you quickly confirm if the output is as expected?  I will
> send across the patch for Windows setup separately for code review.
> D:\workspace\incubator-drill>sqlline.bat -u
> jdbc:drill:schema=parquet-local -n admin -p admin
> D:\workspace\incubator-drill>if not exist
> contrib\sqlline\target\dependencies (call mvn -B -f contrib\sqlline\pom.xml
> package )
> D:\workspace\incubator-drill>java -Xmx1G
> -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> -cp ".\contrib\sqlline\target\dependencies\*" sqlline.SqlLine
> --verbose=true -u jdbc:drill:schema=parquet-local -n admin -p adminLoaded
> singnal handler: SunSignalHandlerissuing: !connect
> jdbc:drill:schema=parquet-local admin adminscan complete in 9ms22:51:57,241
> |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource
> [.\sqlparser\src\test\resources\logback.xml] at
> [file:/D:/workspace/incubator-drill/./sqlparser/src/test/resources/logback.xml]22:51:57,361
> |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug
> attribute not set22:51:57,374 |-INFO in
> ch.qos.logback.core.joran.action.AppenderAction - About to instantiate
> appender of type
> [de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender]22:51:57,385
> |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender
> as [SOCKET]22:51:57,434 |-INFO in
> de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender[SOCKET] -
> Waiting 1s to establish connections.22:51:58,434 |-INFO in
> de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender[SOCKET] -
> Started
> de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender[SOCKET]22:51:58,434
> |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to
> instantiate appender of type
> [ch.qos.logback.core.ConsoleAppender]22:51:58,439 |-INFO in
> ch.qos.logback.core.joran.action.AppenderAction - Naming appender as
> [STDOUT]22:51:58,447 |-INFO in
> ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default
> type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder]
> property22:51:58,506 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@33:27
> - no applicable action for [level], current ElementPath  is
> [[configuration][appender][level]]22:51:58,506 |-INFO in
> ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of
> logger [org.apache.drill] to false22:51:58,506 |-INFO in
> ch.qos.logback.classic.joran.action.LevelAction - org.apache.drill level
> set to DEBUG22:51:58,507 |-INFO in
> ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender
> named [SOCKET] to Logger[org.apache.drill]22:51:58,507 |-INFO in
> ch.qos.logback.classic.joran.action.LevelAction - ROOT level set to
> DEBUG22:51:58,507 |-INFO in
> ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender
> named [SOCKET] to Logger[ROOT]22:51:58,507 |-INFO in
> ch.qos.logback.classic.joran.action.ConfigurationAction - End of
> configuration.22:51:58,508 |-INFO in
> ch.qos.logback.classic.joran.JoranConfigurator@8c0e89 - Registering
> current configuration as safe fallback point
> scan complete in 2207msConnecting to
> jdbc:drill:schema=parquet-localConnected to: Drill (version 1.0)Driver:
> Apache Drill JDBC Driver (version 1.0)Autocommit status: trueTransaction
> isolation: TRANSACTION_REPEATABLE_READsqlline version ??? by Marc
> Prud'hommeaux0: jdbc:drill:schema=parquet-local>
> Regards,Ravi
> > Date: Sun, 29 Dec 2013 12:29:29 -0800
> > Subject: Re: [OS: Windows] Could not find or load main class
> sqlline.SqlLine
> > From: sm4rc0@gmail.com
> > To: drill-dev@incubator.apache.org
> >
> > Ravi,
> >
> > sqlline.properties is included in sqlline-1.1.0.jar. You can get rid of
> > this message by extracting the file and copying it into your user folder
> > C:\Users\ravisankars\sqlline\. Anyway, this is not critical, you can work
> > without that file.
> >
> > The real problem is the other error [No known driver to handle
> > "jdbc:drill:schema=parquet-local"]. It looks like the scan of the classes
> > does not work with jars included from the manifest file of an executable
> > jar (-jar option). If you specify the full class name for the driver by
> > appending "-d org.apache.drill.jdbc.Driver", then it finds the Driver
> class
> > but it fails loading it because of a deserialization error in Jackson:
> > com.fasterxml.jackson.databind.JsonMappingException: Could not resolve
> type
> > id 'parquet' into a subtype of [simple type, class
> > org.apache.drill.common.logical.StorageEngineConfig]
> > Basically, Jackson cannot find annotated classes in the external jars.
> >
> > At this point I think the only other way to get this working is by
> copying
> > all the dependent jars in a "dependencies" folder. You can do this with
> > maven:
> > ...
> > <plugin>
> >   <groupId>org.apache.maven.plugins</groupId>
> >   <artifactId>maven-dependency-plugin</artifactId>
> >   <version>2.8</version>
> >   <executions>
> >     <execution>
> >       <id>copy-dependencies</id>
> >       <phase>package</phase>
> >       <goals>
> >         <goal>copy-dependencies</goal>
> >       </goals>
> >       <configuration>
> >
> >
> <outputDirectory>${project.build.directory}/dependencies/</outputDirectory>
> >         <overWriteReleases>false</overWriteReleases>
> >         <overWriteSnapshots>false</overWriteSnapshots>
> >         <overWriteIfNewer>true</overWriteIfNewer>
> >       </configuration>
> >     </execution>
> >   </executions>
> > </plugin>
> > ...
> >
> > Then execute sqlline:
> > java -Xmx1G
> > -Dlogback.configurationFile=./sqlparser/src/test/resources/logback.xml
> -cp
> > "./contrib/sqlline/target/dependencies/*" sqlline.SqlLine --verbose=true
> -u
> > jdbc:drill:schema=parquet-local -n admin -p admin
> >
> > Hope this will help.
> >
> > Marco
> >
> >
> >
> > On Sat, Dec 28, 2013 at 9:43 PM, Ravisankar Sivasubramaniam <
> > rasivasu@live.in> wrote:
> >
> > > Marco,
> > > Thank you very much.  That worked for me as well.  Now I am getting the
> > > following error.  What is the deal on sqlline.properties?
> > > D:\workspace\incubator-drill>java -Xmx1G
> > > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> -jar
> > > contrib\sqlline\target\drill-sqlline-1.0.0-
> > > m2-incubating-SNAPSHOT.jar --verbose=true -u
> > > jdbc:drill:schema=parquet-local -n admin -p admin
> > > Loaded singnal handler: SunSignalHandler
> > > C:\Users\ravisankars\sqlline\sqlline.properties (The system cannot
> find the
> > > file specified)
> > > issuing: !connect jdbc:drill:schema=parquet-local admin admin scan
> > > complete in 5ms scan complete in 7ms No known driver to handle
> > > "jdbc:drill:schema=parquet-local" sqlline version ??? by Marc
> Prud'hommeaux
> > > sqlline>
> > > Best Regards,Ravi> Date: Sat, 28 Dec 2013 12:04:42 -0800
> > > > Subject: Re: [OS: Windows] Could not find or load main class
> > > sqlline.SqlLine
> > > > From: sm4rc0@gmail.com
> > > > To: drill-dev@incubator.apache.org
> > > >
> > > > Ravi,
> > > >
> > > > Can you try changing the classpathPrefix in your maven pom file from
> > > >
> <classpathPrefix>c:\Users\ravisankars\.m2\repository</classpathPrefix>
> > > > to
> > > >
> <classpathPrefix>/c:/Users/ravisankars/.m2/repository/</classpathPrefix>
> > > > Or better:
> > > > <classpathPrefix>/${settings.localRepository}/</classpathPrefix>
> > > >
> > > > Notice the '/' at the beginning and at the end of the path. This
> works
> > > for
> > > > me.
> > > >
> > > > Best Regards,
> > > > Marco
> > > >
> > > > On Sat, Dec 28, 2013 at 10:00 AM, Ravisankar Sivasubramaniam <
> > > > rasivasu@live.in> wrote:
> > > >
> > > > >  Progress so far
> > > > > -------------------
> > > > > Looks like apache-rat-plugin didn't like me logging the content to
> > > log.txt
> > > > > under incubator-drill.  Once I instructed mvn to log the output
> outside
> > > > > the folder, the build got completed without any error.
> > > > >
> > > > > Open issue
> > > > > ---------------
> > > > > The sqlline.bat looks as follows:
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > *if not exist contrib\sqlline\target (    cd contrib\sqlline    mvn
> > > > > package    cd ..\..)*
> > > > >
> > > > > *java -Xmx1G
> > > > >
> -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > > -jar
> > > > >
> contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > > > --verbose=true*
> > > > > The updated pom.xml has been attached.  In the pom.xml I have
> included
> > > > > maven-jar-plugin to add Manifest entries for Classpath and
> Main-Class.
> > >  I
> > > > > have attached the MANIFEST.MF as well for reference.  As per jar
> spec<
> > >
> http://docs.oracle.com/javase/7/docs/technotes/guides/jar/jar.html#Notes_on_Manifest_and_Signature_Files
> > > >,
> > > > > maven breaks the classpath at 72 and the continuation starts with a
> > > single
> > > > > space.  I have checked that all the files specified in the
> classpath is
> > > > > available in my local repository.
> > > > >
> > > > > The problem I am facing is that java is not able to find
> > > sqlline.SqlLine
> > > > > class from the classpath.
> > > > >
> > > > >
> > > > > *D:\workspace\incubator-drill>java -Xmx1G
> > > > >
> -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > > -jar
> > > > >
> contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > > > --verbose=trueError: Could not find or load main class
> sqlline.SqlLine*
> > > > >
> > > > > For now I have ignored passing the command line parameter.  But
> that is
> > > > > not related to the problem at hand.
> > > > >
> > > > > This <
> http://stackoverflow.com/questions/6780678/run-class-in-jar-file>SO
> > > answer suggests the command be included in the back quotes, if the
> > > > > command is not executed from the directory containing the jar, but
> > > Windows
> > > > > doesn't support command substitution.
> > > > >
> > > > > And this<
> > >
> http://stackoverflow.com/questions/16626883/maven-error-trying-to-adding-arbitrary-classpath-in-manifest-mf
> >SO
> > > answer suggests to downgrade the maven version to 2.3.2 and change
> > > > > classpath configuration so that each jar path starts in a new line.
> > >  Since
> > > > > I am not manually adding the classpath, I am not sure how to
> implement
> > > this
> > > > > suggestion.
> > > > >
> > > > > Would you please let me know your thoughts on this?  I appreciate
> any
> > > help
> > > > > on this.
> > > > >
> > > > > Regards,
> > > > > Ravi
> > > > >
> > > > > ------------------------------
> > > > > From: rasivasu@live.in
> > > > > To: drill-dev@incubator.apache.org
> > > > > Subject: RE: [OS: Windows] Could not find or load main class
> > > > > sqlline.SqlLine
> > > > > Date: Sat, 28 Dec 2013 15:33:44 +0530
> > > > >
> > > > >
> > > > > Some more information to troubleshoot the problem.  If I execute
> "mvn
> > > > > clean install -DskipTests", I am getting the output given at the
> > > bottom of
> > > > > this email, which indicates success.  On the other hand if I try to
> > > log the
> > > > > output into file, I am getting an error.  I am attaching the log
> file
> > > for
> > > > > reference.
> > > > >
> > > > > [INFO]
> > > > > [INFO] --- maven-install-plugin:2.3.1:install (default-install) @
> > > > > distribution ---
> > > > > [INFO] Installing
> D:\workspace\incubator-drill\distribution\pom.xml to
> > > > >
> > >
> C:\Users\ravisankars\.m2\repository\org\apache\drill\distribution\1.0.0-m2-incubating-SNA
> > > > > PSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT.pom
> > > > > [INFO] Installing
> > > > >
> > >
> D:\workspace\incubator-drill\distribution\target\apache-drill-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> > > > > to C:\Users\ravisankars\.m2\r
> > > > >
> > > > >
> > >
> epository\org\apache\drill\distribution\1.0.0-m2-incubating-SNAPSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> > > > > [INFO]
> > > > >
> > >
> ------------------------------------------------------------------------
> > > > > [INFO] Reactor Summary:
> > > > > [INFO]
> > > > > [INFO] Apache Drill Root POM ............................. SUCCESS
> > > [2.047s]
> > > > > [INFO] Drill Protocol .................................... SUCCESS
> > > [3.090s]
> > > > > [INFO] Common (Logical Plan, Base expressions) ........... SUCCESS
> > > [2.753s]
> > > > > [INFO] contrib/Parent Pom ................................ SUCCESS
> > > [0.165s]
> > > > > [INFO] contrib/hbase-storage-engine ...................... SUCCESS
> > > [0.247s]
> > > > > [INFO] exec/Parent Pom ................................... SUCCESS
> > > [0.179s]
> > > > > [INFO] exec/Reference Interpreter ........................ SUCCESS
> > > [1.677s]
> > > > > [INFO] exec/Netty Little Endian Buffers .................. SUCCESS
> > > [0.383s]
> > > > > [INFO] exec/Java Execution Engine ........................ SUCCESS
> > > > > [12.188s]
> > > > > [INFO] SQL Parser ........................................ SUCCESS
> > > [1.703s]
> > > > > [INFO] contrib/sqlline ................................... SUCCESS
> > > [1.897s]
> > > > > [INFO] Packaging and Distribution Assembly ............... SUCCESS
> > > > > [56.521s]
> > > > > [INFO]
> > > > >
> > >
> ------------------------------------------------------------------------
> > > > > [INFO] BUILD SUCCESS
> > > > > [INFO]
> > > > >
> > >
> ------------------------------------------------------------------------
> > > > > [INFO] Total time: 1:23.110s
> > > > > [INFO] Finished at: Sat Dec 28 15:29:55 IST 2013
> > > > > [INFO] Final Memory: 52M/168M
> > > > > [INFO]
> > > > >
> > >
> ------------------------------------------------------------------------
> > > > > D:\workspace\incubator-drill>
> > > > >
> > > > > Regards,
> > > > > Ravi
> > > > >
> > > > > ------------------------------
> > > > > From: rasivasu@live.in
> > > > > To: drill-dev@incubator.apache.org
> > > > > Subject: RE: [OS: Windows] Could not find or load main class
> > > > > sqlline.SqlLine
> > > > > Date: Sat, 28 Dec 2013 14:38:13 +0530
> > > > >
> > > > > Hello Team,
> > > > >
> > > > > I resolved the below error by reducing the heap memory.  I am not
> > > getting
> > > > > the following error?
> > > > >
> > > > > D:\workspace\incubator-drill>java -Xmx1G
> > > > >
> -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > > -cp
> > > > >
> contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > > > sqlline.SqlLine --verbose=true "$@"
> > > > > Error: Could not find or load main class sqlline.SqlLine
> > > > >
> > > > >
> > > > > I am not able to identify what I am doing wrong.  As per the unix
> > > script,
> > > > > an sqlline jar is supposed to be available in incubator-drill
> folder
> > > but
> > > > > mine doesn't have it.  Did I not checkout the folder correctly or
> did I
> > > > > miss a compilation step?
> > > > >
> > > > > Regards,
> > > > > Ravi
> > > > >
> > > > > > From: rasivasu@live.in
> > > > > > To: drill-dev@incubator.apache.org
> > > > > > Subject: [OS: Windows] Error initializing VM due to lack of
> space for
> > > > > object heap
> > > > > > Date: Thu, 26 Dec 2013 18:54:40 +0530
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > Hello team,
> > > > > >
> > > > > > I am getting the following error when trying to execute sqlline.
> > > This is
> > > > > my first attempt. Would you please let me know how much memory is
> > > required
> > > > > by the VM for Object Heap. Would you please let me know if you have
> > > found
> > > > > the optimium JVM settings for Apache Drill?
> > > > > >
> > > > > > D:\workspace\incubator-drill>java -Xmx2G
> > > > >
> -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > > -cp
> > > > > contrib\sqlline\target\dependency sqlline.Sq
> > > > > > lLine --verbose=true "$@"
> > > > > > Error occurred during initialization of VM
> > > > > > Could not reserve enough space for object heap
> > > > > > Error: Could not create the Java Virtual Machine.
> > > > > > Error: A fatal exception has occurred. Program will exit.
> > > > > >
> > > > > > Regards,
> > > > > > Ravi
> > > > > >
> > > > > > From: rasivasu@live.in
> > > > > > To: drill-dev@incubator.apache.org
> > > > > > Subject: Challenge in creating of sqlline.bat due to windows
> > > limitation
> > > > > > Date: Sun, 22 Dec 2013 22:17:41 +0530
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > Hello all,
> > > > > > Please find the WIP windows batch program. This works only for 86
> > > file
> > > > > names in .classpath (or 8138 characters long). But the working
> version
> > > of
> > > > > .classpath has 131 filenames spanning 12,958 characters. The
> article
> > > > > http://support.microsoft.com/kb/830473 seem to support the
> variable
> > > > > length limitation - official limt is 8191.
> > > > > > One possible option is to collate all the required jar files
> into a
> > > > > common folder so that we can work around the variable value
> limitation
> > > in
> > > > > Windows platform. Are there any other suggestion from the team?
> > > Regards,Ravi
> > > > > >
> > > > > > > Date: Sun, 22 Dec 2013 11:07:50 +0000
> > > > > > > From: jira@apache.org
> > > > > > > To: drill-dev@incubator.apache.org
> > > > > > > Subject: [jira] [Created] (DRILL-338) sqlline script not
> available
> > > for
> > > > > windows OS
> > > > > > >
> > > > > > > Ravisankar Sivasubramaniam created DRILL-338:
> > > > > > > ------------------------------------------------
> > > > > > >
> > > > > > > Summary: sqlline script not available for windows OS
> > > > > > > Key: DRILL-338
> > > > > > > URL: https://issues.apache.org/jira/browse/DRILL-338
> > > > > > > Project: Apache Drill
> > > > > > > Issue Type: Bug
> > > > > > > Affects Versions: 1.0.0-milestone-1, 1.0.0-milestone-2,
> > > > > 1.0.0-milestone-3, 1.0.0-milestone-4, 1.0.0
> > > > > > > Environment: Windows OS
> > > > > > > Reporter: Ravisankar Sivasubramaniam
> > > > > > >
> > > > > > >
> > > > > > > Currently sqlline may be executed only on *nix platforms.
> Windows
> > > > > version of sqlline need to be created for developers using windows
> pcs.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > This message was sent by Atlassian JIRA
> > > > > > > (v6.1.5#6160)
> > > > > >
> > > > > >
> > > > >
> > >
> > >
>
>

RE: [OS: Windows] Could not find or load main class sqlline.SqlLine

Posted by Ravisankar Sivasubramaniam <ra...@live.in>.
Hi Marco,
Thank you very much for your time.  I abandoned the classpath approach and went back to "copy-dependency" approach.  Given below is the output of sqlline.bat.  Can you quickly confirm if the output is as expected?  I will send across the patch for Windows setup separately for code review.
D:\workspace\incubator-drill>sqlline.bat -u jdbc:drill:schema=parquet-local -n admin -p admin
D:\workspace\incubator-drill>if not exist contrib\sqlline\target\dependencies (call mvn -B -f contrib\sqlline\pom.xml package )
D:\workspace\incubator-drill>java -Xmx1G -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml     -cp ".\contrib\sqlline\target\dependencies\*" sqlline.SqlLine --verbose=true -u jdbc:drill:schema=parquet-local -n admin -p adminLoaded singnal handler: SunSignalHandlerissuing: !connect jdbc:drill:schema=parquet-local admin adminscan complete in 9ms22:51:57,241 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [.\sqlparser\src\test\resources\logback.xml] at [file:/D:/workspace/incubator-drill/./sqlparser/src/test/resources/logback.xml]22:51:57,361 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set22:51:57,374 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender]22:51:57,385 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [SOCKET]22:51:57,434 |-INFO in de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender[SOCKET] - Waiting 1s to establish connections.22:51:58,434 |-INFO in de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender[SOCKET] - Started de.huxhorn.lilith.logback.appender.ClassicMultiplexSocketAppender[SOCKET]22:51:58,434 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]22:51:58,439 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT]22:51:58,447 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property22:51:58,506 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@33:27 - no applicable action for [level], current ElementPath  is [[configuration][appender][level]]22:51:58,506 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [org.apache.drill] to false22:51:58,506 |-INFO in ch.qos.logback.classic.joran.action.LevelAction - org.apache.drill level set to DEBUG22:51:58,507 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SOCKET] to Logger[org.apache.drill]22:51:58,507 |-INFO in ch.qos.logback.classic.joran.action.LevelAction - ROOT level set to DEBUG22:51:58,507 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [SOCKET] to Logger[ROOT]22:51:58,507 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.22:51:58,508 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@8c0e89 - Registering current configuration as safe fallback point
scan complete in 2207msConnecting to jdbc:drill:schema=parquet-localConnected to: Drill (version 1.0)Driver: Apache Drill JDBC Driver (version 1.0)Autocommit status: trueTransaction isolation: TRANSACTION_REPEATABLE_READsqlline version ??? by Marc Prud'hommeaux0: jdbc:drill:schema=parquet-local>
Regards,Ravi
> Date: Sun, 29 Dec 2013 12:29:29 -0800
> Subject: Re: [OS: Windows] Could not find or load main class sqlline.SqlLine
> From: sm4rc0@gmail.com
> To: drill-dev@incubator.apache.org
> 
> Ravi,
> 
> sqlline.properties is included in sqlline-1.1.0.jar. You can get rid of
> this message by extracting the file and copying it into your user folder
> C:\Users\ravisankars\sqlline\. Anyway, this is not critical, you can work
> without that file.
> 
> The real problem is the other error [No known driver to handle
> "jdbc:drill:schema=parquet-local"]. It looks like the scan of the classes
> does not work with jars included from the manifest file of an executable
> jar (-jar option). If you specify the full class name for the driver by
> appending "-d org.apache.drill.jdbc.Driver", then it finds the Driver class
> but it fails loading it because of a deserialization error in Jackson:
> com.fasterxml.jackson.databind.JsonMappingException: Could not resolve type
> id 'parquet' into a subtype of [simple type, class
> org.apache.drill.common.logical.StorageEngineConfig]
> Basically, Jackson cannot find annotated classes in the external jars.
> 
> At this point I think the only other way to get this working is by copying
> all the dependent jars in a "dependencies" folder. You can do this with
> maven:
> ...
> <plugin>
>   <groupId>org.apache.maven.plugins</groupId>
>   <artifactId>maven-dependency-plugin</artifactId>
>   <version>2.8</version>
>   <executions>
>     <execution>
>       <id>copy-dependencies</id>
>       <phase>package</phase>
>       <goals>
>         <goal>copy-dependencies</goal>
>       </goals>
>       <configuration>
> 
> <outputDirectory>${project.build.directory}/dependencies/</outputDirectory>
>         <overWriteReleases>false</overWriteReleases>
>         <overWriteSnapshots>false</overWriteSnapshots>
>         <overWriteIfNewer>true</overWriteIfNewer>
>       </configuration>
>     </execution>
>   </executions>
> </plugin>
> ...
> 
> Then execute sqlline:
> java -Xmx1G
> -Dlogback.configurationFile=./sqlparser/src/test/resources/logback.xml -cp
> "./contrib/sqlline/target/dependencies/*" sqlline.SqlLine --verbose=true -u
> jdbc:drill:schema=parquet-local -n admin -p admin
> 
> Hope this will help.
> 
> Marco
> 
> 
> 
> On Sat, Dec 28, 2013 at 9:43 PM, Ravisankar Sivasubramaniam <
> rasivasu@live.in> wrote:
> 
> > Marco,
> > Thank you very much.  That worked for me as well.  Now I am getting the
> > following error.  What is the deal on sqlline.properties?
> > D:\workspace\incubator-drill>java -Xmx1G
> > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -jar
> > contrib\sqlline\target\drill-sqlline-1.0.0-
> > m2-incubating-SNAPSHOT.jar --verbose=true -u
> > jdbc:drill:schema=parquet-local -n admin -p admin
> > Loaded singnal handler: SunSignalHandler
> > C:\Users\ravisankars\sqlline\sqlline.properties (The system cannot find the
> > file specified)
> > issuing: !connect jdbc:drill:schema=parquet-local admin admin scan
> > complete in 5ms scan complete in 7ms No known driver to handle
> > "jdbc:drill:schema=parquet-local" sqlline version ??? by Marc Prud'hommeaux
> > sqlline>
> > Best Regards,Ravi> Date: Sat, 28 Dec 2013 12:04:42 -0800
> > > Subject: Re: [OS: Windows] Could not find or load main class
> > sqlline.SqlLine
> > > From: sm4rc0@gmail.com
> > > To: drill-dev@incubator.apache.org
> > >
> > > Ravi,
> > >
> > > Can you try changing the classpathPrefix in your maven pom file from
> > > <classpathPrefix>c:\Users\ravisankars\.m2\repository</classpathPrefix>
> > > to
> > > <classpathPrefix>/c:/Users/ravisankars/.m2/repository/</classpathPrefix>
> > > Or better:
> > > <classpathPrefix>/${settings.localRepository}/</classpathPrefix>
> > >
> > > Notice the '/' at the beginning and at the end of the path. This works
> > for
> > > me.
> > >
> > > Best Regards,
> > > Marco
> > >
> > > On Sat, Dec 28, 2013 at 10:00 AM, Ravisankar Sivasubramaniam <
> > > rasivasu@live.in> wrote:
> > >
> > > >  Progress so far
> > > > -------------------
> > > > Looks like apache-rat-plugin didn't like me logging the content to
> > log.txt
> > > > under incubator-drill.  Once I instructed mvn to log the output outside
> > > > the folder, the build got completed without any error.
> > > >
> > > > Open issue
> > > > ---------------
> > > > The sqlline.bat looks as follows:
> > > >
> > > >
> > > >
> > > >
> > > > *if not exist contrib\sqlline\target (    cd contrib\sqlline    mvn
> > > > package    cd ..\..)*
> > > >
> > > > *java -Xmx1G
> > > > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > -jar
> > > > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > > --verbose=true*
> > > > The updated pom.xml has been attached.  In the pom.xml I have included
> > > > maven-jar-plugin to add Manifest entries for Classpath and Main-Class.
> >  I
> > > > have attached the MANIFEST.MF as well for reference.  As per jar spec<
> > http://docs.oracle.com/javase/7/docs/technotes/guides/jar/jar.html#Notes_on_Manifest_and_Signature_Files
> > >,
> > > > maven breaks the classpath at 72 and the continuation starts with a
> > single
> > > > space.  I have checked that all the files specified in the classpath is
> > > > available in my local repository.
> > > >
> > > > The problem I am facing is that java is not able to find
> > sqlline.SqlLine
> > > > class from the classpath.
> > > >
> > > >
> > > > *D:\workspace\incubator-drill>java -Xmx1G
> > > > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > -jar
> > > > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > > --verbose=trueError: Could not find or load main class sqlline.SqlLine*
> > > >
> > > > For now I have ignored passing the command line parameter.  But that is
> > > > not related to the problem at hand.
> > > >
> > > > This <http://stackoverflow.com/questions/6780678/run-class-in-jar-file>SO
> > answer suggests the command be included in the back quotes, if the
> > > > command is not executed from the directory containing the jar, but
> > Windows
> > > > doesn't support command substitution.
> > > >
> > > > And this<
> > http://stackoverflow.com/questions/16626883/maven-error-trying-to-adding-arbitrary-classpath-in-manifest-mf>SO
> > answer suggests to downgrade the maven version to 2.3.2 and change
> > > > classpath configuration so that each jar path starts in a new line.
> >  Since
> > > > I am not manually adding the classpath, I am not sure how to implement
> > this
> > > > suggestion.
> > > >
> > > > Would you please let me know your thoughts on this?  I appreciate any
> > help
> > > > on this.
> > > >
> > > > Regards,
> > > > Ravi
> > > >
> > > > ------------------------------
> > > > From: rasivasu@live.in
> > > > To: drill-dev@incubator.apache.org
> > > > Subject: RE: [OS: Windows] Could not find or load main class
> > > > sqlline.SqlLine
> > > > Date: Sat, 28 Dec 2013 15:33:44 +0530
> > > >
> > > >
> > > > Some more information to troubleshoot the problem.  If I execute "mvn
> > > > clean install -DskipTests", I am getting the output given at the
> > bottom of
> > > > this email, which indicates success.  On the other hand if I try to
> > log the
> > > > output into file, I am getting an error.  I am attaching the log file
> > for
> > > > reference.
> > > >
> > > > [INFO]
> > > > [INFO] --- maven-install-plugin:2.3.1:install (default-install) @
> > > > distribution ---
> > > > [INFO] Installing D:\workspace\incubator-drill\distribution\pom.xml to
> > > >
> > C:\Users\ravisankars\.m2\repository\org\apache\drill\distribution\1.0.0-m2-incubating-SNA
> > > > PSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT.pom
> > > > [INFO] Installing
> > > >
> > D:\workspace\incubator-drill\distribution\target\apache-drill-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> > > > to C:\Users\ravisankars\.m2\r
> > > >
> > > >
> > epository\org\apache\drill\distribution\1.0.0-m2-incubating-SNAPSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> > > > [INFO]
> > > >
> > ------------------------------------------------------------------------
> > > > [INFO] Reactor Summary:
> > > > [INFO]
> > > > [INFO] Apache Drill Root POM ............................. SUCCESS
> > [2.047s]
> > > > [INFO] Drill Protocol .................................... SUCCESS
> > [3.090s]
> > > > [INFO] Common (Logical Plan, Base expressions) ........... SUCCESS
> > [2.753s]
> > > > [INFO] contrib/Parent Pom ................................ SUCCESS
> > [0.165s]
> > > > [INFO] contrib/hbase-storage-engine ...................... SUCCESS
> > [0.247s]
> > > > [INFO] exec/Parent Pom ................................... SUCCESS
> > [0.179s]
> > > > [INFO] exec/Reference Interpreter ........................ SUCCESS
> > [1.677s]
> > > > [INFO] exec/Netty Little Endian Buffers .................. SUCCESS
> > [0.383s]
> > > > [INFO] exec/Java Execution Engine ........................ SUCCESS
> > > > [12.188s]
> > > > [INFO] SQL Parser ........................................ SUCCESS
> > [1.703s]
> > > > [INFO] contrib/sqlline ................................... SUCCESS
> > [1.897s]
> > > > [INFO] Packaging and Distribution Assembly ............... SUCCESS
> > > > [56.521s]
> > > > [INFO]
> > > >
> > ------------------------------------------------------------------------
> > > > [INFO] BUILD SUCCESS
> > > > [INFO]
> > > >
> > ------------------------------------------------------------------------
> > > > [INFO] Total time: 1:23.110s
> > > > [INFO] Finished at: Sat Dec 28 15:29:55 IST 2013
> > > > [INFO] Final Memory: 52M/168M
> > > > [INFO]
> > > >
> > ------------------------------------------------------------------------
> > > > D:\workspace\incubator-drill>
> > > >
> > > > Regards,
> > > > Ravi
> > > >
> > > > ------------------------------
> > > > From: rasivasu@live.in
> > > > To: drill-dev@incubator.apache.org
> > > > Subject: RE: [OS: Windows] Could not find or load main class
> > > > sqlline.SqlLine
> > > > Date: Sat, 28 Dec 2013 14:38:13 +0530
> > > >
> > > > Hello Team,
> > > >
> > > > I resolved the below error by reducing the heap memory.  I am not
> > getting
> > > > the following error?
> > > >
> > > > D:\workspace\incubator-drill>java -Xmx1G
> > > > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > -cp
> > > > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > > sqlline.SqlLine --verbose=true "$@"
> > > > Error: Could not find or load main class sqlline.SqlLine
> > > >
> > > >
> > > > I am not able to identify what I am doing wrong.  As per the unix
> > script,
> > > > an sqlline jar is supposed to be available in incubator-drill folder
> > but
> > > > mine doesn't have it.  Did I not checkout the folder correctly or did I
> > > > miss a compilation step?
> > > >
> > > > Regards,
> > > > Ravi
> > > >
> > > > > From: rasivasu@live.in
> > > > > To: drill-dev@incubator.apache.org
> > > > > Subject: [OS: Windows] Error initializing VM due to lack of space for
> > > > object heap
> > > > > Date: Thu, 26 Dec 2013 18:54:40 +0530
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > Hello team,
> > > > >
> > > > > I am getting the following error when trying to execute sqlline.
> > This is
> > > > my first attempt. Would you please let me know how much memory is
> > required
> > > > by the VM for Object Heap. Would you please let me know if you have
> > found
> > > > the optimium JVM settings for Apache Drill?
> > > > >
> > > > > D:\workspace\incubator-drill>java -Xmx2G
> > > > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> > -cp
> > > > contrib\sqlline\target\dependency sqlline.Sq
> > > > > lLine --verbose=true "$@"
> > > > > Error occurred during initialization of VM
> > > > > Could not reserve enough space for object heap
> > > > > Error: Could not create the Java Virtual Machine.
> > > > > Error: A fatal exception has occurred. Program will exit.
> > > > >
> > > > > Regards,
> > > > > Ravi
> > > > >
> > > > > From: rasivasu@live.in
> > > > > To: drill-dev@incubator.apache.org
> > > > > Subject: Challenge in creating of sqlline.bat due to windows
> > limitation
> > > > > Date: Sun, 22 Dec 2013 22:17:41 +0530
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > Hello all,
> > > > > Please find the WIP windows batch program. This works only for 86
> > file
> > > > names in .classpath (or 8138 characters long). But the working version
> > of
> > > > .classpath has 131 filenames spanning 12,958 characters. The article
> > > > http://support.microsoft.com/kb/830473 seem to support the variable
> > > > length limitation - official limt is 8191.
> > > > > One possible option is to collate all the required jar files into a
> > > > common folder so that we can work around the variable value limitation
> > in
> > > > Windows platform. Are there any other suggestion from the team?
> > Regards,Ravi
> > > > >
> > > > > > Date: Sun, 22 Dec 2013 11:07:50 +0000
> > > > > > From: jira@apache.org
> > > > > > To: drill-dev@incubator.apache.org
> > > > > > Subject: [jira] [Created] (DRILL-338) sqlline script not available
> > for
> > > > windows OS
> > > > > >
> > > > > > Ravisankar Sivasubramaniam created DRILL-338:
> > > > > > ------------------------------------------------
> > > > > >
> > > > > > Summary: sqlline script not available for windows OS
> > > > > > Key: DRILL-338
> > > > > > URL: https://issues.apache.org/jira/browse/DRILL-338
> > > > > > Project: Apache Drill
> > > > > > Issue Type: Bug
> > > > > > Affects Versions: 1.0.0-milestone-1, 1.0.0-milestone-2,
> > > > 1.0.0-milestone-3, 1.0.0-milestone-4, 1.0.0
> > > > > > Environment: Windows OS
> > > > > > Reporter: Ravisankar Sivasubramaniam
> > > > > >
> > > > > >
> > > > > > Currently sqlline may be executed only on *nix platforms. Windows
> > > > version of sqlline need to be created for developers using windows pcs.
> > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > This message was sent by Atlassian JIRA
> > > > > > (v6.1.5#6160)
> > > > >
> > > > >
> > > >
> >
> >
 		 	   		  

Re: [OS: Windows] Could not find or load main class sqlline.SqlLine

Posted by Marco Sandrini <sm...@gmail.com>.
Ravi,

sqlline.properties is included in sqlline-1.1.0.jar. You can get rid of
this message by extracting the file and copying it into your user folder
C:\Users\ravisankars\sqlline\. Anyway, this is not critical, you can work
without that file.

The real problem is the other error [No known driver to handle
"jdbc:drill:schema=parquet-local"]. It looks like the scan of the classes
does not work with jars included from the manifest file of an executable
jar (-jar option). If you specify the full class name for the driver by
appending "-d org.apache.drill.jdbc.Driver", then it finds the Driver class
but it fails loading it because of a deserialization error in Jackson:
com.fasterxml.jackson.databind.JsonMappingException: Could not resolve type
id 'parquet' into a subtype of [simple type, class
org.apache.drill.common.logical.StorageEngineConfig]
Basically, Jackson cannot find annotated classes in the external jars.

At this point I think the only other way to get this working is by copying
all the dependent jars in a "dependencies" folder. You can do this with
maven:
...
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-dependency-plugin</artifactId>
  <version>2.8</version>
  <executions>
    <execution>
      <id>copy-dependencies</id>
      <phase>package</phase>
      <goals>
        <goal>copy-dependencies</goal>
      </goals>
      <configuration>

<outputDirectory>${project.build.directory}/dependencies/</outputDirectory>
        <overWriteReleases>false</overWriteReleases>
        <overWriteSnapshots>false</overWriteSnapshots>
        <overWriteIfNewer>true</overWriteIfNewer>
      </configuration>
    </execution>
  </executions>
</plugin>
...

Then execute sqlline:
java -Xmx1G
-Dlogback.configurationFile=./sqlparser/src/test/resources/logback.xml -cp
"./contrib/sqlline/target/dependencies/*" sqlline.SqlLine --verbose=true -u
jdbc:drill:schema=parquet-local -n admin -p admin

Hope this will help.

Marco



On Sat, Dec 28, 2013 at 9:43 PM, Ravisankar Sivasubramaniam <
rasivasu@live.in> wrote:

> Marco,
> Thank you very much.  That worked for me as well.  Now I am getting the
> following error.  What is the deal on sqlline.properties?
> D:\workspace\incubator-drill>java -Xmx1G
> -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -jar
> contrib\sqlline\target\drill-sqlline-1.0.0-
> m2-incubating-SNAPSHOT.jar --verbose=true -u
> jdbc:drill:schema=parquet-local -n admin -p admin
> Loaded singnal handler: SunSignalHandler
> C:\Users\ravisankars\sqlline\sqlline.properties (The system cannot find the
> file specified)
> issuing: !connect jdbc:drill:schema=parquet-local admin admin scan
> complete in 5ms scan complete in 7ms No known driver to handle
> "jdbc:drill:schema=parquet-local" sqlline version ??? by Marc Prud'hommeaux
> sqlline>
> Best Regards,Ravi> Date: Sat, 28 Dec 2013 12:04:42 -0800
> > Subject: Re: [OS: Windows] Could not find or load main class
> sqlline.SqlLine
> > From: sm4rc0@gmail.com
> > To: drill-dev@incubator.apache.org
> >
> > Ravi,
> >
> > Can you try changing the classpathPrefix in your maven pom file from
> > <classpathPrefix>c:\Users\ravisankars\.m2\repository</classpathPrefix>
> > to
> > <classpathPrefix>/c:/Users/ravisankars/.m2/repository/</classpathPrefix>
> > Or better:
> > <classpathPrefix>/${settings.localRepository}/</classpathPrefix>
> >
> > Notice the '/' at the beginning and at the end of the path. This works
> for
> > me.
> >
> > Best Regards,
> > Marco
> >
> > On Sat, Dec 28, 2013 at 10:00 AM, Ravisankar Sivasubramaniam <
> > rasivasu@live.in> wrote:
> >
> > >  Progress so far
> > > -------------------
> > > Looks like apache-rat-plugin didn't like me logging the content to
> log.txt
> > > under incubator-drill.  Once I instructed mvn to log the output outside
> > > the folder, the build got completed without any error.
> > >
> > > Open issue
> > > ---------------
> > > The sqlline.bat looks as follows:
> > >
> > >
> > >
> > >
> > > *if not exist contrib\sqlline\target (    cd contrib\sqlline    mvn
> > > package    cd ..\..)*
> > >
> > > *java -Xmx1G
> > > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> -jar
> > > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > --verbose=true*
> > > The updated pom.xml has been attached.  In the pom.xml I have included
> > > maven-jar-plugin to add Manifest entries for Classpath and Main-Class.
>  I
> > > have attached the MANIFEST.MF as well for reference.  As per jar spec<
> http://docs.oracle.com/javase/7/docs/technotes/guides/jar/jar.html#Notes_on_Manifest_and_Signature_Files
> >,
> > > maven breaks the classpath at 72 and the continuation starts with a
> single
> > > space.  I have checked that all the files specified in the classpath is
> > > available in my local repository.
> > >
> > > The problem I am facing is that java is not able to find
> sqlline.SqlLine
> > > class from the classpath.
> > >
> > >
> > > *D:\workspace\incubator-drill>java -Xmx1G
> > > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> -jar
> > > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > --verbose=trueError: Could not find or load main class sqlline.SqlLine*
> > >
> > > For now I have ignored passing the command line parameter.  But that is
> > > not related to the problem at hand.
> > >
> > > This <http://stackoverflow.com/questions/6780678/run-class-in-jar-file>SO
> answer suggests the command be included in the back quotes, if the
> > > command is not executed from the directory containing the jar, but
> Windows
> > > doesn't support command substitution.
> > >
> > > And this<
> http://stackoverflow.com/questions/16626883/maven-error-trying-to-adding-arbitrary-classpath-in-manifest-mf>SO
> answer suggests to downgrade the maven version to 2.3.2 and change
> > > classpath configuration so that each jar path starts in a new line.
>  Since
> > > I am not manually adding the classpath, I am not sure how to implement
> this
> > > suggestion.
> > >
> > > Would you please let me know your thoughts on this?  I appreciate any
> help
> > > on this.
> > >
> > > Regards,
> > > Ravi
> > >
> > > ------------------------------
> > > From: rasivasu@live.in
> > > To: drill-dev@incubator.apache.org
> > > Subject: RE: [OS: Windows] Could not find or load main class
> > > sqlline.SqlLine
> > > Date: Sat, 28 Dec 2013 15:33:44 +0530
> > >
> > >
> > > Some more information to troubleshoot the problem.  If I execute "mvn
> > > clean install -DskipTests", I am getting the output given at the
> bottom of
> > > this email, which indicates success.  On the other hand if I try to
> log the
> > > output into file, I am getting an error.  I am attaching the log file
> for
> > > reference.
> > >
> > > [INFO]
> > > [INFO] --- maven-install-plugin:2.3.1:install (default-install) @
> > > distribution ---
> > > [INFO] Installing D:\workspace\incubator-drill\distribution\pom.xml to
> > >
> C:\Users\ravisankars\.m2\repository\org\apache\drill\distribution\1.0.0-m2-incubating-SNA
> > > PSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT.pom
> > > [INFO] Installing
> > >
> D:\workspace\incubator-drill\distribution\target\apache-drill-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> > > to C:\Users\ravisankars\.m2\r
> > >
> > >
> epository\org\apache\drill\distribution\1.0.0-m2-incubating-SNAPSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> > > [INFO]
> > >
> ------------------------------------------------------------------------
> > > [INFO] Reactor Summary:
> > > [INFO]
> > > [INFO] Apache Drill Root POM ............................. SUCCESS
> [2.047s]
> > > [INFO] Drill Protocol .................................... SUCCESS
> [3.090s]
> > > [INFO] Common (Logical Plan, Base expressions) ........... SUCCESS
> [2.753s]
> > > [INFO] contrib/Parent Pom ................................ SUCCESS
> [0.165s]
> > > [INFO] contrib/hbase-storage-engine ...................... SUCCESS
> [0.247s]
> > > [INFO] exec/Parent Pom ................................... SUCCESS
> [0.179s]
> > > [INFO] exec/Reference Interpreter ........................ SUCCESS
> [1.677s]
> > > [INFO] exec/Netty Little Endian Buffers .................. SUCCESS
> [0.383s]
> > > [INFO] exec/Java Execution Engine ........................ SUCCESS
> > > [12.188s]
> > > [INFO] SQL Parser ........................................ SUCCESS
> [1.703s]
> > > [INFO] contrib/sqlline ................................... SUCCESS
> [1.897s]
> > > [INFO] Packaging and Distribution Assembly ............... SUCCESS
> > > [56.521s]
> > > [INFO]
> > >
> ------------------------------------------------------------------------
> > > [INFO] BUILD SUCCESS
> > > [INFO]
> > >
> ------------------------------------------------------------------------
> > > [INFO] Total time: 1:23.110s
> > > [INFO] Finished at: Sat Dec 28 15:29:55 IST 2013
> > > [INFO] Final Memory: 52M/168M
> > > [INFO]
> > >
> ------------------------------------------------------------------------
> > > D:\workspace\incubator-drill>
> > >
> > > Regards,
> > > Ravi
> > >
> > > ------------------------------
> > > From: rasivasu@live.in
> > > To: drill-dev@incubator.apache.org
> > > Subject: RE: [OS: Windows] Could not find or load main class
> > > sqlline.SqlLine
> > > Date: Sat, 28 Dec 2013 14:38:13 +0530
> > >
> > > Hello Team,
> > >
> > > I resolved the below error by reducing the heap memory.  I am not
> getting
> > > the following error?
> > >
> > > D:\workspace\incubator-drill>java -Xmx1G
> > > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> -cp
> > > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > > sqlline.SqlLine --verbose=true "$@"
> > > Error: Could not find or load main class sqlline.SqlLine
> > >
> > >
> > > I am not able to identify what I am doing wrong.  As per the unix
> script,
> > > an sqlline jar is supposed to be available in incubator-drill folder
> but
> > > mine doesn't have it.  Did I not checkout the folder correctly or did I
> > > miss a compilation step?
> > >
> > > Regards,
> > > Ravi
> > >
> > > > From: rasivasu@live.in
> > > > To: drill-dev@incubator.apache.org
> > > > Subject: [OS: Windows] Error initializing VM due to lack of space for
> > > object heap
> > > > Date: Thu, 26 Dec 2013 18:54:40 +0530
> > > >
> > > >
> > > >
> > > >
> > > > Hello team,
> > > >
> > > > I am getting the following error when trying to execute sqlline.
> This is
> > > my first attempt. Would you please let me know how much memory is
> required
> > > by the VM for Object Heap. Would you please let me know if you have
> found
> > > the optimium JVM settings for Apache Drill?
> > > >
> > > > D:\workspace\incubator-drill>java -Xmx2G
> > > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml
> -cp
> > > contrib\sqlline\target\dependency sqlline.Sq
> > > > lLine --verbose=true "$@"
> > > > Error occurred during initialization of VM
> > > > Could not reserve enough space for object heap
> > > > Error: Could not create the Java Virtual Machine.
> > > > Error: A fatal exception has occurred. Program will exit.
> > > >
> > > > Regards,
> > > > Ravi
> > > >
> > > > From: rasivasu@live.in
> > > > To: drill-dev@incubator.apache.org
> > > > Subject: Challenge in creating of sqlline.bat due to windows
> limitation
> > > > Date: Sun, 22 Dec 2013 22:17:41 +0530
> > > >
> > > >
> > > >
> > > >
> > > > Hello all,
> > > > Please find the WIP windows batch program. This works only for 86
> file
> > > names in .classpath (or 8138 characters long). But the working version
> of
> > > .classpath has 131 filenames spanning 12,958 characters. The article
> > > http://support.microsoft.com/kb/830473 seem to support the variable
> > > length limitation - official limt is 8191.
> > > > One possible option is to collate all the required jar files into a
> > > common folder so that we can work around the variable value limitation
> in
> > > Windows platform. Are there any other suggestion from the team?
> Regards,Ravi
> > > >
> > > > > Date: Sun, 22 Dec 2013 11:07:50 +0000
> > > > > From: jira@apache.org
> > > > > To: drill-dev@incubator.apache.org
> > > > > Subject: [jira] [Created] (DRILL-338) sqlline script not available
> for
> > > windows OS
> > > > >
> > > > > Ravisankar Sivasubramaniam created DRILL-338:
> > > > > ------------------------------------------------
> > > > >
> > > > > Summary: sqlline script not available for windows OS
> > > > > Key: DRILL-338
> > > > > URL: https://issues.apache.org/jira/browse/DRILL-338
> > > > > Project: Apache Drill
> > > > > Issue Type: Bug
> > > > > Affects Versions: 1.0.0-milestone-1, 1.0.0-milestone-2,
> > > 1.0.0-milestone-3, 1.0.0-milestone-4, 1.0.0
> > > > > Environment: Windows OS
> > > > > Reporter: Ravisankar Sivasubramaniam
> > > > >
> > > > >
> > > > > Currently sqlline may be executed only on *nix platforms. Windows
> > > version of sqlline need to be created for developers using windows pcs.
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > This message was sent by Atlassian JIRA
> > > > > (v6.1.5#6160)
> > > >
> > > >
> > >
>
>

RE: [OS: Windows] Could not find or load main class sqlline.SqlLine

Posted by Ravisankar Sivasubramaniam <ra...@live.in>.
Marco,
Thank you very much.  That worked for me as well.  Now I am getting the following error.  What is the deal on sqlline.properties?
D:\workspace\incubator-drill>java -Xmx1G -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -jar
contrib\sqlline\target\drill-sqlline-1.0.0-
m2-incubating-SNAPSHOT.jar --verbose=true -u jdbc:drill:schema=parquet-local -n admin -p admin
Loaded singnal handler: SunSignalHandler C:\Users\ravisankars\sqlline\sqlline.properties (The system cannot find the file specified)
issuing: !connect jdbc:drill:schema=parquet-local admin admin scan complete in 5ms scan complete in 7ms No known driver to handle "jdbc:drill:schema=parquet-local" sqlline version ??? by Marc Prud'hommeaux
sqlline>
Best Regards,Ravi> Date: Sat, 28 Dec 2013 12:04:42 -0800
> Subject: Re: [OS: Windows] Could not find or load main class sqlline.SqlLine
> From: sm4rc0@gmail.com
> To: drill-dev@incubator.apache.org
> 
> Ravi,
> 
> Can you try changing the classpathPrefix in your maven pom file from
> <classpathPrefix>c:\Users\ravisankars\.m2\repository</classpathPrefix>
> to
> <classpathPrefix>/c:/Users/ravisankars/.m2/repository/</classpathPrefix>
> Or better:
> <classpathPrefix>/${settings.localRepository}/</classpathPrefix>
> 
> Notice the '/' at the beginning and at the end of the path. This works for
> me.
> 
> Best Regards,
> Marco
> 
> On Sat, Dec 28, 2013 at 10:00 AM, Ravisankar Sivasubramaniam <
> rasivasu@live.in> wrote:
> 
> >  Progress so far
> > -------------------
> > Looks like apache-rat-plugin didn't like me logging the content to log.txt
> > under incubator-drill.  Once I instructed mvn to log the output outside
> > the folder, the build got completed without any error.
> >
> > Open issue
> > ---------------
> > The sqlline.bat looks as follows:
> >
> >
> >
> >
> > *if not exist contrib\sqlline\target (    cd contrib\sqlline    mvn
> > package    cd ..\..)*
> >
> > *java -Xmx1G
> > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -jar
> > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > --verbose=true*
> > The updated pom.xml has been attached.  In the pom.xml I have included
> > maven-jar-plugin to add Manifest entries for Classpath and Main-Class.  I
> > have attached the MANIFEST.MF as well for reference.  As per jar spec<http://docs.oracle.com/javase/7/docs/technotes/guides/jar/jar.html#Notes_on_Manifest_and_Signature_Files>,
> > maven breaks the classpath at 72 and the continuation starts with a single
> > space.  I have checked that all the files specified in the classpath is
> > available in my local repository.
> >
> > The problem I am facing is that java is not able to find sqlline.SqlLine
> > class from the classpath.
> >
> >
> > *D:\workspace\incubator-drill>java -Xmx1G
> > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -jar
> > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > --verbose=trueError: Could not find or load main class sqlline.SqlLine*
> >
> > For now I have ignored passing the command line parameter.  But that is
> > not related to the problem at hand.
> >
> > This <http://stackoverflow.com/questions/6780678/run-class-in-jar-file>SO answer suggests the command be included in the back quotes, if the
> > command is not executed from the directory containing the jar, but Windows
> > doesn't support command substitution.
> >
> > And this<http://stackoverflow.com/questions/16626883/maven-error-trying-to-adding-arbitrary-classpath-in-manifest-mf>SO answer suggests to downgrade the maven version to 2.3.2 and change
> > classpath configuration so that each jar path starts in a new line.  Since
> > I am not manually adding the classpath, I am not sure how to implement this
> > suggestion.
> >
> > Would you please let me know your thoughts on this?  I appreciate any help
> > on this.
> >
> > Regards,
> > Ravi
> >
> > ------------------------------
> > From: rasivasu@live.in
> > To: drill-dev@incubator.apache.org
> > Subject: RE: [OS: Windows] Could not find or load main class
> > sqlline.SqlLine
> > Date: Sat, 28 Dec 2013 15:33:44 +0530
> >
> >
> > Some more information to troubleshoot the problem.  If I execute "mvn
> > clean install -DskipTests", I am getting the output given at the bottom of
> > this email, which indicates success.  On the other hand if I try to log the
> > output into file, I am getting an error.  I am attaching the log file for
> > reference.
> >
> > [INFO]
> > [INFO] --- maven-install-plugin:2.3.1:install (default-install) @
> > distribution ---
> > [INFO] Installing D:\workspace\incubator-drill\distribution\pom.xml to
> > C:\Users\ravisankars\.m2\repository\org\apache\drill\distribution\1.0.0-m2-incubating-SNA
> > PSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT.pom
> > [INFO] Installing
> > D:\workspace\incubator-drill\distribution\target\apache-drill-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> > to C:\Users\ravisankars\.m2\r
> >
> > epository\org\apache\drill\distribution\1.0.0-m2-incubating-SNAPSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> > [INFO]
> > ------------------------------------------------------------------------
> > [INFO] Reactor Summary:
> > [INFO]
> > [INFO] Apache Drill Root POM ............................. SUCCESS [2.047s]
> > [INFO] Drill Protocol .................................... SUCCESS [3.090s]
> > [INFO] Common (Logical Plan, Base expressions) ........... SUCCESS [2.753s]
> > [INFO] contrib/Parent Pom ................................ SUCCESS [0.165s]
> > [INFO] contrib/hbase-storage-engine ...................... SUCCESS [0.247s]
> > [INFO] exec/Parent Pom ................................... SUCCESS [0.179s]
> > [INFO] exec/Reference Interpreter ........................ SUCCESS [1.677s]
> > [INFO] exec/Netty Little Endian Buffers .................. SUCCESS [0.383s]
> > [INFO] exec/Java Execution Engine ........................ SUCCESS
> > [12.188s]
> > [INFO] SQL Parser ........................................ SUCCESS [1.703s]
> > [INFO] contrib/sqlline ................................... SUCCESS [1.897s]
> > [INFO] Packaging and Distribution Assembly ............... SUCCESS
> > [56.521s]
> > [INFO]
> > ------------------------------------------------------------------------
> > [INFO] BUILD SUCCESS
> > [INFO]
> > ------------------------------------------------------------------------
> > [INFO] Total time: 1:23.110s
> > [INFO] Finished at: Sat Dec 28 15:29:55 IST 2013
> > [INFO] Final Memory: 52M/168M
> > [INFO]
> > ------------------------------------------------------------------------
> > D:\workspace\incubator-drill>
> >
> > Regards,
> > Ravi
> >
> > ------------------------------
> > From: rasivasu@live.in
> > To: drill-dev@incubator.apache.org
> > Subject: RE: [OS: Windows] Could not find or load main class
> > sqlline.SqlLine
> > Date: Sat, 28 Dec 2013 14:38:13 +0530
> >
> > Hello Team,
> >
> > I resolved the below error by reducing the heap memory.  I am not getting
> > the following error?
> >
> > D:\workspace\incubator-drill>java -Xmx1G
> > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -cp
> > contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> > sqlline.SqlLine --verbose=true "$@"
> > Error: Could not find or load main class sqlline.SqlLine
> >
> >
> > I am not able to identify what I am doing wrong.  As per the unix script,
> > an sqlline jar is supposed to be available in incubator-drill folder but
> > mine doesn't have it.  Did I not checkout the folder correctly or did I
> > miss a compilation step?
> >
> > Regards,
> > Ravi
> >
> > > From: rasivasu@live.in
> > > To: drill-dev@incubator.apache.org
> > > Subject: [OS: Windows] Error initializing VM due to lack of space for
> > object heap
> > > Date: Thu, 26 Dec 2013 18:54:40 +0530
> > >
> > >
> > >
> > >
> > > Hello team,
> > >
> > > I am getting the following error when trying to execute sqlline. This is
> > my first attempt. Would you please let me know how much memory is required
> > by the VM for Object Heap. Would you please let me know if you have found
> > the optimium JVM settings for Apache Drill?
> > >
> > > D:\workspace\incubator-drill>java -Xmx2G
> > -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -cp
> > contrib\sqlline\target\dependency sqlline.Sq
> > > lLine --verbose=true "$@"
> > > Error occurred during initialization of VM
> > > Could not reserve enough space for object heap
> > > Error: Could not create the Java Virtual Machine.
> > > Error: A fatal exception has occurred. Program will exit.
> > >
> > > Regards,
> > > Ravi
> > >
> > > From: rasivasu@live.in
> > > To: drill-dev@incubator.apache.org
> > > Subject: Challenge in creating of sqlline.bat due to windows limitation
> > > Date: Sun, 22 Dec 2013 22:17:41 +0530
> > >
> > >
> > >
> > >
> > > Hello all,
> > > Please find the WIP windows batch program. This works only for 86 file
> > names in .classpath (or 8138 characters long). But the working version of
> > .classpath has 131 filenames spanning 12,958 characters. The article
> > http://support.microsoft.com/kb/830473 seem to support the variable
> > length limitation - official limt is 8191.
> > > One possible option is to collate all the required jar files into a
> > common folder so that we can work around the variable value limitation in
> > Windows platform. Are there any other suggestion from the team? Regards,Ravi
> > >
> > > > Date: Sun, 22 Dec 2013 11:07:50 +0000
> > > > From: jira@apache.org
> > > > To: drill-dev@incubator.apache.org
> > > > Subject: [jira] [Created] (DRILL-338) sqlline script not available for
> > windows OS
> > > >
> > > > Ravisankar Sivasubramaniam created DRILL-338:
> > > > ------------------------------------------------
> > > >
> > > > Summary: sqlline script not available for windows OS
> > > > Key: DRILL-338
> > > > URL: https://issues.apache.org/jira/browse/DRILL-338
> > > > Project: Apache Drill
> > > > Issue Type: Bug
> > > > Affects Versions: 1.0.0-milestone-1, 1.0.0-milestone-2,
> > 1.0.0-milestone-3, 1.0.0-milestone-4, 1.0.0
> > > > Environment: Windows OS
> > > > Reporter: Ravisankar Sivasubramaniam
> > > >
> > > >
> > > > Currently sqlline may be executed only on *nix platforms. Windows
> > version of sqlline need to be created for developers using windows pcs.
> > > >
> > > >
> > > >
> > > > --
> > > > This message was sent by Atlassian JIRA
> > > > (v6.1.5#6160)
> > >
> > >
> >
 		 	   		  

Re: [OS: Windows] Could not find or load main class sqlline.SqlLine

Posted by Marco Sandrini <sm...@gmail.com>.
Ravi,

Can you try changing the classpathPrefix in your maven pom file from
<classpathPrefix>c:\Users\ravisankars\.m2\repository</classpathPrefix>
to
<classpathPrefix>/c:/Users/ravisankars/.m2/repository/</classpathPrefix>
Or better:
<classpathPrefix>/${settings.localRepository}/</classpathPrefix>

Notice the '/' at the beginning and at the end of the path. This works for
me.

Best Regards,
Marco

On Sat, Dec 28, 2013 at 10:00 AM, Ravisankar Sivasubramaniam <
rasivasu@live.in> wrote:

>  Progress so far
> -------------------
> Looks like apache-rat-plugin didn't like me logging the content to log.txt
> under incubator-drill.  Once I instructed mvn to log the output outside
> the folder, the build got completed without any error.
>
> Open issue
> ---------------
> The sqlline.bat looks as follows:
>
>
>
>
> *if not exist contrib\sqlline\target (    cd contrib\sqlline    mvn
> package    cd ..\..)*
>
> *java -Xmx1G
> -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -jar
> contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> --verbose=true*
> The updated pom.xml has been attached.  In the pom.xml I have included
> maven-jar-plugin to add Manifest entries for Classpath and Main-Class.  I
> have attached the MANIFEST.MF as well for reference.  As per jar spec<http://docs.oracle.com/javase/7/docs/technotes/guides/jar/jar.html#Notes_on_Manifest_and_Signature_Files>,
> maven breaks the classpath at 72 and the continuation starts with a single
> space.  I have checked that all the files specified in the classpath is
> available in my local repository.
>
> The problem I am facing is that java is not able to find sqlline.SqlLine
> class from the classpath.
>
>
> *D:\workspace\incubator-drill>java -Xmx1G
> -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -jar
> contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> --verbose=trueError: Could not find or load main class sqlline.SqlLine*
>
> For now I have ignored passing the command line parameter.  But that is
> not related to the problem at hand.
>
> This <http://stackoverflow.com/questions/6780678/run-class-in-jar-file>SO answer suggests the command be included in the back quotes, if the
> command is not executed from the directory containing the jar, but Windows
> doesn't support command substitution.
>
> And this<http://stackoverflow.com/questions/16626883/maven-error-trying-to-adding-arbitrary-classpath-in-manifest-mf>SO answer suggests to downgrade the maven version to 2.3.2 and change
> classpath configuration so that each jar path starts in a new line.  Since
> I am not manually adding the classpath, I am not sure how to implement this
> suggestion.
>
> Would you please let me know your thoughts on this?  I appreciate any help
> on this.
>
> Regards,
> Ravi
>
> ------------------------------
> From: rasivasu@live.in
> To: drill-dev@incubator.apache.org
> Subject: RE: [OS: Windows] Could not find or load main class
> sqlline.SqlLine
> Date: Sat, 28 Dec 2013 15:33:44 +0530
>
>
> Some more information to troubleshoot the problem.  If I execute "mvn
> clean install -DskipTests", I am getting the output given at the bottom of
> this email, which indicates success.  On the other hand if I try to log the
> output into file, I am getting an error.  I am attaching the log file for
> reference.
>
> [INFO]
> [INFO] --- maven-install-plugin:2.3.1:install (default-install) @
> distribution ---
> [INFO] Installing D:\workspace\incubator-drill\distribution\pom.xml to
> C:\Users\ravisankars\.m2\repository\org\apache\drill\distribution\1.0.0-m2-incubating-SNA
> PSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT.pom
> [INFO] Installing
> D:\workspace\incubator-drill\distribution\target\apache-drill-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> to C:\Users\ravisankars\.m2\r
>
> epository\org\apache\drill\distribution\1.0.0-m2-incubating-SNAPSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Reactor Summary:
> [INFO]
> [INFO] Apache Drill Root POM ............................. SUCCESS [2.047s]
> [INFO] Drill Protocol .................................... SUCCESS [3.090s]
> [INFO] Common (Logical Plan, Base expressions) ........... SUCCESS [2.753s]
> [INFO] contrib/Parent Pom ................................ SUCCESS [0.165s]
> [INFO] contrib/hbase-storage-engine ...................... SUCCESS [0.247s]
> [INFO] exec/Parent Pom ................................... SUCCESS [0.179s]
> [INFO] exec/Reference Interpreter ........................ SUCCESS [1.677s]
> [INFO] exec/Netty Little Endian Buffers .................. SUCCESS [0.383s]
> [INFO] exec/Java Execution Engine ........................ SUCCESS
> [12.188s]
> [INFO] SQL Parser ........................................ SUCCESS [1.703s]
> [INFO] contrib/sqlline ................................... SUCCESS [1.897s]
> [INFO] Packaging and Distribution Assembly ............... SUCCESS
> [56.521s]
> [INFO]
> ------------------------------------------------------------------------
> [INFO] BUILD SUCCESS
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Total time: 1:23.110s
> [INFO] Finished at: Sat Dec 28 15:29:55 IST 2013
> [INFO] Final Memory: 52M/168M
> [INFO]
> ------------------------------------------------------------------------
> D:\workspace\incubator-drill>
>
> Regards,
> Ravi
>
> ------------------------------
> From: rasivasu@live.in
> To: drill-dev@incubator.apache.org
> Subject: RE: [OS: Windows] Could not find or load main class
> sqlline.SqlLine
> Date: Sat, 28 Dec 2013 14:38:13 +0530
>
> Hello Team,
>
> I resolved the below error by reducing the heap memory.  I am not getting
> the following error?
>
> D:\workspace\incubator-drill>java -Xmx1G
> -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -cp
> contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar
> sqlline.SqlLine --verbose=true "$@"
> Error: Could not find or load main class sqlline.SqlLine
>
>
> I am not able to identify what I am doing wrong.  As per the unix script,
> an sqlline jar is supposed to be available in incubator-drill folder but
> mine doesn't have it.  Did I not checkout the folder correctly or did I
> miss a compilation step?
>
> Regards,
> Ravi
>
> > From: rasivasu@live.in
> > To: drill-dev@incubator.apache.org
> > Subject: [OS: Windows] Error initializing VM due to lack of space for
> object heap
> > Date: Thu, 26 Dec 2013 18:54:40 +0530
> >
> >
> >
> >
> > Hello team,
> >
> > I am getting the following error when trying to execute sqlline. This is
> my first attempt. Would you please let me know how much memory is required
> by the VM for Object Heap. Would you please let me know if you have found
> the optimium JVM settings for Apache Drill?
> >
> > D:\workspace\incubator-drill>java -Xmx2G
> -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -cp
> contrib\sqlline\target\dependency sqlline.Sq
> > lLine --verbose=true "$@"
> > Error occurred during initialization of VM
> > Could not reserve enough space for object heap
> > Error: Could not create the Java Virtual Machine.
> > Error: A fatal exception has occurred. Program will exit.
> >
> > Regards,
> > Ravi
> >
> > From: rasivasu@live.in
> > To: drill-dev@incubator.apache.org
> > Subject: Challenge in creating of sqlline.bat due to windows limitation
> > Date: Sun, 22 Dec 2013 22:17:41 +0530
> >
> >
> >
> >
> > Hello all,
> > Please find the WIP windows batch program. This works only for 86 file
> names in .classpath (or 8138 characters long). But the working version of
> .classpath has 131 filenames spanning 12,958 characters. The article
> http://support.microsoft.com/kb/830473 seem to support the variable
> length limitation - official limt is 8191.
> > One possible option is to collate all the required jar files into a
> common folder so that we can work around the variable value limitation in
> Windows platform. Are there any other suggestion from the team? Regards,Ravi
> >
> > > Date: Sun, 22 Dec 2013 11:07:50 +0000
> > > From: jira@apache.org
> > > To: drill-dev@incubator.apache.org
> > > Subject: [jira] [Created] (DRILL-338) sqlline script not available for
> windows OS
> > >
> > > Ravisankar Sivasubramaniam created DRILL-338:
> > > ------------------------------------------------
> > >
> > > Summary: sqlline script not available for windows OS
> > > Key: DRILL-338
> > > URL: https://issues.apache.org/jira/browse/DRILL-338
> > > Project: Apache Drill
> > > Issue Type: Bug
> > > Affects Versions: 1.0.0-milestone-1, 1.0.0-milestone-2,
> 1.0.0-milestone-3, 1.0.0-milestone-4, 1.0.0
> > > Environment: Windows OS
> > > Reporter: Ravisankar Sivasubramaniam
> > >
> > >
> > > Currently sqlline may be executed only on *nix platforms. Windows
> version of sqlline need to be created for developers using windows pcs.
> > >
> > >
> > >
> > > --
> > > This message was sent by Atlassian JIRA
> > > (v6.1.5#6160)
> >
> >
>

RE: [OS: Windows] Could not find or load main class sqlline.SqlLine

Posted by Ravisankar Sivasubramaniam <ra...@live.in>.


Progress so far-------------------Looks like apache-rat-plugin didn't like me logging the content to log.txt under incubator-drill.  Once I instructed mvn to log the output outside the folder, the build got completed without any error.
 
Open issue---------------The sqlline.bat looks as follows:if not exist contrib\sqlline\target (
    cd contrib\sqlline
    mvn package
    cd ..\..
)java -Xmx1G -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -jar contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar --verbose=true
The updated pom.xml has been attached.  In the pom.xml I have included maven-jar-plugin to add Manifest entries for Classpath and Main-Class.  I have attached the MANIFEST.MF as well for reference.  As per jar spec, maven breaks the classpath at 72 and the continuation starts with a single space.  I have checked that all the files specified in the classpath is available in my local repository.   The problem I am facing is that java is not able to find sqlline.SqlLine class from the classpath.   D:\workspace\incubator-drill>java -Xmx1G -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -jar contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar --verbose=true
Error: Could not find or load main class sqlline.SqlLine For now I have ignored passing the command line parameter.  But that is not related to the problem at hand.   This SO answer suggests the command be included in the back quotes, if the command is not executed from the directory containing the jar, but Windows doesn't support command substitution.   And this SO answer suggests to downgrade the maven version to 2.3.2 and change classpath configuration so that each jar path starts in a new line.  Since I am not manually adding the classpath, I am not sure how to implement this suggestion. Would you please let me know your thoughts on this?  I appreciate any help on this.
Regards,
Ravi
 
From: rasivasu@live.in
To: drill-dev@incubator.apache.org
Subject: RE: [OS: Windows] Could not find or load main class sqlline.SqlLine
Date: Sat, 28 Dec 2013 15:33:44 +0530




Some more information to troubleshoot the problem.  If I execute "mvn clean install -DskipTests", I am getting the output given at the bottom of this email, which indicates success.  On the other hand if I try to log the output into file, I am getting an error.  I am attaching the log file for reference.
 
[INFO]
[INFO] --- maven-install-plugin:2.3.1:install (default-install) @ distribution ---
[INFO] Installing D:\workspace\incubator-drill\distribution\pom.xml to C:\Users\ravisankars\.m2\repository\org\apache\drill\distribution\1.0.0-m2-incubating-SNA
PSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT.pom
[INFO] Installing D:\workspace\incubator-drill\distribution\target\apache-drill-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz to C:\Users\ravisankars\.m2\r
epository\org\apache\drill\distribution\1.0.0-m2-incubating-SNAPSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Apache Drill Root POM ............................. SUCCESS [2.047s]
[INFO] Drill Protocol .................................... SUCCESS [3.090s]
[INFO] Common (Logical Plan, Base expressions) ........... SUCCESS [2.753s]
[INFO] contrib/Parent Pom ................................ SUCCESS [0.165s]
[INFO] contrib/hbase-storage-engine ...................... SUCCESS [0.247s]
[INFO] exec/Parent Pom ................................... SUCCESS [0.179s]
[INFO] exec/Reference Interpreter ........................ SUCCESS [1.677s]
[INFO] exec/Netty Little Endian Buffers .................. SUCCESS [0.383s]
[INFO] exec/Java Execution Engine ........................ SUCCESS [12.188s]
[INFO] SQL Parser ........................................ SUCCESS [1.703s]
[INFO] contrib/sqlline ................................... SUCCESS [1.897s]
[INFO] Packaging and Distribution Assembly ............... SUCCESS [56.521s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1:23.110s
[INFO] Finished at: Sat Dec 28 15:29:55 IST 2013
[INFO] Final Memory: 52M/168M
[INFO] ------------------------------------------------------------------------
D:\workspace\incubator-drill>
 
Regards,
Ravi
 
From: rasivasu@live.in
To: drill-dev@incubator.apache.org
Subject: RE: [OS: Windows] Could not find or load main class sqlline.SqlLine
Date: Sat, 28 Dec 2013 14:38:13 +0530




Hello Team,
 
I resolved the below error by reducing the heap memory.  I am not getting the following error?
 
D:\workspace\incubator-drill>java -Xmx1G -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -cp contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar sqlline.SqlLine --verbose=true "$@"
Error: Could not find or load main class sqlline.SqlLine

 
I am not able to identify what I am doing wrong.  As per the unix script, an sqlline jar is supposed to be available in incubator-drill folder but mine doesn't have it.  Did I not checkout the folder correctly or did I miss a compilation step?
 
Regards,
Ravi
 
> From: rasivasu@live.in
> To: drill-dev@incubator.apache.org
> Subject: [OS: Windows] Error initializing VM due to lack of space for object heap
> Date: Thu, 26 Dec 2013 18:54:40 +0530
> 
> 
> 
> 
> Hello team,
>  
> I am getting the following error when trying to execute sqlline.  This is my first attempt.  Would you please let me know how much memory is required by the VM for Object Heap.  Would you please let me know if you have found the optimium JVM settings for Apache Drill?
>  
> D:\workspace\incubator-drill>java -Xmx2G -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -cp contrib\sqlline\target\dependency sqlline.Sq
> lLine --verbose=true "$@"
> Error occurred during initialization of VM
> Could not reserve enough space for object heap
> Error: Could not create the Java Virtual Machine.
> Error: A fatal exception has occurred. Program will exit.
>  
> Regards,
> Ravi
>  
> From: rasivasu@live.in
> To: drill-dev@incubator.apache.org
> Subject: Challenge in creating of sqlline.bat due to windows limitation
> Date: Sun, 22 Dec 2013 22:17:41 +0530
> 
> 
> 
> 
> Hello all,
> Please find the WIP windows batch program.  This works only for 86 file names in .classpath (or 8138 characters long).  But the working version of .classpath has 131 filenames spanning 12,958 characters. The article http://support.microsoft.com/kb/830473 seem to support the variable length limitation - official limt is 8191.
> One possible option is to collate all the required jar files into a common folder so that we can work around the variable value limitation in Windows platform.  Are there any other suggestion from the team? Regards,Ravi
> 
> > Date: Sun, 22 Dec 2013 11:07:50 +0000
> > From: jira@apache.org
> > To: drill-dev@incubator.apache.org
> > Subject: [jira] [Created] (DRILL-338) sqlline script not available for windows OS
> > 
> > Ravisankar Sivasubramaniam created DRILL-338:
> > ------------------------------------------------
> > 
> >              Summary: sqlline script not available for windows OS
> >                  Key: DRILL-338
> >                  URL: https://issues.apache.org/jira/browse/DRILL-338
> >              Project: Apache Drill
> >           Issue Type: Bug
> >     Affects Versions: 1.0.0-milestone-1, 1.0.0-milestone-2, 1.0.0-milestone-3, 1.0.0-milestone-4, 1.0.0
> >          Environment: Windows OS
> >             Reporter: Ravisankar Sivasubramaniam
> > 
> > 
> > Currently sqlline may be executed only on *nix platforms.  Windows version of sqlline need to be created for developers using windows pcs.
> > 
> > 
> > 
> > --
> > This message was sent by Atlassian JIRA
> > (v6.1.5#6160)
>  		 	   		  
>  		 	   		  
 		 	   		   		 	   		  
 		 	   		  

RE: [OS: Windows] Could not find or load main class sqlline.SqlLine

Posted by Ravisankar Sivasubramaniam <ra...@live.in>.
Some more information to troubleshoot the problem.  If I execute "mvn clean install -DskipTests", I am getting the output given at the bottom of this email, which indicates success.  On the other hand if I try to log the output into file, I am getting an error.  I am attaching the log file for reference.
 
[INFO]
[INFO] --- maven-install-plugin:2.3.1:install (default-install) @ distribution ---
[INFO] Installing D:\workspace\incubator-drill\distribution\pom.xml to C:\Users\ravisankars\.m2\repository\org\apache\drill\distribution\1.0.0-m2-incubating-SNA
PSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT.pom
[INFO] Installing D:\workspace\incubator-drill\distribution\target\apache-drill-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz to C:\Users\ravisankars\.m2\r
epository\org\apache\drill\distribution\1.0.0-m2-incubating-SNAPSHOT\distribution-1.0.0-m2-incubating-SNAPSHOT-binary-release.tar.gz
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Apache Drill Root POM ............................. SUCCESS [2.047s]
[INFO] Drill Protocol .................................... SUCCESS [3.090s]
[INFO] Common (Logical Plan, Base expressions) ........... SUCCESS [2.753s]
[INFO] contrib/Parent Pom ................................ SUCCESS [0.165s]
[INFO] contrib/hbase-storage-engine ...................... SUCCESS [0.247s]
[INFO] exec/Parent Pom ................................... SUCCESS [0.179s]
[INFO] exec/Reference Interpreter ........................ SUCCESS [1.677s]
[INFO] exec/Netty Little Endian Buffers .................. SUCCESS [0.383s]
[INFO] exec/Java Execution Engine ........................ SUCCESS [12.188s]
[INFO] SQL Parser ........................................ SUCCESS [1.703s]
[INFO] contrib/sqlline ................................... SUCCESS [1.897s]
[INFO] Packaging and Distribution Assembly ............... SUCCESS [56.521s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1:23.110s
[INFO] Finished at: Sat Dec 28 15:29:55 IST 2013
[INFO] Final Memory: 52M/168M
[INFO] ------------------------------------------------------------------------
D:\workspace\incubator-drill>
 
Regards,
Ravi
 
From: rasivasu@live.in
To: drill-dev@incubator.apache.org
Subject: RE: [OS: Windows] Could not find or load main class sqlline.SqlLine
Date: Sat, 28 Dec 2013 14:38:13 +0530




Hello Team,
 
I resolved the below error by reducing the heap memory.  I am not getting the following error?
 
D:\workspace\incubator-drill>java -Xmx1G -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -cp contrib\sqlline\target\drill-sqlline-1.0.0-m2-incubating-SNAPSHOT.jar sqlline.SqlLine --verbose=true "$@"
Error: Could not find or load main class sqlline.SqlLine

 
I am not able to identify what I am doing wrong.  As per the unix script, an sqlline jar is supposed to be available in incubator-drill folder but mine doesn't have it.  Did I not checkout the folder correctly or did I miss a compilation step?
 
Regards,
Ravi
 
> From: rasivasu@live.in
> To: drill-dev@incubator.apache.org
> Subject: [OS: Windows] Error initializing VM due to lack of space for object heap
> Date: Thu, 26 Dec 2013 18:54:40 +0530
> 
> 
> 
> 
> Hello team,
>  
> I am getting the following error when trying to execute sqlline.  This is my first attempt.  Would you please let me know how much memory is required by the VM for Object Heap.  Would you please let me know if you have found the optimium JVM settings for Apache Drill?
>  
> D:\workspace\incubator-drill>java -Xmx2G -Dlogback.configurationFile=.\sqlparser\src\test\resources\logback.xml -cp contrib\sqlline\target\dependency sqlline.Sq
> lLine --verbose=true "$@"
> Error occurred during initialization of VM
> Could not reserve enough space for object heap
> Error: Could not create the Java Virtual Machine.
> Error: A fatal exception has occurred. Program will exit.
>  
> Regards,
> Ravi
>  
> From: rasivasu@live.in
> To: drill-dev@incubator.apache.org
> Subject: Challenge in creating of sqlline.bat due to windows limitation
> Date: Sun, 22 Dec 2013 22:17:41 +0530
> 
> 
> 
> 
> Hello all,
> Please find the WIP windows batch program.  This works only for 86 file names in .classpath (or 8138 characters long).  But the working version of .classpath has 131 filenames spanning 12,958 characters. The article http://support.microsoft.com/kb/830473 seem to support the variable length limitation - official limt is 8191.
> One possible option is to collate all the required jar files into a common folder so that we can work around the variable value limitation in Windows platform.  Are there any other suggestion from the team? Regards,Ravi
> 
> > Date: Sun, 22 Dec 2013 11:07:50 +0000
> > From: jira@apache.org
> > To: drill-dev@incubator.apache.org
> > Subject: [jira] [Created] (DRILL-338) sqlline script not available for windows OS
> > 
> > Ravisankar Sivasubramaniam created DRILL-338:
> > ------------------------------------------------
> > 
> >              Summary: sqlline script not available for windows OS
> >                  Key: DRILL-338
> >                  URL: https://issues.apache.org/jira/browse/DRILL-338
> >              Project: Apache Drill
> >           Issue Type: Bug
> >     Affects Versions: 1.0.0-milestone-1, 1.0.0-milestone-2, 1.0.0-milestone-3, 1.0.0-milestone-4, 1.0.0
> >          Environment: Windows OS
> >             Reporter: Ravisankar Sivasubramaniam
> > 
> > 
> > Currently sqlline may be executed only on *nix platforms.  Windows version of sqlline need to be created for developers using windows pcs.
> > 
> > 
> > 
> > --
> > This message was sent by Atlassian JIRA
> > (v6.1.5#6160)
>  		 	   		  
>