
Comments inline:) ________________________________________ Feladó: Ralf Nyren [ralf@nyren.net] Küldve: 2010. szeptember 2. 10:35 Címzett: Csom Gyula; Edmonds, AndrewX; occi-wg@ogf.org Tárgy: Re: [occi-wg] Link specification On Thu, 02 Sep 2010 10:02:32 +0200, Csom Gyula <csom@interface.hu> wrote:
Take the following example:
The user creates a new compute using some networks and disks, ie. define links to some network and disk. The compute is then deployed and soon becomes up and running. Then later the user deletes some network and disk... well, maybe she forgets about that they are used within some running compute. According to the implicit delete behaviour the computes will "loose" its disks and networks which might mean that it becomes unusable.
I would say this is really up to the server implementation. Any kind of server implementation should disallow users from putting part of the system in an unusable state.
However, the specification will not enforce this. Different use cases will require different semantics and a server is allowed to refuse requests when needed.
Ok. This clarifies the situation. That is: * when deleting target resources the default behaviour is to automatically delete links (pointing to them) as well. However * a specific OCCI implementation might enforce its special policies before deleting target resources. Is that correct?:)
I think deleting source resources with links is a natural behaviour since links are in fact "owned" by the sources. However this might not be the case with target resources, hence alternatives might be examined as well - like:
So if I have a Compute linked by a IPAddressLink to a Network, removing the IPAddressLink would also remove the Compute? That would be sure to upset the users... ;)
Ops, no:) What I tried to mean is the following. Taking your example: if I have a Compute (the source) linked by an IPAddressLink (the link) to a Network (the target) then * when deleting the Compute (the source) it is natural that the IPAddressLink (the link) is deleted automatically as well, since the network link (which in fact represents a NIC) is "owned" by the compute. However * when deleting the Network (the target) it might not be natural to delete the IPAddressLink as well, since the link (a NIC) is not "owned" by the network.
No, the current model has it very nicely defined I think. And if you need any other (more sophisticated) lifecycle semantics, just subclass the Resourse/Link and implement whatever is needed.
Cheers, Gyula