Page 1 of 1

Cannot add resource to berkeley dbxml container

Posted: Tue Oct 13, 2009 5:51 pm
by PaulHermans
Configuration
- Oxygen 11
- dbxml-2.5.13
- Mac OS X Snow Leopard

I'm able to:
- connect to a dbxml database
- create a container

But I'm not able to add a resource. If I select a xml file to load to the DB, nothing happens.

I can load a XML file from the dbxml shell and this file is shown in Oxygen then.

When I open this file, change it and save it back, I'll get

Code: Select all


[ class ro.sync.exml.editor.L.D ]  -  java.lang.IllegalArgumentException: Invalid argument: txn_begin interface requires an environment configured for the transaction subsystem
java.lang.IllegalArgumentException: Invalid argument: txn_begin interface requires an environment configured for the transaction subsystem
at com.sleepycat.db.internal.db_javaJNI.DbEnv_txn_begin(Native Method)
at com.sleepycat.db.internal.DbEnv.txn_begin(DbEnv.java:538)
at com.sleepycat.db.TransactionConfig.beginTransaction(TransactionConfig.java:355)
at com.sleepycat.db.Environment.beginTransaction(Environment.java:1153)
at com.sleepycat.dbxml.XmlManager.createTransaction(XmlManager.java:266)
at com.sleepycat.dbxml.XmlManager.createTransaction(XmlManager.java:277)
at ro.sync.db.nxd.berkeley.BerkeleySession$_B.close(Unknown Source)
at sun.nio.cs.StreamEncoder.implClose(StreamEncoder.java:301)
at sun.nio.cs.StreamEncoder.close(StreamEncoder.java:130)
at java.io.OutputStreamWriter.close(OutputStreamWriter.java:216)
at java.io.FilterWriter.close(FilterWriter.java:87)
at java.io.BufferedWriter.close(BufferedWriter.java:248)
at ro.sync.exml.editor.QA.A(Unknown Source)
at ro.sync.exml.editor.QA.F(Unknown Source)
at ro.sync.exml.editor.CB.Ў(Unknown Source)
at ro.sync.exml.editor.L.D.ۊ(Unknown Source)
at ro.sync.exml.editor.L.D.K(Unknown Source)
at ro.sync.exml.editor.L.D$1.actionPerformed(Unknown Source)
at ro.sync.ui.application.A.P$_A$1.ᄤ(Unknown Source)
at ro.sync.ui.application.O.run(Unknown Source)

Re: Cannot add resource to berkeley dbxml container

Posted: Wed Oct 14, 2009 3:51 pm
by sorin_ristache
Hello,
PaulHermans wrote:Configuration
- Oxygen 11
- dbxml-2.5.13
- Mac OS X Snow Leopard

I'm able to:
- connect to a dbxml database
- create a container

But I'm not able to add a resource. If I select a xml file to load to the DB, nothing happens.
I tried with the same configuration and I can create containers and add files to the containers in the BDB XML database without problems. Did you use the db.jar and dbxml.jar files from BDB XML 2.5.13 for creating the Berkeley data source in Oxygen?
PaulHermans wrote:When I open this file, change it and save it back, I'll get

Code: Select all


[ class ro.sync.exml.editor.L.D ]  -  java.lang.IllegalArgumentException: Invalid argument: txn_begin interface requires an environment configured for the transaction subsystem
java.lang.IllegalArgumentException: Invalid argument: txn_begin interface requires an environment configured for the transaction subsystem
at com.sleepycat.db.internal.db_javaJNI.DbEnv_txn_begin(Native Method)
at com.sleepycat.db.internal.DbEnv.txn_begin(DbEnv.java:538)[/quote]

I can open a file from the Database Explorer view, edit it and save it without errors. Please check that you use the jar files from BDB XML 2.5.13 when creating the BDB data source in Oxygen.


Regards,
Sorin

Re: Cannot add resource to berkeley dbxml container

Posted: Wed Oct 14, 2009 11:14 pm
by PaulHermans
Sorin,
Please check that you use the jar files from BDB XML 2.5.13 when creating the BDB data source in Oxygen.
I checked and it seems OK to me.
Image

What else can I check or log?

Re: Cannot add resource to berkeley dbxml container

Posted: Thu Oct 15, 2009 11:09 am
by sorin_ristache
Did you add the install/lib folder of DBD XML 2.5.13 to the DYLD_LIBRARY_PATH variable before starting Oxygen?


Regards,
Sorin

Re: Cannot add resource to berkeley dbxml container

Posted: Thu Oct 15, 2009 8:18 pm
by PaulHermans
Sorin,

I think this is the case.

env gives
TERM_PROGRAM=Apple_Terminal
TERM=xterm-color
SHELL=/bin/bash
TMPDIR=/var/folders/Wh/WhrhdNpzFgqX0Ak9MZs+9k+++TI/-Tmp-/
Apple_PubSub_Socket_Render=/tmp/launch-SCenBo/Render
TERM_PROGRAM_VERSION=272
USER=paul
COMMAND_MODE=unix2003
SSH_AUTH_SOCK=/tmp/launch-tYhBLs/Listeners
__CF_USER_TEXT_ENCODING=0x1F5:0:0
PATH=/usr/local/bin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Applications/dbxml-2.5.13/install/bin:/Applications/dbxml-2.5.13/install/lib:/usr/local/graphviz-devel/bin:/usr/local/git/bin:/Applications/openanzo-3.1.0
PWD=/Users/paul
SHLVL=1
HOME=/Users/paul
DYLD_LIBRARY_PATH=:/Applications/dbxml-2.5.13/install/lib
LOGNAME=paul
LC_CTYPE=UTF-8
DISPLAY=/tmp/launch-vvMDHB/:0
_=/usr/bin/env
But still the same error message.

Re: Cannot add resource to berkeley dbxml container

Posted: Thu Oct 15, 2009 9:16 pm
by PaulHermans
Also added to the ~/.MacOSX/environment.plist file.
But still the same error.


Paul

Re: Cannot add resource to berkeley dbxml container

Posted: Fri Oct 16, 2009 11:29 am
by sorin_ristache
PaulHermans wrote:

Code: Select all


[ class ro.sync.exml.editor.L.D ]  -  java.lang.IllegalArgumentException: Invalid argument: txn_begin interface requires an environment configured for the transaction subsystem
java.lang.IllegalArgumentException: Invalid argument: txn_begin interface requires an environment configured for the transaction subsystem
at com.sleepycat.db.internal.db_javaJNI.DbEnv_txn_begin(Native Method)
at com.sleepycat.db.internal.DbEnv.txn_begin(DbEnv.java:538)
I am sorry, I cannot find more details about this error. I tried also the Berkeley website. The error is in JNI native library of BDB XML. Maybe the Berkeley support knows better why their JNI native library report that exception.


Regards,
Sorin

Re: Cannot add resource to berkeley dbxml container

Posted: Fri Oct 16, 2009 8:21 pm
by PaulHermans
I'll do that.

Keep you current on what I find out.


Paul

Re: Cannot add resource to berkeley dbxml container

Posted: Tue Oct 20, 2009 1:31 pm
by PaulHermans
The problem was that initially the dbxml shell wasn't invoked with the -t option which allows transactions.
Since Oxygen works in transactional mode this conflicted with the original db setup.

Everything up and running now.

Re: Cannot add resource to berkeley dbxml container

Posted: Tue Oct 20, 2009 1:42 pm
by sorin_ristache
Hello Paul,

That was the problem. I did not select the option Join existing environment in the Oxygen data source for Berkeley DB which means Oxygen always converted any environment created by dbxml executable to transactional one. You obtained the error because you created the environment with dbxml executable in non-transactional mode and you always selected the option Join existing environment in the Oxygen data source.


Thank you for letting us know,
Sorin