Modified the protocol yet again. Tree handles are now assigned on non-temporary trees as soon as the tree object is created. This permits the Exchange#fetchFromValueInternal to enqueue pages with MVVs before any transaction modifies the tree. (Otherwise the conditional on handle != 0 is required in that code path.) Since this behavior is more similar to what we currently have in trunk, it seemed preferable to restore it.
Modified the protocol yet again. Tree handles are now assigned on non-temporary trees as soon as the tree object is created. This permits the Exchange# fetchFromValueI nternal to enqueue pages with MVVs before any transaction modifies the tree. (Otherwise the conditional on handle != 0 is required in that code path.) Since this behavior is more similar to what we currently have in trunk, it seemed preferable to restore it.