[Bf-committers] Reference counting, deleting data and fake users

Nathan Vegdahl cessen at cessen.com
Sat Mar 17 01:14:11 CET 2012


Upon further consideration, I've changed my mind: I think we should go
back to actions having fake users by default.  For my particular
use-cases it's fine (and convenient) for actions to not have fake
users, but as is clear from the blenderartists.org thread, there are
other use-cases that make this a problem.

It's very easy to simply forget to set an action to have a fake user,
and the result of that easy mistake can be significant data loss.  It
is better for people such as myself to be inconvenienced with dangling
actions than it is for other people to suffer significant data loss
from a simple mistake.  Easy-to-commit-user-error should never, ever
result in significant data loss, and yet that is the situation we have
here.  That is more important than being consistent.

Further discussion about how data should be handled in Blender is
still valuable, but for now let's at least change the default back to
actions having fake users.

--Nathan


On Fri, Mar 16, 2012 at 2:49 PM, Juha Mäki-Kanto <kiskosika at gmail.com> wrote:
> Would it be difficult to add a mode of saving which would not drop the
> unreferenced data? This would allow the user to decide when the garbage
> collection is done so you'd know when you have to worry about things going
> missing. Additionally a way to list data to be deleted might be nice.
>
> 16. maaliskuuta 2012 18.43 Alexander Zubov <a_zubov11 at yahoo.com> kirjoitti:
>
>> I think the easiest solution to this issue would be adding a prompt
>> message on exit "You have unsaved Actions. Would you like exit anyway?" or
>> something on that nature. This way user can go back and press F button on
>> the Actions he wants to keep.
>>
>> --- On Fri, 3/16/12, Bassam Kurdali <bassam at urchn.org> wrote:
>>
>> > From: Bassam Kurdali <bassam at urchn.org>
>> > Subject: Re: [Bf-committers] Reference counting, deleting data and fake
>> users
>> > To: "bf-blender developers" <bf-committers at blender.org>
>> > Date: Friday, March 16, 2012, 11:21 AM
>> > big -1
>> > I don't think it's simple, and I'm not sure it's even
>> > desirable;
>> > changing behavior like this, when the original complaint was
>> > that
>> > actions not getting fake users by default, going into a
>> > massive change
>> > of design.
>> > there are so many things in blender that need big redesign,
>> > like the
>> > dependency graph and library linking/refrencing, that going
>> > into major
>> > restructuring of things that *aren't broken* just seem like
>> > a ridiculous
>> > thing. Especially as this would be at least a highly
>> > controversial
>> > change.
>> > So if you're looking at a big architectural/ design/ under
>> > the hood
>> > challenge, wouldn't you please fix the depgraph first ;) ?
>> >
>> > > I don't see any big technical difficulty personally. We
>> > can just
>> > > modify the refcount increasing/decreasing function to
>> > use an observer
>> > > pattern scheme and if a datablock is deleted simply
>> > inform the
>> > > observers of the deletion (And the human user if the
>> > datablock has
>> > > more users). It will require some interface for the
>> > observers too but
>> > > I don't think it's an unsurpassable challenge, even in
>> > C :p. The
>> > > memory footprint of datablocks will slightly increase
>> > but it's a
>> > > negligible amount of data compared to meshes etc.
>> > > _______________________________________________
>> > > Bf-committers mailing list
>> > > Bf-committers at blender.org
>> > > http://lists.blender.org/mailman/listinfo/bf-committers
>> >
>> >
>> > _______________________________________________
>> > Bf-committers mailing list
>> > Bf-committers at blender.org
>> > http://lists.blender.org/mailman/listinfo/bf-committers
>> >
>> _______________________________________________
>> Bf-committers mailing list
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
>>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers


More information about the Bf-committers mailing list