Update WriteOperations/TypedTransaction API design 67/77467/27
authorRobert Varga <robert.varga@pantheon.tech>
Fri, 2 Nov 2018 21:17:39 +0000 (22:17 +0100)
committerRobert Varga <nite@hq.sk>
Thu, 22 Nov 2018 10:51:14 +0000 (10:51 +0000)
Overloading merge/put methods with a boolean prevents a quick
identification of users of costly operations. Moreover, the
documentation (and contract) does not completely reflect behaviour
as all purely-structural elements undergo automatic lifecycle:
for example non-presence containers are created as needed and
removed when they are no longer needed.

Update the design by deprecating boolean-taking methods in favor
of mergeParentStructureAnd{Merge,Put}, which are now implemented
as defaults. This will allow us to migrate users first and then
remove those methods in 4.0.0 timeframe.

Also update documentation to discourage the use of these methods,
as they have significant performance cost.

JIRA: MDSAL-382
Change-Id: I878863797dab01a1adfa2164a0ab0583b0641163
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>

No differences found