[Mulgara-general] Mulgara API's

Paul Gearon gearon at ieee.org
Sat Feb 23 02:12:41 UTC 2008


On Fri, Feb 22, 2008 at 6:38 PM, Life is hard, and then you die
<ronald at innovation.ch> wrote:
> On Thu, Feb 21, 2008 at 06:52:49PM -0600, Paul Gearon wrote:
>  [snip]
>
> > For backward compatibility, the ItqlInterpreterBean is still there,
>  > but now it works differently.  Now it parses a query into a command.
>  [snip]
>
> > (caveat: Ronald pointed out that I fiddled trivially with the
>  > ItqlInterpreterBean interface, breaking backward compatibility.  If he
>  > hasn't fixed this already then I will.  It was a mistake)
>
>  I fixed it almost two weeks ago (see [634] and [636]).
>
>  But note that it's still not fully backwards compatible because
>  setServerURI() is now a no-op and any explicit session passed in is
>  also ignored (unless you use "local:" for the server/model uri's and
>  the session is a local DatabaseSession instance).

Yes, that was an explicit decision on my part.  I realized that it
could be hazardous, but decided to deprecate it anyway.  After all,
it's a method fraught with peril, since the wrong query can update
your session on you without you knowing about it.

If you're using that method, then you're managing your own sessions.
To my knowledge, very few developers are working at this level, and I
thought that by imposing an extra requirement on those people was
going to be worthwhile to make the code simpler.  Besides, the
Connection code was written with these developers in mind.  There's
even a constructor on SessionConnection which lets you create a
Connection with a session you have created yourself.

Had I wanted to continue support for ItqlInterpreterBean.setSession(),
and to make it correct, then I'd have to manage sessions in
ItqlInterpreterBean, as well as the existing management of
connections.  That's just getting silly.

IMO, the biggest problem with what I've done is that I haven't had
time to document it yet.  :-(

Paul



More information about the Mulgara-general mailing list