OmniBase questions

Lukas Renggli renggli at gmail.com
Thu Nov 3 12:38:39 UTC 2005


> > 1) File locking on Windows
> >
> > When I open a database session and process a transaction and then I try
> > to connect new user, OODBStreamLockedNotification is raised. OmniBase
> > then wants a confirmation of "File can not be read because it is locked.
> > Do you want to try again ?". What is the best default answer? True
> > causes long delay before the connection of new user. If false is chosen,
> > fileIOError should be raised but nothing happens and new connection
> > works well.
>
>  IIRC, the netstyle guys were running into this issue.. what did you guys
> end up doing with it?

Mhh, I don't think we were running into exactly that issue ...
Philippe was the only one using Windows for development, maybe he
knows?

> > 2) Object sharing between transactions
> >
> > If I'm not wrong, in case I want to modify a database object, I have to
> > use transaction with explicit access to database object from the root.
> > So If I want use the same object in two or more independent
> > transactions, I cannot identify the object by its direct reference but I
> > have to use something like primary key or oid, right? How to make it
> > more comfortable? Is a way how to identify and use database object
> > without access from root and searching in collections?
>
>  We definitely need to get that OmniSupport code out there.. aside from the
> connection pool, we also have "persistent references", which are proxies to
> persistent objects that work across transactions.  I've added an OmniSupport
> package to SqueakSource, but haven't added any code to it -- the newest
> version I can see is in the netstyle repo; I expect it's OK for public
> consumption, but I'd rather they published it themselves.  Lukas, I've added
> you as a developer so feel free to do so if everything's in order..

Ok thanks, I will have a look at it and publish the code. We made some
experimental changes to different parts ... so I will have to see what
version I am going to publish.

> > 3) Index updating
> >
> > For example I have a collection of events an index by date of event.
> > Then I modify an event that was not found by this index (I have no
> > direct iterator). Do I have to find this event in date index manually,
> > remove it and then add it again? Is there another way how access to
> > index record directly?
>
>  If you are using any of the basic indices in OmniBase you will need to be
> sure to maintain them somehow (just as you would with, say, a Dictionary).
> Of course, you can have some sort of framework for automatically updating
> indices on data changes, though OmniBase itself doesn't include this.

There is a nice indexing framework in OmniSupport ...

Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch



More information about the Squeak-dev mailing list