Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsWhite Papers
Discussion GroupsFirst AidDatabasesJavaBeansGUIJava 3DVirtual MachineCORBASecurityToolsGeneral
Java DirectoryOpen Source ProjectsSample Book ChaptersUser GroupsWeb Resources
Related Topics
Databases.NETMore Topics ...

Java Forum / General / August 2007

Tip: Looking for answers? Try searching our database.

How to get more info on an IO exception

Thread view: 
alejandrina - 27 Aug 2007 19:36 GMT
Hi all,

We have a process that occassionally throws an I/O Exception when
trying to lock a Linux file for writing.

java.io.IOException: Input/output error
       at sun.nio.ch.FileChannelImpl.lock0(Native Method)
       at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:
882)
       at java.nio.channels.FileChannel.tryLock(FileChannel.java:962)
       at
com.pdx.science.utils.SyncFileWriter.write(SyncFileWriter.java:58)
       at
com.pdx.science.pm.learning.PMResultRecorder.record(PMResultRecorder.java:
49)
       at
com.pdx.science.pm.learning.SVMModelSelector.processValueSet(SVMModelSelector.java:
279)
       at
com.pdx.science.pm.learning.SVMModelSelector.process(SVMModelSelector.java:
178)
       at
com.pdx.science.pm.learning.SVMModelSelector.run(SVMModelSelector.java:
134)
       at
com.pdx.science.pm.learning.SVMModelSelector.main(SVMModelSelector.java:
589)

We'd love to know what is actually happening (network error, NFS
error...) Is there any more information that can be obtained from the
I/O Exception? How does one get it?

Thanks,

Alejandrina
Martin Gregorie - 27 Aug 2007 20:53 GMT
> We'd love to know what is actually happening (network error, NFS
> error...) Is there any more information that can be obtained from the
> I/O Exception? How does one get it?

As the error is in native code I'd guess that the OS might tell you more
 that filters up through Exceptions. Have you looked at the system
logs, /var/log/messages in particular?

Signature

martin@   | Martin Gregorie
gregorie. | Essex, UK
org       |

alejandrina - 28 Aug 2007 15:00 GMT
On Aug 27, 3:53 pm, Martin Gregorie <mar...@see.sig.for.address>
wrote:

> > We'd love to know what is actually happening (network error, NFS
> > error...) Is there any more information that can be obtained from the
[quoted text clipped - 8 lines]
> gregorie. | Essex, UK
> org       |

Nothing there that we can see. I wanted to see if there was a
mechanism to "unwrap" the exception to get more info, but I guess
there is no such thing.
Roedy Green - 29 Aug 2007 03:44 GMT
>We'd love to know what is actually happening (network error, NFS
>error...) Is there any more information that can be obtained from the
>I/O Exception? How does one get it?

I suppose you could discover the precise class of the IOExceptions you
are getting by dumping e.getClass in your catch block. , then add a
catch clause for that particular class ahead of the general
IOException catch,, then you have access to any additional fields or
methods it has.
Signature

Roedy Green Canadian Mind Products
The Java Glossary
http://mindprod.com

Andreas Leitgeb - 29 Aug 2007 10:58 GMT
>>We'd love to know what is actually happening (network error, NFS
>>error...) Is there any more information that can be obtained from the
[quoted text clipped - 4 lines]
> IOException catch,, then you have access to any additional fields or
> methods it has.

In case this doesn't work out (that is: the getClass() also returns
just IOException), then maybe further information is just an
ioExc.getCause() away :-)
Knute Johnson - 29 Aug 2007 04:38 GMT
> Hi all,
>
[quoted text clipped - 31 lines]
>
> Alejandrina

Did getCause() have any info?

Signature

Knute Johnson
email s/nospam/knute/

alejandrina - 29 Aug 2007 20:24 GMT
On Aug 28, 11:38 pm, Knute Johnson <nos...@rabbitbrush.frazmtn.com>
wrote:
> > Hi all,
>
[quoted text clipped - 38 lines]
> Knute Johnson
> email s/nospam/knute/

I did a test with a manufactured IOEception. getCause() returned the
exception message. And of course now that we have a catch for
IOException, the app is not failing, so I don't know what a real
IOException yields...
Knute Johnson - 29 Aug 2007 22:42 GMT
>> Did getCause() have any info?
>>
> I did a test with a manufactured IOEception. getCause() returned the
> exception message. And of course now that we have a catch for
> IOException, the app is not failing, so I don't know what a real
> IOException yields...

Sometimes it is just magic.  I've got a program in the field that has
been running 24/7 for the last year.  Then all of a sudden it starts
having problems.  I make about six changes, requiring me to stay up to
all hours because they can't have it down in the daytime, and then it
stops just as mysteriously as it started.

And if it is running on Windows...

Signature

Knute Johnson
email s/nospam/knute/

alejandrina - 30 Aug 2007 02:51 GMT
On Aug 29, 5:42 pm, Knute Johnson <nos...@rabbitbrush.frazmtn.com>
wrote:
> >> Did getCause() have any info?
>
[quoted text clipped - 15 lines]
> Knute Johnson
> email s/nospam/knute/

Yes, it's not quite software "engineering", eh?


Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.