Can you make a short list of changes between 3.9 and 4.0? What about the:

  • doDataObject table causing potential deadlocks

  • prefetch graphs(related objects) with a single request

  • optimized (database level) paging support

  • permissions in db

  • ....

Thanks Marco


Updated at 04.09.2008 11:00:39

[quote="mdissel":13kpmne8]- permissions in db Can you describe this clause more detailed?[/quote:13kpmne8]

Store the permissions in tables / columns instead of a blob field so the information can be used with queries..

Thanks Marco


Updated at 04.09.2008 13:50:38

[quote="mdissel":14z3c1aj]Store the permissions in tables / columns instead of a blob field so the information can be used with queries..

Security system will be implemented in separated assembly. You will be able use your own or third party security system. We did not thought yet about our implementation of it, but we'll consider all your suggestions and feature requests.[/quote:14z3c1aj]

One suggesting, use Users / Groups-Roles from ActiveDirectory (ldap). For simple application a Role model will be sufficient and if you need record / field level permissions store the permissions (readpermissions) in the database so queries can take advantage of skipping records that the user has no access for..

This thread was imported from our support forum. The original discussion may contain more detailed answer.

asked Sep 04 '08 at 07:07

Marco's gravatar image

Marco
22161618


One Answer:

Alex Kofman wrote:

Can you make a short list of changes between 3.9 and 4.0? It's to rather difficult to list all changes, because DO 4.0 is a fully new product. You can think of it as a new engine, that allows to implement almost all features we'll need.

  • doDataObject table causing potential deadlocks There is no single hierarchy of classes in database. You can define as many hierarchies as you want. Each hierarchy has it's own root table. In addition DataObjects.Net supports new schemes of persisting inherited classes, e.g. "One class - One table" and "One hierarchy - One table".

  • prefetch graphs(related objects) with a single request

  • optimized (database level) paging support This features most likely will be implemented a bit later.

  • permissions in db Can you describe this clause more detailed?


Alex Kofman wrote:

Store the permissions in tables / columns instead of a blob field so the information can be used with queries..

Security system will be implemented in separated assembly. You will be able use your own or third party security system. We did not thought yet about our implementation of it, but we'll consider all your suggestions and feature requests.


Alex (Xtensive) wrote:

A brief addition:

  • Security system will be implemented later, and will be really fully pluggable. ACLs will be fully relational.

  • Optimized paging: RSE already supports Skip & Take operations (that's what necessary for paging). So some tool simplifying paging will be definitely available in some future.

  • Prefetch paths: a key part of this feature is already implemented: all the operations with RecordSets maintain mapping info for the result. So if you create a query joining data from several indexes (or tables, if they're PKs), any (except calculated, etc.) individual column from the final query result will be related to the field of some entity. If this RecordSet contains PK of this entity as well (i.e. there are also all the columns mapped to PK), the internal cache will receive the data when you enumerate the RecordSet. So in fact all we need to do here is to provide simplified way for building such a RecordSet.


Support (Xtensive) wrote:

Other related topics:

answered Sep 04 '08 at 08:48

Editor's gravatar image

Editor
46154156157

(Sep 04 '08 at 08:48) Editor Editor's gravatar image
Your answer
Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
toggle preview

powered by OSQA