From 37f0abbca85782a148f809f4fa1a948e0e283416 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Fri, 11 Oct 2019 16:06:42 -0400 Subject: [PATCH] looked over all my old comments, current status of all concerns --- ...ltiple_special_remotes_with_same_uuid.mdwn | 8 ----- ..._704637f56a74a0f561798ae398e1470b._comment | 35 +++++++++++++++++++ 2 files changed, 35 insertions(+), 8 deletions(-) create mode 100644 doc/todo/support_multiple_special_remotes_with_same_uuid/comment_12_704637f56a74a0f561798ae398e1470b._comment diff --git a/doc/todo/support_multiple_special_remotes_with_same_uuid.mdwn b/doc/todo/support_multiple_special_remotes_with_same_uuid.mdwn index 31da2addec..c3861af4c1 100644 --- a/doc/todo/support_multiple_special_remotes_with_same_uuid.mdwn +++ b/doc/todo/support_multiple_special_remotes_with_same_uuid.mdwn @@ -29,11 +29,3 @@ of the code will work as-is. That would add overhead of an additional git-annex branch read on every program start. That could be avoided by instead putting the equivilance in the remote.log. Eg, "B sameas=A foo=bar ..." - ----- - -Implementation notes: - -Deal with the per-remote state issue. - -Any other things mentioned in the comments.. diff --git a/doc/todo/support_multiple_special_remotes_with_same_uuid/comment_12_704637f56a74a0f561798ae398e1470b._comment b/doc/todo/support_multiple_special_remotes_with_same_uuid/comment_12_704637f56a74a0f561798ae398e1470b._comment new file mode 100644 index 0000000000..eabad462a2 --- /dev/null +++ b/doc/todo/support_multiple_special_remotes_with_same_uuid/comment_12_704637f56a74a0f561798ae398e1470b._comment @@ -0,0 +1,35 @@ +[[!comment format=mdwn + username="joey" + subject="""comment 12""" + date="2019-10-11T19:56:12Z" + content=""" +Looking over all my comments now that I have an implementatation.. + +`git annex dead` on a sameas remote name marks the parent remote dead. +I think this is ok; dead means the content is gone, so which remote is used +to access it is immaterial; they're all dead. + +sameas loops are not a problem, it only looks up the sameas-uuid value +once, will not loop. + +old git-annex are prevented from enabling a sameas remote, since it has no +name= + +old git-annex with an enabled sameas remote will see the annex-uuid of the +parent, and treat it as the parent. Some git config values needed to use +the parent may not be set, or may potentially be set differently than for +the parent. Unlikely to cause any bad behavior, other than the remote not +working. + +encrypted data and legacy chunking is inherited, and cannot be overridden + +RemoteConfig always contains any inherited parameters of a sameas remote. +Logs.Remote.configSet filters those out. + +Logs.Remote.configSet is a little bit less safe; if its caller passed the +RemoteConfig from a sameas remote, it needs to make sure to not pass the +uuid of the parent remote, or it will overwrite the wrong config. All calls +to it handle that now. + +per-remote state still to be done. +"""]]