StringIndexOutOfBoundsException when importing SQL file
-------------------------------------------------------

                 Key: MSQL-50
                 URL: http://jira.codehaus.org/browse/MSQL-50
             Project: Maven 2.x SQL Plugin
          Issue Type: Bug
    Affects Versions: 1.3
         Environment: # mvn -version
Apache Maven 2.2.1 (r801777; 2009-08-06 21:16:01+0200)
Java version: 1.5.0_19
Java home: /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home
Default locale: en_US, platform encoding: MacRoman
OS name: "mac os x" version: "10.6.2" arch: "i386" Family: "unix"

mysql  Ver 14.12 Distrib 5.0.51b
            Reporter: Benoit Heinrich
            Priority: Critical
         Attachments: jasper-dev.sql

Hi,

I'm having a very bad StringIndexOutOfBoundsException when I try to import the 
attached file.
I don't know exactly which part is causing problem, but few of the inserts 
contains binary data in blob fields.
Maybe this is the problem?

The given dump is a jasperserver 3.7.0 DB dump that I need to import prior to 
running a suite of tests.

Here is the detailed configuration of the maven plugin from my pom file:
<pre>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>sql-maven-plugin</artifactId>
                    <version>1.3</version>
                    <dependencies>
                        <!-- specify the dependent jdbc driver -->
                        <dependency>
                            <groupId>mysql</groupId>
                            <artifactId>mysql-connector-java</artifactId>
                            <version>5.1.6</version>
                        </dependency>
                    </dependencies>
                    <!-- common configuration shared by all executions -->
                    <configuration>
                        <username>${xxx.persistence.username}</username>
                        <password>${xxx.persistence.password}</password>
                        <driver>${xxx.persistence.driver}</driver>
                        <url>${xxx.persistence.url}</url>
                        <keepFormat>true</keepFormat>
                        <autocommit>true</autocommit>
                            <srcFiles>
                                <srcFile>/tmp/jasper-dev.sql</srcFile>
                            </srcFiles>
                    </configuration>
                    <executions>
                        <execution>
                            <id>create-db-and-load-data</id>
                            <phase>process-test-resources</phase>
                            <goals>
                                <goal>execute</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
</pre>

Here is the log output from the maven command:
<pre>
[12:18:34]: [INFO] Executing file: /tmp/jasper-dev.sql
[12:18:34]: [INFO] 
------------------------------------------------------------------------
[12:18:34]: [ERROR] FATAL ERROR
[12:18:34]: [INFO] 
------------------------------------------------------------------------
[12:18:34]: [INFO] String index out of range: -1
[12:18:34]: [INFO] 
------------------------------------------------------------------------
[12:18:34]: [INFO] Trace
[12:18:34]: java.lang.StringIndexOutOfBoundsException: String index out of 
range: -1
[12:18:34]:     at java.lang.String.substring(String.java:1768)
[12:18:34]:     at 
com.mysql.jdbc.EscapeProcessor.processTimeToken(EscapeProcessor.java:353)
[12:18:34]:     at 
com.mysql.jdbc.EscapeProcessor.escapeSQL(EscapeProcessor.java:257)
[12:18:34]:     at 
com.mysql.jdbc.EscapeProcessor.escapeSQL(EscapeProcessor.java:150)
[12:18:34]:     at 
com.mysql.jdbc.EscapeProcessor.escapeSQL(EscapeProcessor.java:150)
[12:18:34]:     at 
com.mysql.jdbc.EscapeProcessor.escapeSQL(EscapeProcessor.java:150)
[12:18:34]:     at com.mysql.jdbc.StatementImpl.execute(StatementImpl.java:629)
[12:18:34]:     at 
org.codehaus.mojo.sql.SqlExecMojo.execSQL(SqlExecMojo.java:815)
[12:18:34]:     at 
org.codehaus.mojo.sql.SqlExecMojo.runStatements(SqlExecMojo.java:782)
[12:18:34]:     at 
org.codehaus.mojo.sql.SqlExecMojo.access$200(SqlExecMojo.java:53)
[12:18:34]:     at 
org.codehaus.mojo.sql.SqlExecMojo$Transaction.runTransaction(SqlExecMojo.java:992)
[12:18:34]:     at 
org.codehaus.mojo.sql.SqlExecMojo$Transaction.access$100(SqlExecMojo.java:939)
[12:18:34]:     at 
org.codehaus.mojo.sql.SqlExecMojo.execute(SqlExecMojo.java:463)
[12:18:34]:     at 
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:453)
[12:18:34]:     at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:559)
[12:18:34]:     at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:500)
[12:18:34]:     at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:479)
[12:18:34]:     at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:331)
[12:18:34]:     at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:292)
[12:18:34]:     at 
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
[12:18:34]:     at 
org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
[12:18:34]:     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
[12:18:34]:     at org.apache.maven.cli.MavenCli.main(MavenCli.java:301)
[12:18:34]:     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[12:18:34]:     at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[12:18:34]:     at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[12:18:34]:     at java.lang.reflect.Method.invoke(Method.java:585)
[12:18:34]:     at 
org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
[12:18:34]:     at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
[12:18:34]:     at 
org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
[12:18:34]:     at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
</pre>

Thanks in advance for the reply, and I hope I've done nothing wrong on my side.

Cheers,
/Benoit

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to