Opened 13 years ago

Last modified 11 years ago

#99 new task

IntelliJ Idea

Reported by: rbri Owned by:
Priority: major Milestone: Next
Component: general Version: 1.6.0-b22 RC2
Severity: medium Keywords:
Cc: Yuri Dario

Description

Today i had some spare time so i try to run the version 10 of IntelliJ Idea with the latest beta build.

After 'migrating' the startup script the monster starts and ask for migration of settings from a last version. Because i had no old version i start without migration.

This produces an endless loop and a big log file.
The entries are always the same:

2011-04-22 20:59:45,040 [ 9740] INFO - ellij.vfs.persistent.FSRecords - Marking VFS as corrupted
2011-04-22 20:59:45,040 [ 9740] INFO - ellij.vfs.persistent.FSRecords - Filesystem storage is corrupted or does not exist. [Re]Building. Reason: Cannot create empty file: C:\HOME\DEFAULT\.IdeaIC10\system\caches\names.dat

Looks like a problem creating the directory with the dot in the path name. So i create the subdirectory ".IdeaIC10" and nothing more.
Restarting the monster works much better. Idea creates the files in the subdirectory of this.

So my guess is that there is a problem with creating directories with a dot in the name.

(Will try to find the place in the source but this needs some time.)

Attachments (2)

idea.sh (6.4 KB) - added by Yuri Dario 11 years ago.
startup.log (5.5 KB) - added by Yuri Dario 11 years ago.

Download all attachments as: .zip

Change History (17)

comment:1 Changed 13 years ago by rbri

Looks like the exception points to the wrong position. The code that throws the exceptions seems to work correct. Somewhere earlier the directory has to be created. The directory is already there, before the dialog pops up.
More later....

comment:2 Changed 13 years ago by rbri

OK think i found it

      File tmpFile;
      boolean tmpResult;

      tmpFile = new File("C:\\HOME\\DEFAULT\\IdeaIC10\\system\\caches");
      tmpResult = tmpFile.mkdirs();
      System.out.println("" + tmpResult + "  " + tmpFile.getAbsolutePath());

      tmpFile = new File("C:\\HOME\\DEFAULT\\.IdeaIC10\\system\\caches");
      tmpResult = tmpFile.mkdirs();
      System.out.println("" + tmpResult + "  " + tmpFile.getAbsolutePath());

File.mkdirs() did not succeed, if a dir with a dot in the name is part of the path.
In the above example the second one fails.

Last edited 13 years ago by rbri (previous) (diff)

comment:3 Changed 13 years ago by rbri

Milestone: GA
Version: 1.6.0-b22 RC2

comment:4 Changed 13 years ago by dmik

Confirmed. Thank you for the report!

comment:5 Changed 13 years ago by rbri

Any chance to offer a build (after fixing this). Maybe i can find something more ;-)

Thanks for the great work.

RBRi

comment:6 Changed 13 years ago by dmik

Milestone: GAEnhanced
Severity: highestmedium
Type: defecttask

It was a bug in Odin (path components starting with "." and ".." were removed from path when making it absolute), fixed in r 21631 there.

IntelliJ idea still doesn't seem to work though, complaining about some buffer mapping. Looks like it wants to use MMF in a way our JVM doesn't support. This may a limitation of the current implementation as well as a bug in Odin. Given that the sources of the Community Edition of IntelliJ Idea are available, it should be possible to track the problem down. Not for GA though as it will be quite time consuming as I expect.

If you are really interested to help with this, it would be great. The drop-in replacement of java.dll that contains the fix is here: ftp://ftp.dmik.org/tmp/rbri.zip (please report if it helps you with the path issue in the first place).

comment:7 Changed 13 years ago by rbri

Thanks dmik, the fix works as expected.
And yes, i'm interested in supporting your work. But as you already know, debugging this Java applications without Eclipse is a real pain. Spend already two hours to nail down the next exception without success. IDEA is (maybe) a great IDE but if you look at the source ....; finally is not really used in the file io classes, changing the log level makes no sense because the only log level used is info or greater there is no zip file of all sources to download and so on

Maybe i have to start my laptop and try to debug the monster via remote eclipse.
Will inform you if i can localize the next issue.

comment:8 Changed 13 years ago by rbri

maybe #98 also fixes the i saw with ideas welcome screen. All icons are visible but no text.

comment:9 Changed 13 years ago by rbri

Spend some more time on this but still was not able to create a testcase for it. And also #132 did not fix this.
Will try harder ;-)

comment:10 Changed 13 years ago by dmik

Milestone: EnhancedGA2

I will look if we can do anything here for the GA2.

comment:11 Changed 12 years ago by Silvan Scherrer

Milestone: GA2Next

Changed 11 years ago by Yuri Dario

Attachment: idea.sh added

Changed 11 years ago by Yuri Dario

Attachment: startup.log added

comment:12 Changed 11 years ago by Yuri Dario

I tried IntelliJ IDEA 12.0.4, and it works a lot better now.

There are still issues with file handling.

I'm attaching a modified startup shell script (for linux distribution) and startup console log.

comment:13 Changed 11 years ago by Yuri Dario

sorry, IntelliJ 12.1.4, build IC-129.713.

comment:14 Changed 11 years ago by Yuri Dario

Cc: Yuri Dario added

comment:15 Changed 11 years ago by Yuri Dario

T:\>java -version
openjdk version "1.6.0_27"
OpenJDK Runtime Environment (build 1.6.0_27-b01-GA5)
OpenJDK Client VM (build 20.0-b12, mixed mode)

Last edited 11 years ago by Yuri Dario (previous) (diff)
Note: See TracTickets for help on using tickets.