You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Gregory Shimansky (JIRA)" <ji...@apache.org> on 2007/12/28 14:33:43 UTC

[jira] Closed: (HARMONY-4304) [buildtest][vts] Test vm/jvmti/events/MethodExit/MethodExit0101 has large log

     [ https://issues.apache.org/jira/browse/HARMONY-4304?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky closed HARMONY-4304.
--------------------------------------


No response, assuming ok.

> [buildtest][vts] Test vm/jvmti/events/MethodExit/MethodExit0101 has large log
> -----------------------------------------------------------------------------
>
>                 Key: HARMONY-4304
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4304
>             Project: Harmony
>          Issue Type: Bug
>          Components: build - test - ci
>            Reporter: Vera Petrashkova
>            Assignee: Gregory Shimansky
>         Attachments: MethodExit0101.patch
>
>
> Test vm/jvmti/events/MethodExit/MethodExit0101/MethodExit0101.xml
> verifies that MethodExit event is generated for the used method.
> But according to source code 
> (see 
> src/test/vm/jvmti/events/MethodExit/MethodExit010/MethodExit0101.cpp and 
> src/test/vm/jvmti/events/share/events.h) 
> this test checks information about all MethodExit events for all methods:
> ----------------------
> void JNICALL callbackMethodExit(prms_METHOD_EXIT)
> {
>     check_METHOD_EXIT;    <<<<<<<<<<<<<<<             should be removed
>     char* name = NULL;
>     char* signature = NULL;
>     char* generic = NULL;
>     jvmtiError result;
>     result = jvmti_env->GetMethodName(method, &name, &signature, &generic);
>     if (result != JVMTI_ERROR_NONE) return;
>     counter++;
>     if (strcmp(name, "special_method")) return;
>     fprintf(stderr, "\tnative: MethodExit (prms) jvmti_env is %p\n",jvmti_env);
>     fprintf(stderr, "\tnative: MethodExit (prms) jni_env   is %p\n", jni_env);
>     fprintf(stderr, "\tnative: MethodExit (prms) thread    is %p\n", thread);
>     fprintf(stderr, "\tnative: MethodExit (prms) method    is %p\n", method);
>     fflush(stderr);
>     fprintf(stderr, "\tnative: GetMethodName result = %d (must be zero) \n",result);
>     fprintf(stderr, "\tnative: method              is %p \n", method);
>     fprintf(stderr, "\tnative: name                is %s \n", name);
>     fprintf(stderr, "\tnative: signature           is %s \n", signature);
>     fprintf(stderr, "\tnative: generic             is %s \n", generic);
>     fflush(stderr);
>     params = true;
> }
> -----------------events.h-----------
> #define   check_METHOD_EXIT                                                \
> if (jvmti_env == NULL)                                                     \
>     fprintf(stderr,                                                        \
>             "\tcheck: MethodExit was called with jvmti_env = NULL\n");     \
> if (jni_env == NULL)                                                       \
>     fprintf(stderr,                                                        \
>             "\tcheck: MethodExit was called with jni_env = NULL\n");       \
> if (thread == NULL)                                                        \
>     fprintf(stderr,                                                        \
>             "\tcheck: MethodExit was called with thread = NULL\n");        \
> if (method == NULL)                                                        \
>     fprintf(stderr,                                                        \
>             "\tcheck: MethodExit was called with method = NULL\n");        \
> if (was_popped_by_exception == 0)                                          \
>     fprintf(stderr,                                                        \
>             "\tcheck: MethodExit was called with popped_by_exc = 0\n");
> ---------------------
> This test reports huge number of messages.
> The test passes but it is needed a lot of time for its execution on Harmony.
> As the result it fails with Timeout during QA cycle.
> If we remove check_METHOD_EXIT then this test finishes in 1 minute

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.