[cad-linux] Re: database application scenarios

  • From: Eric Wilhelm <ewilhelm@xxxxxxxxxxxxx>
  • To: cad-linux@xxxxxxxxxxxxx
  • Date: Wed, 14 May 2003 11:11:16 -0500

> The following was supposedly scribed by
> Lee Fickenscher
> on Wednesday 14 May 2003 09:59 am:

>On Wed, May 14, 2003 at 09:39:04AM -0500, Eric Wilhelm wrote:
>> I think a full CVS (or something similar) would be the way to handle it. 
>> You need to have locking and permissions in a multi-user design
>> environment, especially when you have multiple offices involved, or you
>> will be making phone calls trying to figure out who changed what.
>
>You don't think that the database locking would be able to handle this
>efficiently? Or are you talking about versioning? In which case wouldn't
>it work to just have different object versions in the database? i.e. -
>this drawing is using door-0.1?

I'm not sure of the features available in existing databases, but the 
engineering process would benefit from a "change history".  The ability to 
track who changed what and when and to roll-back selective portions of the 
model would help in evaluating design options.  If you had to specify which 
version of "door" is being used everywhere that it appears, how would you get 
the new version of "door" to get used automatically?

I think the part should have the same name and the new version should 
automatically be used, but if you find that a previous version of "door" is 
closer to what is required in a particular location, you could use that 
version as a starting point for a branch (i.e.  "door_alt" or whatever) and 
simply set the location to use the alternate part, updating to the latest 
version as the design progressed.

It is possible that this sort of thing could be handled by existing database 
models, but I think the project would best be served by use of a customized 
implementation (I know avoiding a fork in the code of an existing project is 
important, so maybe it could be done by using an existing sql-ish database 
server's libraries and just wrapping the db functions with some functions 
customized to this application.)

--Eric

Other related posts: