<br><br><div><span class="gmail_quote">On 11/3/05, <b class="gmail_sendername">Pavel Krivanek</b> &lt;<a href="mailto:squeak1@continentalbrno.cz" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">squeak1@continentalbrno.cz
</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi, I've got several questions related to OmniBase usage:<br><br>1) File locking on Windows<br><br>When I open a database session and process a transaction and then I try<br>to connect new user, OODBStreamLockedNotification is raised. OmniBase
<br>then wants a confirmation of &quot;File can not be read because it is locked.<br>Do you want to try again ?&quot;. What is the best default answer? True<br>causes long delay before the connection of new user. If false is chosen,
<br>fileIOError should be raised but nothing happens and new connection<br>works well.</blockquote><div><br>
IIRC, the netstyle guys were running into this issue.. what did you guys end up doing with it?<br>
&nbsp;</div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">2) Object sharing between transactions<br><br>If I'm not wrong, in case I want to modify a database object, I have to
<br>use transaction with explicit access to database object from the root.<br>So If I want use the same object in two or more independent<br>transactions, I cannot identify the object by its direct reference but I<br>have to use something like primary key or oid, right? How to make it
<br>more comfortable? Is a way how to identify and use database object<br>without access from root and searching in collections?</blockquote><div><br>
We definitely need to get that OmniSupport code out there.. aside from
the connection pool, we also have &quot;persistent references&quot;, which are
proxies to persistent objects that work across transactions.&nbsp; 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.&nbsp; Lukas, I've added you as a developer so feel free to
do so if everything's in order..</div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">3) Index updating<br><br>For example I have a collection of events an index by date of event.
<br>Then I modify an event that was not found by this index (I have no<br>direct iterator). Do I have to find this event in date index manually,<br>remove it and then add it again? Is there another way how access to<br>index record directly?
</blockquote><div><br>
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).&nbsp; Of course, you can have some sort of framework for
automatically updating indices on data changes, though OmniBase itself
doesn't include this.<br>
</div><br>Andrew<br>
</div>