Re: transactions
Sunil Goyal <[email protected]>
| Newsgroups | gmane.comp.java.ozone.user |
|---|---|
| Organization | Salzburg Research |
| Message-ID | <[email protected]> |
Hello,
I tried myself to test this by making some sample classes but
unfortunately
haven't been able to reproduce this bug in that.
The bug apperas not in the structure, but while I was trying to store some
database objects in an hashtable.
But even that worked fine when I tried building some sample classes.
So as soon as I am able to track the actual bug and get some sample
classes
showing, I will send them up.
Thanks
Regards
Sunil
On Wed, 03 Mar 2004 14:25:11 +0100, Wieslaw Faruga <[email protected]> wrote:
> Hi,
>
> I've tested a sample of similar structure ... everything works fine.
>
> Cheers,
> Wieslaw
>
> On 3 Mar 2004 at 10:26, Sunil Goyal wrote:
>> Hello all,
>>
>> My purpose of giving the previous example by writing transactions was
>> so that I create some database objects , store the objects(persistent),
>> close the database and when I open the database again , I am able to
>> retrieve
>> the object.
>>
>> Now this works fine with the Bus and Auto example, there in the samples
>> directory. I modified the code of the Client.java to check that.
>>
>> But when I try to do the same with my defined classes, I get a stack
>> overflow.
>> I can try to give a feel of what my class definitions look like and
>> what I
>> am trying
>> to do.
>>
>> public interface A extends OzoneRemote{
>> // getter setter methods
>> // additional methods
>> }
>>
>> public abstract class AImpl extends OzoneObject implements A{
>> //member variables - HashSet, HashMap , Strings ..
>>
>> // methods
>> }
>>
>>
>> public interface B extends A{
>> // getter setter methods
>> // additional methods
>> }
>>
>> public class BImpl extends AImpl implements B{
>> //member variables - HashSet, HashMap , Strings ..
>>
>> // methods
>> }
>>
>> Now I am trying to store objects of class B , when I get this problem.
>> These are the operations I am trying to do now..
>>
>> String dbDir = "D:/test/database";
>> LocalDatabase db = new LocalDatabase();
>> if(!db.exists(dbDir))
>> db.create(dbDir);
>>
>> db.open(dbDir);
>> B b = (B)db.createObject(BImpl.class.getName(),0,"bnode");
>> b.setName("B node check");
>>
>> db.close();
>> // opening database after closing
>> // check for the "bnode"
>> db.open(dbDir);
>> b = (B)db.objectForName("bnode");
>> System.out.println("B instance name "+b.getName());
>> db.close();
>>
>> And when I do this , I get this
>> [java] WARN [main] Transaction - ta[id=5102,blocker=null]:
>> uncaught
>> exception: (java.lang.StackOverflowError)
>> [java] java.lang.StackOverflowError
>> [java] WARN [main] Transaction - ta[id=5102,blocker=null]:
>> uncaught
>> exception: (java.lang.StackOverflowError)
>> [java] java.lang.StackOverflowError
>> [java] java.lang.StackOverflowError
>> [java] at
>> org.ozoneDB.ExternalDatabase.sendCommand(ExternalDatabase.java:536)
>> [java] at
>> org.ozoneDB.ExternalDatabase.sendCommand(ExternalDatabase.java:490)
>> [java] at
>> org.ozoneDB.ExternalDatabase.objectForName(ExternalDatabase.java:760)
>>
>> From the stack trace, the error is for a call on
>> b = (B)db.objectForName("bnode");
>>
>>
>> Any tips for where the error lies will be helpful.
>>
>> Thank You
>>
>> Regards
>> Sunil
>>
>>
>>
>> On 02 Mar 2004 16:57:49 +0100, Leo Mekenkamp <[email protected]>
>> wrote:
>>
>> > While I think using external transactions is overkill in this
>> situation
>> > (and use of external transactions should be avoided if not explicitly
>> > needed, implicit transactions are better and produce better readable
>> > code), I cannot see any reason why this would go wrong.
>> >
>> > Maybe one of the other people on this list?
>> >
>> > Cheers,
>> > Leo
>>
>> --
>> =====================================================================
>> Sunil Goyal
>> New Media Lab
>> Salzburg Research Forschungsgesellschft m.b.H.
>> Jakob Haringer-Strasse 5/III | A-5020 Salzburg
>> T: +43.662.2288-414 | F: +43.662.2288-222
>> [email protected]
>> http://www.salzburgresearch.at
>> ======================================================================
>>
>>
>> -------------------------------------------------------
>> SF.Net is sponsored by: Speed Start Your Linux Apps Now.
>> Build and deploy apps & Web services for Linux with
>> a free DVD software kit from IBM. Click Now!
>> http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
>> _______________________________________________
>> Ozone-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/ozone-users
>>
>> ----------------------------------------------------------------------
>> Dobry poczatek Internetu... >>> http://link.interia.pl/f17b8
>>
>>
>>
>
>
--
=====================================================================
Sunil Goyal
New Media Lab
Salzburg Research Forschungsgesellschft m.b.H.
Jakob Haringer-Strasse 5/III | A-5020 Salzburg
T: +43.662.2288-414 | F: +43.662.2288-222
[email protected]
http://www.salzburgresearch.at
======================================================================
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click