On Mon, 17 Mar 2003, Oskar Batuner wrote:
Let me propose a simplification of the protocol: remove [copied]
flag and make this behavior compulsory.
After reading the follow-ups to this proposal, I would like to start
by emphasizing that Oskar is essentially proposing changing the
default behavior from "move" to "copy". I think it is clear by now
(correct me if you have doubts!), that some systems have to use "move"
and some systems have to use "copy", often for OPES-unrelated
application/location-specific reasons.
Thus, if we yank [copied] out, we have to add [moved] and vice versa.
This is not a simplification of a protocol, just a change of the
default settings.
I think using "move" default and [copied] flag is better because
"move" is a simpler, basic operation; OPES "copy" operation is,
essentially, "store" + "move". That is why, IMO, "move" should stay as
the default and [copied] should be used to overwrite that default.
A possible alternative is to have the default dependent on the
application protocol binding. I think many OCP defaults are best
determined by the application protocol, but I am worried that having
many application defaults would make the protocol difficult to analyze
without referring to a specific application binding. Opinions?
Thank you,
Alex.
P.S. I assume that an overhead of passing a [copied] or [moved] flag
to the other side is negligible, regardless of what OCP encoding
we select. Thus, the question of the default is of minor
importance. We can even have "mode=copied|move" option and have
it mandatory to avoid deciding on the defaults. Again, I vote for
"move" mode as the default because "move" is a basic operation
and "copy" is not.