You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Geir Magnusson Jr (JIRA)" <ji...@apache.org> on 2006/10/25 00:21:18 UTC

[jira] Assigned: (HARMONY-1877) [drlvm][jitrino] Jitrino crashes when creating connections to the Data Base

     [ http://issues.apache.org/jira/browse/HARMONY-1877?page=all ]

Geir Magnusson Jr reassigned HARMONY-1877:
------------------------------------------

    Assignee: Geir Magnusson Jr

> [drlvm][jitrino] Jitrino crashes when creating connections to the Data Base
> ---------------------------------------------------------------------------
>
>                 Key: HARMONY-1877
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1877
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Igor V. Stolyarov
>         Assigned To: Geir Magnusson Jr
>         Attachments: incorrect-assumption-of-stvar-after-non-returning-JSRs-fixed.txt
>
>
> Jitrino crashes when creating connections to the Data Base.
> Test to reproduce:
> import java.sql.*;
> import java.io.*;
> import java.util.*;
> public class JDBCTest{
>     public static void main(String argv[]){
>         int i = 0;
>         try{
>             Driver d = (Driver)Class.forName("com.mysql.jdbc.Driver").newInstance();
>             Properties p = new Properties();
>             p.setProperty("user", "user");
>             p.setProperty("password", "password");
>             final String sql_1 = "select field from table";
>             while(i++ < 40){
>                 Connection con = d.connect("jdbc:mysql://host/data_base", p);
>                 PreparedStatement s = con.prepareStatement(sql_1);
>                 ResultSet rs = s.executeQuery();
>             }
>             System.out.println("TEST PASSED");
>         
>         }catch(Exception e){
>             System.out.println("---- i = "+ i +"------");
>             e.printStackTrace();
>         }
>     }
> }
> In order to launch this test need to have JDBC driver. iIve launched with mysql-connector-java-3.1.13-bin.jar. This driver need to download from www.mysql.com.
> This test fail on Win and Linux platform
> Win Output:
> P:\>java -classpath mysql-connector-java-3.1.13-bin.jar;. JDBCTest
> An unhandled error (4) has occurred.
> HyGeneric_Signal_Number=00000004
> ExceptionCode=c0000005
> ExceptionAddress=0146D4CC
> ContextFlags=0001003f
> Handler1=00401010
> Handler2=11105CE0
> InaccessibleAddress=00000010
> EDI=03448014
> ESI=03447DE8
> EAX=00000000
> EBX=03447F90
> ECX=03447F90
> EDX=03415BC0
> EIP=0146D4CC
> ESP=0013D7C4
> EBP=00000000
> Module=c:\test\drlvm_patch_new\bin\default\jitrino.dll
> Module_base_address=01450000
> Offset_in_DLL=0001d4cc
> This application has requested the Runtime to terminate it in an unusual way.
> Please contact the application's support team for more information.
> ----------------------------------------------------------------------------------------------------------
> On the Linux platform this test need to launch with -Dvm.finalize=off, because there is else one GC bug.
> Linux output:
> FinalizerThread: finalizer thread have not been created
> SIGSEGV in VM code.
> Stack trace:
>         1: Jitrino::inlineJSR(Jitrino::IRManager*, Jitrino::Node*, Jitrino::DefUseBuilder&, Jitrino::StlMultiMap<Jitrino::Inst*, Jitrino::Inst*, std::less<Jitrino::Inst*>, Jitrino::StlMMAllocator<std::pair<Jitrino::Inst* const, Jitrino::Inst*> > >&) (??:-1)
>         2: Jitrino::inlineJSRs(Jitrino::IRManager*) (??:-1)
>         3: Jitrino::FlowGraph::doTranslatorCleanupPhase(Jitrino::IRManager&) (??:-1)
>         4: Jitrino::TranslatorSession::postTranslatorCleanup() (??:-1)
>         5: Jitrino::TranslatorSession::run() (??:-1)
>         6: Jitrino::runPipeline(Jitrino::CompilationContext*) (??:-1)
>         7: Jitrino::compileMethod(Jitrino::CompilationContext*) (??:-1)
>         8: Jitrino::Jitrino::CompileMethod(Jitrino::CompilationContext*) (??:-1)
>         9: JIT_compile_method_with_params (??:-1)
>         10: Dll_JIT::compile_method_with_params(void*, Method*, OpenMethodExecutionParams) (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/vmcore/include/dll_jit_intf.h:86)
>         11: compile_do_compilation_jit(Method*, JIT*) (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/vmcore/src/jit/compile.cpp:700)
>         12: vm_compile_method (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/vmcore/src/class_support/C_Interface.cpp:2539)
>         13: DrlEMImpl::methodProfileIsReady(MethodProfile*) (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/em/src/DrlEMImpl.cpp:716)
>         14: EBProfileCollector::syncModeJitCallback(MethodProfile*) (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/em/src/EBProfileCollector.cpp:192)
>         15: eb_profiler_sync_mode_callback(void*) (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/em/src/EBProfileCollector.cpp:92)
>         16: IP is 0x410DE03A <native code>
>         17: com/mysql/jdbc/MysqlIO.reuseAndReadPacket(Lcom/mysql/jdbc/Buffer;)Lcom/mysql/jdbc/Buffer; (MysqlIO.java:2376)
>         18: com/mysql/jdbc/MysqlIO.checkErrorPacket(I)Lcom/mysql/jdbc/Buffer; (MysqlIO.java:2909)
>         19: com/mysql/jdbc/MysqlIO.checkErrorPacket()Lcom/mysql/jdbc/Buffer; (MysqlIO.java:798)
>         20: com/mysql/jdbc/MysqlIO.nextRow([Lcom/mysql/jdbc/Field;IZI)[Ljava/lang/Object; (MysqlIO.java:1316)
>         21: com/mysql/jdbc/MysqlIO.readSingleRowSet(JIIZ[Lcom/mysql/jdbc/Field;)Lcom/mysql/jdbc/RowData; (MysqlIO.java:2301)
>         22: com/mysql/jdbc/MysqlIO.getResultSet(Lcom/mysql/jdbc/Statement;JIIIZLjava/lang/String;ZZ)Lcom/mysql/jdbc/ResultSet; (MysqlIO.java:423)
>         23: com/mysql/jdbc/MysqlIO.readResultsForQueryOrUpdate(Lcom/mysql/jdbc/Statement;IIIZLjava/lang/String;Lcom/mysql/jdbc/Buffer;ZJZ)Lcom/mysql/jdbc/ResultSet; (MysqlIO.java:1991)
>         24: com/mysql/jdbc/MysqlIO.readAllResults(Lcom/mysql/jdbc/Statement;IIIZLjava/lang/String;Lcom/mysql/jdbc/Buffer;ZJZ)Lcom/mysql/jdbc/ResultSet; (MysqlIO.java:1413)
>         25: com/mysql/jdbc/MysqlIO.sqlQueryDirect(Lcom/mysql/jdbc/Statement;Ljava/lang/String;Ljava/lang/String;Lcom/mysql/jdbc/Buffer;ILcom/mysql/jdbc/Connection;IIZLjava/lang/String;Z)Lcom/mysql/jdbc/ResultSet; (MysqlIO.java:1757)
>         26: com/mysql/jdbc/Connection.execSQL(Lcom/mysql/jdbc/Statement;Ljava/lang/String;ILcom/mysql/jdbc/Buffer;IIZZLjava/lang/String;ZBZ)Lcom/mysql/jdbc/ResultSet; (Connection.java:2998)
>         27: com/mysql/jdbc/Connection.execSQL(Lcom/mysql/jdbc/Statement;Ljava/lang/String;ILcom/mysql/jdbc/Buffer;IIZZLjava/lang/String;Z)Lcom/mysql/jdbc/ResultSet; (Connection.java:2927)
>         28: com/mysql/jdbc/Statement.executeQuery(Ljava/lang/String;)Ljava/sql/ResultSet; (Statement.java:956)
>         29: com/mysql/jdbc/Connection.loadServerVariables()V (Connection.java:4014)
>         30: com/mysql/jdbc/Connection.initializePropsFromServer(Ljava/util/Properties;)V (Connection.java:3746)
>         31: com/mysql/jdbc/Connection.createNewIO(Z)Lcom/mysql/jdbc/MysqlIO; (Connection.java:2581)
>         32: com/mysql/jdbc/Connection.<init>(Ljava/lang/String;ILjava/util/Properties;Ljava/lang/String;Ljava/lang/String;Lcom/mysql/jdbc/NonRegisteringDriver;)V (Connection.java:1485)
>         33: com/mysql/jdbc/NonRegisteringDriver.connect(Ljava/lang/String;Ljava/util/Properties;)Ljava/sql/Connection; (NonRegisteringDriver.java:266)
>         34: JDBCTest.main([Ljava/lang/String;)V (JDBCTest.java:15)
>         35: vm_invoke_native_array_stub (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/vmcore/src/util/ia32/base/invoke_native_stub_ia32.asm:41)
>         36: JIT_execute_method_default(void*, _jmethodID*, jvalue*, jvalue*) (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/vmcore/src/util/ia32/base/ini_iA32.cpp:200)
>         37: DrlEMImpl::executeMethod(_jmethodID*, jvalue*, jvalue*) (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/em/src/DrlEMImpl.cpp:490)
>         38: ExecuteMethod (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/em/src/em_intf.cpp:44)
>         39: vm_execute_java_method_array(_jmethodID*, jvalue*, jvalue*) (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/vmcore/src/jit/ini.cpp:63)
>         40: call_static_method_no_ref_result (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/vmcore/src/jni/jni_method.cpp:1073)
>         41: CallStaticVoidMethodA(JNIEnv_External*, _jobject*, _jmethodID*, jvalue*) (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/vmcore/src/jni/jni_method.cpp:1451)
>         42: CallStaticVoidMethodV(JNIEnv_External*, _jobject*, _jmethodID*, char*) (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/vmcore/src/jni/jni_method.cpp:1438)
>         43: CallStaticVoidMethod(JNIEnv_External*, _jobject*, _jmethodID*, ...) (/nfs/pb/home/ivstolya/SVN/drlvm/trunk/vm/vmcore/src/jni/jni_method.cpp:1428)
>         44: ?? (??:-1)
>         45: ?? (??:-1)
>         46: ?? (??:-1)
>         47: ?? (??:-1)
>         48: hysig_protect (??:-1)
>         49: ?? (??:-1)
>         50: __libc_start_main (??:-1)
>         51: ?? (??:-1)
> <end of stack trace>

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