X-CGP-ClamAV-Result: CLEAN X-VirusScanner: Niversoft's CGPClamav Helper v1.22.2a (ClamAV engine v0.102.2) X-Junk-Score: 0 [] X-KAS-Score: 0 [] From: "OCsite" Received: from smtp-beta-2.zoner.com ([217.198.120.71] verified) by post.selbstdenker.com (CommuniGate Pro SMTP 6.3.3) with ESMTPS id 26033360 for webobjects-dev@wocommunity.org; Wed, 16 Jun 2021 21:24:10 +0200 Received-SPF: none receiver=post.selbstdenker.com; client-ip=217.198.120.71; envelope-from=ocs@ocs.cz Received: from smtp.zoner.com (smtp.zoner.com [217.198.120.6]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp-beta-2.zoner.com (Postfix) with ESMTPS id E295F18008BA; Wed, 16 Jun 2021 21:23:49 +0200 (CEST) Received: from smtpclient.apple (smtp2stechovice.cli-eurosignal.cz [77.240.99.254]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: ocs@ocs.cz) by smtp.zoner.com (Postfix) with ESMTPSA id 89DA83000068; Wed, 16 Jun 2021 21:23:49 +0200 (CEST) Content-Type: multipart/alternative; boundary="Apple-Mail=_6450C4AB-793F-4BB8-9CBB-BB3386EA2992" Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.100.0.2.22\)) Subject: =?utf-8?Q?merging_changes_upon_a_save=3A_what_are_=E2=80=9Clocall?= =?utf-8?Q?y_uncommitted_changes=E2=80=9D=2C_too_many_snapshots=3F?= Message-Id: Date: Wed, 16 Jun 2021 21:23:48 +0200 To: WebObjects & WOnder Development , webobjects-dev@lists.apple.com X-Mailer: Apple Mail (2.3654.100.0.2.22) --Apple-Mail=_6450C4AB-793F-4BB8-9CBB-BB3386EA2992 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Hi there, is the process of merging changes upon a save into other ECs, and all = the kinds of snapshots available, documented somewhere in detail? My old EOEditingContextConcepts says just this: ... However, locally uncommitted changes to objects in the = EOEditingContext are by default reapplied to the objects, in effect = preserving the uncommitted changes in the object graph. After the = update, the uncommitted changes remain uncommitted, but the committed = snapshots have been updated to reflect the values in the EOObjectStore. and I can't see what does it actually mean =E2=80=9Clocally uncommitted = changes=E2=80=9D here. Most probably a difference from some snapshot, = but I admit I am sort of lost in the things. So far I lived in impression that (if we ignore undo) there's only one = kind of snapshots: OSC-level shared snapshots of = what-was-just-saved-into-DB. I've tried to research the thing a bit and there seem to be at the very = least the following snapshots: (i) EC.committedSnapshotForObject (ii) EC.currentEventSnapshotForObject (iii) EODatabaseContext.snapshotForGlobalID (iv) EODatabaseContext.localSnapshotForGlobalID I regret to say the standard documentation does not help much. I did = some testing and it looks like - (iii) is the one snapshot I knew: whenever save finishes, it always = contains the newly saved values - (i) and (ii) =E2=80=94 which for me always contain same data, that's = weird! =E2=80=94 seem to contain an EC-level snapshot stored at its = (first) willChange. Also it looks like those =E2=80=9Clocally = uncommitted changes=E2=80=9D are based on (one of) these. So far though = I haven't found a case when (i) would differ from (ii)... although, = based on the name, I would actually presume (i) should be the same as = (iii). It very definitely is not. - (iv) I don't understand at all :( Are those things somewhere documented in detail? Thanks and all the best, OC --Apple-Mail=_6450C4AB-793F-4BB8-9CBB-BB3386EA2992 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8
Hi there,

is the process of merging changes upon a = save into other ECs, and all the kinds of snapshots available, = documented somewhere in detail?

My old EOEditingContextConcepts says just this:

... However, locally uncommitted changes = to objects in the EOEditingContext are by default reapplied to the = objects, in effect preserving the uncommitted changes in the object = graph. After the update, the uncommitted changes remain uncommitted, but = the committed snapshots have been updated to reflect the values in the = EOObjectStore.

and I can't see what does it actually = mean =E2=80=9Clocally uncommitted changes=E2=80=9D here. Most probably a = difference from some snapshot, but I admit I am sort of lost in the = things.

So = far I lived in impression that (if we ignore undo) there's only one kind = of snapshots: OSC-level shared snapshots of = what-was-just-saved-into-DB.

I've tried to research the thing a bit and there seem to be = at the very least the following snapshots:

(i) = EC.committedSnapshotForObject
(ii) EC.currentEventSnapshotForObject
(iii) EODatabaseContext.snapshotForGlobalID
(iv) EODatabaseContext.localSnapshotForGlobalID

I regret to say the standard = documentation does not help much. I did some testing and it looks = like

- = (iii) is the one snapshot I knew: whenever save finishes, it always = contains the newly saved values
- (i) and (ii) =E2=80=94 which for me always contain same = data, that's weird! =E2=80=94 seem to contain an EC-level snapshot = stored at its (first) willChange. Also it looks like those =E2=80=9Clocall= y uncommitted changes=E2=80=9D are based on (one of) these. So far = though I haven't found a case when (i) would differ from (ii)... = although, based on the name, I would actually presume (i) should be the = same as (iii). It very definitely is not.
- (iv) I don't understand at all = :(

Are = those things somewhere documented in detail?

Thanks and all the best,
OC

= --Apple-Mail=_6450C4AB-793F-4BB8-9CBB-BB3386EA2992--