<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jan 22, 2015 at 7:59 PM, Evgeniy L <span dir="ltr"><<a href="mailto:eli@mirantis.com" target="_blank">eli@mirantis.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>The problem with merging is usually it's not clear how system performs merging.</div><div>For example you have the next hash {'list': [{'k': 1}, {'k': 2}, {'k': 3}]}, and I want</div><div>{'list': [{'k': 4}]} to be merged, what system should do? Replace the list or add {'k': 4}?</div><div>Both cases should be covered.</div><div><br></div></blockquote><div>What if we will replace based on root level? It feels enough for me. </div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div></div><div>Most of the users don't remember all of the keys, usually user gets the defaults, and</div><div>changes some values in place, in this case we should ask user to remove the rest</div><div>of the fields.</div><div><br></div></blockquote><div>And we are not going to force them delete something - if all information is present than it is what user actually wants.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div></div><div>The only solution which I see is to separate the data from the graph, not to send</div><div>this information to user.</div></blockquote></div>Probably, i will follow same approach that is used for repo generation, mainly because it is quite usefull for debuging - to see</div><div class="gmail_extra">how tasks are generated, but it doesnt solves two additional points:</div><div class="gmail_extra">1. There is constantly some data in nailgun becomes invalid just because we are asking user to overwrite everything </div><div class="gmail_extra">(most common case is allocated ip addresses)<br>2. What if you only need to add some data, like in fencing plugin? It will mean that such cluster is not going to be supportable,</div><div class="gmail_extra">what if we will want to upgrade that cluster and new serializer should be used? i think there is even warning on UI.</div></div>