wieseljonas / java-libpst

Automatically exported from code.google.com/p/java-libpst
1 stars 1 forks source link

Can't get children for folder... on com.pff.PSTFolder.initEmailsTable() #31

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
 - I've just loaded a PST file (992 MB).

What is the expected output? What do you see instead?
 - I would expect the messages from an especific folder the be listed. Instead, I get an exception. Other folders work as expected.

What version of the product are you using? On what operating system?
 - I'm using the trunk: revision 71. Mac OS X 10.6.6. Java 1.6.0_22.

Please provide any additional information below.

I've enabled err.printStackTrace() on com.pff.PSTFolder.initEmailsTable() 
method.

PS: I'm a consultant of the 4Linux company and I'm maintaining the SearchPST 
project.

java.lang.ArrayIndexOutOfBoundsException: 783
    at com.pff.PSTObject.convertLittleEndianBytesToLong(PSTObject.java:469)
    at com.pff.PSTDescriptorItem.<init>(PSTDescriptorItem.java:21)
    at com.pff.PSTFile.getPSTDescriptorItems(PSTFile.java:730)
    at com.pff.PSTFile.getPSTDescriptorItems(PSTFile.java:704)
    at com.pff.PSTFolder.initEmailsTable(PSTFolder.java:122)
    at com.pff.PSTFolder.getChildDescriptorNodes(PSTFolder.java:174)
    at searchpst.PSTLuceneIndexer.indexFolder(PSTLuceneIndexer.java:226)
    at searchpst.PSTLuceneIndexer.indexFolder(PSTLuceneIndexer.java:228)
    at searchpst.PSTLuceneIndexer.run(PSTLuceneIndexer.java:83)
    at java.lang.Thread.run(Thread.java:680)
Can't get children for folder Topo de pastas particulares(32802) child count: 
9503 - java.lang.ArrayIndexOutOfBoundsException: 783

Original issue reported on code.google.com by eliasgo...@gmail.com on 9 Mar 2011 at 2:52

GoogleCodeExporter commented 9 years ago
"Topo de pastas particulares" means something like "Top of private folders".

Original comment by eliasgo...@gmail.com on 9 Mar 2011 at 3:18

GoogleCodeExporter commented 9 years ago
There is a current change in the SVN which attempts to correct some of the 
behaviour in the Descriptor items with embedded attachments, you are probably 
running into a side effect of this update, and it might be worth trying the 
last published version of the library.

Is there a way to get me the PST to check it out for you?

Original comment by rjohnson...@gmail.com on 31 Mar 2011 at 8:52

GoogleCodeExporter commented 9 years ago

Original comment by rjohnson...@gmail.com on 31 Mar 2011 at 9:03

GoogleCodeExporter commented 9 years ago
Same problem with one of my PST files and java-libpst.0.6.jar

com.pff.PSTException: Can't get children for folder [# Archives 2008](52802) 
child count: 6160 - java.lang.ArrayIndexOutOfBoundsException: 23
    at com.pff.PSTFolder.initEmailsTable(PSTFolder.java:161)
    at com.pff.PSTFolder.moveChildCursorTo(PSTFolder.java:266)
    at com.google.javaguipst.EmailTableModel.setFolder(EmailTableModel.java:109)
    at com.google.javaguipst.DesktopApplication1View$TreeSelectionListenerImpl.valueChanged(DesktopApplication1View.java:444)
    at javax.swing.JTree.fireValueChanged(JTree.java:2820)
    at javax.swing.JTree$TreeSelectionRedirector.valueChanged(JTree.java:3191)
    at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(DefaultTreeSelectionModel.java:629)
    at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(DefaultTreeSelectionModel.java:1078)
    at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(DefaultTreeSelectionModel.java:287)
    at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPath(DefaultTreeSelectionModel.java:170)
    at javax.swing.JTree.setSelectionPath(JTree.java:1598)
    at javax.swing.plaf.basic.BasicTreeUI.selectPathForEvent(BasicTreeUI.java:2311)
    at javax.swing.plaf.basic.BasicTreeUI$Handler.handleSelection(BasicTreeUI.java:3520)
    at javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressed(BasicTreeUI.java:3459)
    at java.awt.Component.processMouseEvent(Component.java:6286)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:6054)
    at java.awt.Container.processEvent(Container.java:2041)
    at java.awt.Component.dispatchEventImpl(Component.java:4652)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4235)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
    at java.awt.Container.dispatchEventImpl(Container.java:2085)
    at java.awt.Window.dispatchEventImpl(Window.java:2478)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
    at java.awt.EventQueue.access$000(EventQueue.java:85)
    at java.awt.EventQueue$1.run(EventQueue.java:603)
    at java.awt.EventQueue$1.run(EventQueue.java:601)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
    at java.awt.EventQueue$2.run(EventQueue.java:617)
    at java.awt.EventQueue$2.run(EventQueue.java:615)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 23
    at com.pff.PSTObject.convertLittleEndianBytesToLong(PSTObject.java:515)
    at com.pff.PSTDescriptorItem.<init>(PSTDescriptorItem.java:52)
    at com.pff.PSTFile.getPSTDescriptorItems(PSTFile.java:759)
    at com.pff.PSTFile.getPSTDescriptorItems(PSTFile.java:733)
    at com.pff.PSTFolder.initEmailsTable(PSTFolder.java:152)
    ... 44 more

Sorry but I can't give the file.

Original comment by franck.a...@gmail.com on 3 Apr 2011 at 11:58

GoogleCodeExporter commented 9 years ago
Exception trace: 
EDRM-Enron-PST-001.zip -> andrea_ring_000.pst

com.pff.PSTException: Can't get children for folder Deleted Items(33250) child 
count: 98 - com.pff.PSTException: Unable to seek past end of item! size = 
17280, seeking to:17281
    at com.pff.PSTFolder.initEmailsTable(PSTFolder.java:161)
    at com.pff.PSTFolder.getNextChild(PSTFolder.java:237)

Original comment by manish.b...@gmail.com on 5 Apr 2011 at 6:55

GoogleCodeExporter commented 9 years ago
Thanks Manish,

It seems that there may be two bugs here, will see if I can't replicate the 
seeking past end of item one with that PST.  I might have some time to check it 
out on Sunday.

Original comment by rjohnson...@gmail.com on 6 Apr 2011 at 8:53

GoogleCodeExporter commented 9 years ago
Hi, 
Were we able to decode this issue? 

Thanks,
Manish. 

Original comment by manish.b...@gmail.com on 17 Apr 2011 at 12:03

GoogleCodeExporter commented 9 years ago
Hi Manish,

The error with the deleted items children appears to be corrected when you run 
scanpst over it.  I think the number of emails in the folder descriptor is 
incorrect, so it's looking for emails that aren't there.

Original comment by rjohnson...@gmail.com on 17 Apr 2011 at 9:54

GoogleCodeExporter commented 9 years ago
Hi Manish,

This error is common when attempting to read the contents of corrupted child 
listing tables from folders.

There is some new code in SVN that trys to address this issue, please check it 
out and let me know how it goes.  If you have any probs, please open a new bug 
and let me know.

Thanks,

Richard

Original comment by rjohnson...@gmail.com on 4 Jun 2011 at 4:15