On Mon, Jan 23, 2012 at 2:08 AM, Stewart Smith <[email protected]> wrote:
> On Sun, 22 Jan 2012 14:32:36 +0200, Henrik Ingo <[email protected]> 
> wrote:
>> A few weeks ago you were finishing the catalogs and we discussed on
>> IRC how one should actually end up in ones own confined catalog.
>> (different tcp/ip port per catalog were mentioned as one way)
>
> This is still something I think about. The listening on specific
> interface I think is certainly something we want to be able to support
> at some point.

Sure. These don't exclude each other.

>> I just wanted to come and say I think for many cloud-like use cases
>> the username is the best key. The counterargument to this was that at
>> least with some auth_ plugins, especially the mysql-like auth_schema,
>> the users would be stored inside the catalog, so we have a chicken egg
>> problem.
>
> I think this is also a great way - and very easy to integrate into
> existing apps... altought that's often the same way with doing schema
> name prefix
>
>
>> But upon thinking it seems one could simply require users to pass the
>> catalog name prepended to the username and dot as separator. This
>> would also allow to have identically named users in different
>> catalogs, which is clearly desired.
>
> The advantage of prepending catalog to schema is that we can do it all a
> bit earlier and keep the auth routines pretty simple.... although I have
> not looked really closely at how we have to change them for having good
> CATALOG support.

How can something happen earlier than authentication? I would expect
that to always happen first?

Either way, I'm a bit undecided on this one today. In a way it would
be logical to prepend to schema, since that is where Catalogs exist as
a namespace: catalog.schema.table.column

I suppose it will work just as fine - if, and only if - it is then
required to always write the catalog name, including "local" when
using that. One small downside I can think of is that you cannot then
connect to just the catalog without specifying a schema too. I don't
know if anyone ever needs to do that though, not specifying a schema
is usually just laziness. Anyway, the latter of these two is
ambiguous:

mysql --user=hingo --password=sshhh mycatalog.myschema
mysql --user=hingo --password=sshhh mycatalog

(The latter would really mean a schema called "mycatalog".)

By stuffing it into the user, one could still safely interpret "no
dots" as local catalog.

I suppose one could allow a dot with no schema:

mysql --user=hingo --password=sshhh mycatalog.

This would be the equivalent of the common:

mysql --user=hingo --password=sshhh

henrik
-- 
[email protected]
+358-40-8211286 skype: henrik.ingo irc: hingo
www.openlife.cc

My LinkedIn profile: http://www.linkedin.com/profile/view?id=9522559

_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to