2011-11-16 85 views
1

请问您能否解释下面的堆栈跟踪,我试着了解源代码,但是关于rename0()正在做什么的信息不够。需要关于java.io.UnixFileSystem.rename0的信息

"[STUCK] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'" RUNNABLE native 
java.io.UnixFileSystem.rename0(Native Method) 
java.io.UnixFileSystem.rename(UnixFileSystem.java:317) 
java.io.File.renameTo(File.java:1248) 
com.bea.wli.sb.transports.file.resource.FileResource.renameToUniqueFilePath(FileResource.java:766) 

提前感谢!

回答

1

看起来你(或你的机器上运行的东西)试图重命名文件或目录。主要的提示来在该行

java.io.File.renameTo(File.java:1248) 

不知道是被重命名哪些文件,或者有什么新的名字本来,这是很难确定究竟为什么这是不行的。

+0

的逻辑是处理一个文件,并写入到一个文件夹。它会在写入之前检查文件夹中是否存在文件。我100%确定当前正在处理的文件不存在于该文件夹中,但它仍然调用该函数,并且由于有大于1000个文件,处理线程就会陷入困境。这是unixfilesystem,我的问题是1,是不是因为在UNIX机器上的NFS无响应或2.因为有> 1000的文件其试图找到该文件存在,并卡住。此外,该文件夹已包含> 10,000个文件 – user414977

+1

跨NFS?那介绍你的CPU和磁盘之间的网络,而且是那么很多非POSIX的根本原因一样,甚至SVN无法使用NFS存储源代码控制库的行为。也许你应该在NFS /操作系统层进行调试以此为Java没有获得“知道”这是一个NFS挂载(操作系统隐藏了JVM的信息)。 –

+0

我只是想这些线程试图搜索一个文件是否存在可以导致NFS无响应的nfs上的过载? – user414977

相关问题