This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
Summary: | java.io.IOException: error reading | ||
---|---|---|---|
Product: | platform | Reporter: | Jan Lahoda <jlahoda> |
Component: | Filesystems | Assignee: | Petr Nejedly <pnejedly> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | jglick |
Priority: | P3 | ||
Version: | 6.x | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Exception Reporter: | 172679 |
Attachments: | stacktrace |
Description
Jan Lahoda
2010-09-21 10:03:01 UTC
Created attachment 102091 [details]
stacktrace
Yes, happened to me after I resumed from suspend and switched to the IDE. FWIW: to reproduce, it is enough to suspend the IDE using Ctrl-Z from parent shell and then resume it using fg. Thanks for such a nice test case. I have reproduced the "problem" in a small native testing application and the errno (which I had difficulty accessing through JNA) revealed that the read ended in EINTR. Quite expectable. The good news is that the system uses different signaling for event queue overflow and that if you re-issue the IO (which is what the OS expects you to do), you'll get all the missed events and not necessarily the queue overflow either. I'll try restarting the IO once (reset after each successful transfer) and only fail on double error. Or if I find a way to reach my thread's errno through JNA reliably, I can detect this condition correctly. AFAIK JNA supports access to errno, but I don't know much about it. The errno access is working OK when linked from the right thread (it is a native thread local, after all). Fixed: http://hg.netbeans.org/core-main/rev/685f9e2ba0cd |