On Sat, Mar 14, 2009 at 1:36 PM, Alexander Klimetschek <[email protected]> wrote: > On Fri, Mar 13, 2009 at 10:35 AM, Stefan Guggisberg > <[email protected]> wrote: >> On Fri, Mar 13, 2009 at 10:28 AM, Jukka Zitting <[email protected]> >> wrote: >>> Hi, >>> >>> Thinking out loud: Wouldn't it be so simple if a database-based >>> persistence manager used only a single table with the workspace name >>> included as an extra column? >> >> agreed, however write performance might suffer in the case of many large >> workspaces. > > It probably only "really" suffers when multiple workspaces are used at > the same time, forcing the database to synchronize stuff that is > actually separate.
AFAIK larger table indices are more expensive to maintain, i.e. write operations become slower the larger the table grows. > But a simpler solution for the problem that a user might have rights > to read/write a table, but not rights to see the metadata about it (if > this is actually possible in some databases), would be to add an > option for disabling the checkSchema() check. This would not read the > metadata to check for existence of the table and would not try to > create a table. Instead it could simply log the necessary create table > sql statement (eg. if an sql error happens, like "table does not > exist"). > > This option would be off by default and wouldn't force us to rewrite > all the persistence managers and break backwards compatibility. > > Regards, > Alex > > -- > Alexander Klimetschek > [email protected] >
