[hibernate-dev] Table and quoted names

Steve Ebersole steve at hibernate.org
Thu Sep 30 15:26:21 EDT 2010


Sigh...

https://fisheye2.atlassian.com/browse/Hibernate4/src/main/java/org/hibernate/metamodel/schema/Identifier.java?r=1e336e607552dd638cee382cb43ed914112ed255
https://fisheye2.atlassian.com/browse/Hibernate4/src/main/java/org/hibernate/metamodel/schema/ObjectName.java?r=1e336e607552dd638cee382cb43ed914112ed255


On Thu, 2010-09-30 at 14:13 -0500, Steve Ebersole wrote:
> Hmm a few other people said they did not get them either.  Trying
> again...
> 
> On Thu, 2010-09-30 at 10:37 -0500, Steve Ebersole wrote:
> > ?  
> > 
> > They came back through to me.
> > 
> > On Thu, 2010-09-30 at 17:21 +0200, Max Rydahl Andersen wrote:
> > > missing attachement?
> > > 
> > > /max
> > > 
> > > On Sep 30, 2010, at 15:01, Steve Ebersole wrote:
> > > 
> > > > True enough.  Attached is the code I developed for Hibernate 4 to handle
> > > > this better.  Care to gander?
> > > > 
> > > > 
> > > > On Thu, 2010-09-30 at 15:09 +0300, Dmitry Geraskov wrote:
> > > >> Hi, guys,
> > > >> while I was fixing some bug in hibernate tools I looked through some 
> > > >> hibernate code.
> > > >> And it seems to me that hibernate is not ready in some cases for quoted 
> > > >> identifiers.
> > > >> 
> > > >> Here I would like to highlight some potentially weak places in key class 
> > > >> org.hibernate.mapping.Table.
> > > >> It doesn't ready for quoted catalog identifiers.
> > > >> There are (catalog, schema, name) fields and (schemaQuoted,quoted). 
> > > >> There is no "catalogQuoted", but probably it should be.
> > > >> The static method qualify() in most cases used to generate unique key 
> > > >> and cache some data. It is used in such way:
> > > >> 
> > > >> String key = Table.qualify(catalog, schema, name);
> > > >> and it is a potentially(non-unique) problem if there are names with dots.
> > > >> "catalog.my.schema.table" = "catalog.my"."schema"."table" or 
> > > >> "catalog"."my.schema"."table".
> > > >> 
> > > >> I didn't find any usage of Table#isSchemaQuoted(), and 
> > > >> DatabaseMetadata#getTableMetadata(..., isQuoted) called with 
> > > >> Table#isQuoted() parameter. Perhaps there should be
> > > >> isQuoted = Table#isQuoted() || Table#isSchemaQuoted() || 
> > > >> Table#isCatalogQuoted() ?
> > > >> 
> > > >> Dmitry Geraskov.
> > > >> _______________________________________________
> > > >> hibernate-dev mailing list
> > > >> hibernate-dev at lists.jboss.org
> > > >> https://lists.jboss.org/mailman/listinfo/hibernate-dev
> > > > 
> > > > -- 
> > > > Steve Ebersole <steve at hibernate.org>
> > > > http://hibernate.org
> > > > _______________________________________________
> > > > hibernate-dev mailing list
> > > > hibernate-dev at lists.jboss.org
> > > > https://lists.jboss.org/mailman/listinfo/hibernate-dev
> > > 
> > 
> 

-- 
Steve Ebersole <steve at hibernate.org>
http://hibernate.org




More information about the hibernate-dev mailing list