harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ilya Berezhniuk (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-4493) [classlib][EUT] jdtcoremodel suite is blocked because ClasspathTests.testEncoding cannot remove unicode dir
Date Fri, 20 Jul 2007 17:19:11 GMT

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

Ilya Berezhniuk updated HARMONY-4493:
-------------------------------------

    Component/s:     (was: DRLVM)
                 Classlib
       Priority: Blocker  (was: Major)
    Description: 
Test org.eclipse.jdt.core.tests.model.ClasspathTests.testEncoding creates directory with unicode
name in its project directory. Then it removes project, it involves removing underlying files
and directories.

When executing on DRLVM, it cannot remove unicode directory and therefore the whole project,
and then tries 60 times with 1 second delay. So test goes 1 minute, and all remaining tests
in ClasspathTests suite also execute 1 minute.


Although debugging under Eclipse is now unstable on DRLVM/Linux (it often crashes with SIGSEGV
when using single stepping), I've got some results using breakpoints.

Looks like the problem is somewhere in enumerating subdirectories of project dir "P". Eclipse
uses org.eclipse.core.internal.localstore.UnifiedTree to enumerate subitems in project folder:
accept(IUnifiedTreeVisitor, int) calls addNodeChildrenToQueue to fill queue with subitems.
But when queue is filled, it contains incorrect path to unicode directory. Directory is named
"src\u3400", but queue item for this directory contains path from 6 to 8 chars and named as
"srcXXXXX", where XXXXX can be various characters including space.


  was:
Test org.eclipse.jdt.core.tests.model.ClasspathTests.testEncoding creates directory with unicode
name in its project directory. Then it removes project, it involves removing underlying files
and directories.

When executing on DRLVM, it cannot remove unicode directory and therefore the whole project,
and then tries 60 times with 1 second delay. So test goes 1 minute, and all remaining tests
in ClasspathTests suite also execute 1 minute.


Although debugging under Eclipse is now unstable on DRLVM/Linux (it often crashes with SIGSEGV
when using single stepping), I've got some results using breakpoints.

Looks like the problem is somewhere in enumerating subdirectories of project dir "P". Eclipse
uses org.eclipse.core.internal.localstore.UnifiedTree to enumerate subitems in project folder:
accept(IUnifiedTreeVisitor, int) calls addNodeChildrenToQueue to fill queue with subitems.
But when queue is filled, it contains incorrect path to unicode directory. Directory is named
"src\u3400", but queue item for this directory contains path from 6 to 8 chars and named as
"srcXXXXX", where XXXXX can be various characters including space.

I cannot determine a cause of this error certainly - so bug is now tagged as [drlvm]. I'll
try to go forward and investigate bug deeper.

    Environment:     (was: Linux/ia32)
        Summary: [classlib][EUT] jdtcoremodel suite is blocked because ClasspathTests.testEncoding
cannot remove unicode dir  (was: [drlvm][EUT] org.eclipse.jdt.core.tests.model.ClasspathTests.testEncoding
cannot remove unicode dir)

This bug involves jdtcoremodel suite failure by timeout, because all tests starting from org.eclipse.jdt.core.tests.model.ClasspathTests.testEncoding
are waiting for 1 minute trying to delete remaining unicode dir.

The cause of bug is the following: when deleting project files and subdirectories, File.list()
method is used. This method returns 6-char length unicode string instead of 4-char length,
thus file with such name does not exists and cannot be removed.

I've created standalone test to reproduce. It shows this bug on both Linux and Windows.


> [classlib][EUT] jdtcoremodel suite is blocked because ClasspathTests.testEncoding cannot
remove unicode dir
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4493
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4493
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Ilya Berezhniuk
>            Priority: Blocker
>
> Test org.eclipse.jdt.core.tests.model.ClasspathTests.testEncoding creates directory with
unicode name in its project directory. Then it removes project, it involves removing underlying
files and directories.
> When executing on DRLVM, it cannot remove unicode directory and therefore the whole project,
and then tries 60 times with 1 second delay. So test goes 1 minute, and all remaining tests
in ClasspathTests suite also execute 1 minute.
> Although debugging under Eclipse is now unstable on DRLVM/Linux (it often crashes with
SIGSEGV when using single stepping), I've got some results using breakpoints.
> Looks like the problem is somewhere in enumerating subdirectories of project dir "P".
Eclipse uses org.eclipse.core.internal.localstore.UnifiedTree to enumerate subitems in project
folder: accept(IUnifiedTreeVisitor, int) calls addNodeChildrenToQueue to fill queue with subitems.
But when queue is filled, it contains incorrect path to unicode directory. Directory is named
"src\u3400", but queue item for this directory contains path from 6 to 8 chars and named as
"srcXXXXX", where XXXXX can be various characters including space.

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


Mime
View raw message