Man, that�s a bugger. What VM's have you tested? Does this happen on IBM's VM for instance?
I need a damn mp box for testing.... Only trouble is that I have expensive tastes: http://store.apple.com/1-800-MY-APPLE/WebObjects/AppleStore?family=PowerMac ;-) -Andy On 6/26/03 11:25 AM, "Avik Sengupta" <[EMAIL PROTECTED]> wrote: > Summary for those who came in late: Reading different files using > different HSSFWorkbook objects in different threads works fine on a > single processor box, but doesnt work on a multi processor box. > > I have the sinking feeling that we have hit some nice Java Memory Model > issue. While Java Memory Model does not guarantee that multithreaded > programs behave the same in single and multi-processor boxes, its > actually very rare to see these errors in practice (incorrect concurrent > access to a static variable, for example, will show up in a > multithreaded program even on a single processor box. ) So its something > much more subtle. > > The error is however quite consistent. I have tested on a dual proc > Xeon/Linux and a dual Sparc/Solaris. > > The only workaround for now is that only one thread at a time reads a > file into an HSSFWorkbook. > > Am continuing to look at it..tho am not very hopeful for an immediate > fix.. its a dog to debug! > > On Fri, 2003-06-13 at 22:11, Avik Sengupta wrote: >> [moving to poi dev] >> I have now confirmed this issue. A simple program reading different xls >> files in different threads using different instances of PoifsFileSystem >> and HSSFWorkbook fails. >> >> I am currently unable to say further why this is so, since a quick look >> at both POIFSFileSystem and HSSFWorkbook show no instances of static >> data. Will look into this further. >> >> Regards >> - >> Avik >> >> >> On Wed, 2003-05-14 at 14:41, Avik Sengupta wrote: >>> I do not believe there are static stuff which precludes reading many >>> files at a go, but i could be wrong. >>> >>> I would actually guess that one particular file of yours is throwing up >>> some pre-existing bug in poi. Have you checked that all the files you >>> want to open can be opened sequentially in poi? >>> >>> On Tue, 2003-05-13 at 22:38, [EMAIL PROTECTED] wrote: >>>> Hi Avik, >>>> >>>> Thanks a lot for the response. >>>> I am creating diff. HSSFWorkBook for diff. uploaded files via diff. >>>> threads. >>>> But for some reason one of the WorkBook constructor fails. >>>> >>>> Can you please let me know if we have any limit on reading the files >>>> concurrently >>>> or any other part of the code( static stuff ) that may be causing this >>>> issue. >>>> >>>> By the way, can I have your contact # or do you prefer to have my contact # >>>> and >>>> we can have a quick chat. >>>> >>>> Cheers >>>> Vilay >>>> >>>> >>>> -----Original Message----- >>>> From: Avik Sengupta [mailto:[EMAIL PROTECTED] >>>> Sent: Tuesday, May 13, 2003 5:53 AM >>>> To: POI Users List >>>> Subject: Re: Concurrency Issue >>>> >>>> >>>> you cannot use a single HSSFWorkbook object from more than one thread. >>>> you will need to synchronise access to that object. Of course, you can >>>> use different HSSFWorkbook objects in different threads concurrently. >>>> >>>> >>>> >>>> On Tue, 2003-05-13 at 02:00, [EMAIL PROTECTED] wrote: >>>>> Hi Guys, >>>>> >>>>> I am having problem reading more than one file Excel files concurrently. >>>>> Reading individual files seem to be fine. >>>>> >>>>> The exception I get is as follows: >>>>> >>>>> java.lang.reflect.InvocationTargetException: >>>>> java.lang.ArrayIndexOutOfBoundsException >>>>> at org.apache.poi.util.LittleEndian.getNumber(LittleEndian.java:557) >>>>> at org.apache.poi.util.LittleEndian.getInt(LittleEndian.java:177) >>>>> at >>>>> org.apache.poi.hssf.record.DimensionsRecord.fillFields(DimensionsRecord.ja >>>>> va:121) >>>>> at org.apache.poi.hssf.record.Record.fillFields(Record.java:143) >>>>> at org.apache.poi.hssf.record.Record.<init>(Record.java:105) >>>>> at >>>>> org.apache.poi.hssf.record.DimensionsRecord.<init>(DimensionsRecord.java:9 >>>>> 4) >>>>> at java.lang.reflect.Constructor.newInstance(Native Method) >>>>> at >>>>> org.apache.poi.hssf.record.RecordFactory.createRecord(RecordFactory.java:2 >>>>> 54) >>>>> at >>>>> org.apache.poi.hssf.record.RecordFactory.createRecords(RecordFactory.java: >>>>> 192) >>>>> at >>>>> org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:191) >>>>> at >>>>> org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:158) >>>>> >>>>> >>>>> >>>>> Your help is highly appreciated. >>>>> >>>>> Best Regards, >>>>> Vilay >>>>> >>>>> Visit our website at http://www.ubswarburg.com >>>>> >>>>> This message contains confidential information and is intended only >>>>> for the individual named. If you are not the named addressee you >>>>> should not disseminate, distribute or copy this e-mail. Please >>>>> notify the sender immediately by e-mail if you have received this >>>>> e-mail by mistake and delete this e-mail from your system. >>>>> >>>>> E-mail transmission cannot be guaranteed to be secure or error-free >>>>> as information could be intercepted, corrupted, lost, destroyed, >>>>> arrive late or incomplete, or contain viruses. The sender therefore >>>>> does not accept liability for any errors or omissions in the contents >>>>> of this message which arise as a result of e-mail transmission. If >>>>> verification is required please request a hard-copy version. This >>>>> message is provided for informational purposes and should not be >>>>> construed as a solicitation or offer to buy or sell any securities or >>>>> related financial instruments. >>>>> >>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>>> >>>> >>>> >>>> >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>> >>>> >>>> Visit our website at http://www.ubswarburg.com >>>> >>>> This message contains confidential information and is intended only >>>> for the individual named. If you are not the named addressee you >>>> should not disseminate, distribute or copy this e-mail. Please >>>> notify the sender immediately by e-mail if you have received this >>>> e-mail by mistake and delete this e-mail from your system. >>>> >>>> E-mail transmission cannot be guaranteed to be secure or error-free >>>> as information could be intercepted, corrupted, lost, destroyed, >>>> arrive late or incomplete, or contain viruses. The sender therefore >>>> does not accept liability for any errors or omissions in the contents >>>> of this message which arise as a result of e-mail transmission. If >>>> verification is required please request a hard-copy version. This >>>> message is provided for informational purposes and should not be >>>> construed as a solicitation or offer to buy or sell any securities or >>>> related financial instruments. >>>> >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>> >>> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > -- Andrew C. Oliver http://www.superlinksoftware.com/poi.jsp Custom enhancements and Commercial Implementation for Jakarta POI http://jakarta.apache.org/poi For Java and Excel, Got POI? --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
