This content has been marked as final. Show 5 replies
What version are you using, and where are you getting FileInputStream from?
When I look at the API for XmlManager, I see:
Based on the API docs I'd say you're probably using a method call you're not supposed to be using, which is why it's probably failing. This is an observation made strictly from looking at documentation, though, and not source code.
Hope it helps,
Berkeley DB 2.5.16 (the latest).
I am creating the FileInputStream against a file path as shown in my example. This is the same file path that succeeds if createLocalFileInputStream() is used instead. The createInputStream() accepts any valid InputStream.
The API docs list the createInputStream( InputStream is ) method here: http://download.oracle.com/docs/cd/E17276_01/html/java/com/sleepycat/dbxml/XmlManager.html#createInputStream(java.io.InputStream) . I don't see any restriction on its use. It's description is identical to the other create* methods.
Ah - I should have asked which language - I had assumed C++. It looks like some kind of issue in the java layer implementation.
Edited by: Lucas Vogel on Jun 21, 2011 2:02 PM
Could a developer please look into this issue? Being unable to add InputStreams to berkeley db is something of an impediment to its adoption at my organization. A host of interfaces require InputStream support.
If the InputStreams issue only occurs with big document, I guess there are some resources exceeds JVM resource limitations on your environment.
Since big documents are stored as on-disk file normally, using createLocalFileInputStream just make sense enough. If you do need InputStreams and not sure if it's caused by JVM limitations, please send reproducing steps to me (firstname.lastname@example.org) for discussions. Thanks.
Oracle Berkeley DB XML