2011-11-16 3 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입니다. 유닉스 박스의 NFS가 응답하지 않거나 2. 파일이 1000 개 이상 존재하여 파일이 존재하고 멈추는 것을 발견했기 때문입니까? 또한 폴더에 이미> 10,000 개의 파일이 있습니다. – user414977

+1

NFS를 통과합니까? 이는 CPU와 디스크 사이에 네트워크를 가져 오며 SVN조차도 소스 코드 제어 저장소에 NFS 저장소를 사용할 수없는 비 POSIX와 유사한 동작의 근본 원인입니다. Java가 NFS 마운트 (운영 체제가 JVM에서 해당 정보를 숨김)라는 "알기"를 얻지 못해 NFS/운영 체제 계층에서 디버깅해야합니다. –

+0

나는 NFS가 응답하지 않을 수 있는지 여부를 파일을 검색하려고 이러한 스레드에 의해 nfs에 과부하 수 있다고 생각했다? – user414977

관련 문제