Writing to the IFS generates a 'Resource busy' error

Date: 3 July, 2007
Product/Release: LANSA Integrator
Abstract: "stack trace: java.io.FileNotFoundException: Resource busy" error received when writing to the IFS
Submitted By: LANSA Technical Support


stack trace: java.io.FileNotFoundException: Resource busy. /jsm/instance/trace/479650/CLIENT00000023/XML_CONTENT000003.XML
at java.lang.Throwable.<init>(Throwable.java:195)
at java.lang.Exception.<init>Exception.java:41)
at java.io.IOException.<init>(IOException.java:40)
at java.io.FileNotFoundException.<init>(FileNotFoundException.java:46)
Create exception message : Resource busy. /jsm/instance/trace/479650/CLIENT00000023/XML_CONTENT000003.XML


The problem can occur when LANSA Integrator tracing is enabled and is due to a 'lock' on a directory or file in the path specified. The FileOutputStream class is trying to create a file, but the underlying IFS API's cannot do it.

Note: Do not get confused by the FileNotFoundException in the Exception trail. This message is misleading.  

Possible reasons for a lock:

  1. There are potentially other programs using/holding folders/files in the same JSM directory.  Because of this lock the current process in Integrator is failing to get exclusive access to write to the desired path.  Programs known to have interfered with JSM processing are NETSERVER, MIMIX and other IFS/iSeries Monitoring programs.
  2. There is also bug in IBM's NetServer to do with not removing locks. 

    Use the following the command to see if you have this PTF applied?

    If not, download and apply this PTF.

Temporary Workaround:

To establish whether this error is caused by the combination of LANSA Integrator tracing enabled and either of the 2 reasons above. you can temporarily turn off the tracing.  If this error is a result of tracing attempting to write a trace file, then turning off Tracing will bypass the issue.