harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aleksey Ignatenko (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-2842) EUT pass regression in classloader
Date Fri, 22 Dec 2006 08:56:22 GMT
    [ http://issues.apache.org/jira/browse/HARMONY-2842?page=comments#action_12460413 ] 
Aleksey Ignatenko commented on HARMONY-2842:

The problem is in the following:
New ReportFailedClass functionality is incorrect for some cases.
It relies on that if class is reported as failed then not exception is tobe raised.
But real world is different:
When verifier reports verification error - it tries to report class as failed and calls ReportFailedClass,
but verifier could call vf_resolve_class ant therefore loadclass. It could lead to exception
to be raised. So when verifier calls ReportFailedClass it is possible that exception is already
raised and we'll have assertion failed.

So, I generally like the ideas of H-2083, but VM components are to be tuned for the new realities
of classloader. 

> EUT pass regression in classloader
> ----------------------------------
>                 Key: HARMONY-2842
>                 URL: http://issues.apache.org/jira/browse/HARMONY-2842
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Aleksey Ignatenko
> [EUT][drlvm][classloader][regression].
> After commit [r486456] Applied HARMONY-2083 [drlvm] "Synchronization problem in class
..."  drlvm crahses on assertion in classloader code running EUT (eclipse unit tests):
> >	harmonyvm.dll!_assert(const char * expr=0x0077ec68, const char * filename=0x0077ec20,
unsigned int lineno=362)  Line 295	C
>  	harmonyvm.dll!ClassLoader::ReportFailedClass(Class * klass=0x0d8af248, const char *
exnclass=0x011a7eb8, std::basic_stringstream<char,std::char_traits<char>,std::allocator<char>
> & exnmsg={...})  Line 362 + 0x20	C++
>  	harmonyvm.dll!Class::verify_constraints(const Global_Env * env=0x011737e0)  Line 128
+ 0x7a	C++
>  	harmonyvm.dll!class_initialize_from_jni(Class * clss=0x0d8af248)  Line 204 + 0xe	C++
>  	harmonyvm.dll!Java_java_lang_VMClassRegistry_initializeClass(JNIEnv_External * jenv=0x0d734fa0,
_jobject * unused=0x1635db94, _jobject * clazz=0x1635db98)  Line 455 + 0x9	C++

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


View raw message