Repository: incubator-ignite Updated Branches: refs/heads/ignite-1 254045110 -> 9996c90ea
# SS-3 fix performance problem: cache values returned from readFromCache(). Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/794e0541 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/794e0541 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/794e0541 Branch: refs/heads/ignite-1 Commit: 794e05412e2f9cb600ae15d74f7636a889284dc0 Parents: c541d65 Author: sevdokimov <sevdoki...@gridgain.com> Authored: Mon Dec 29 20:30:14 2014 +0300 Committer: sevdokimov <sevdoki...@gridgain.com> Committed: Mon Dec 29 20:30:14 2014 +0300 ---------------------------------------------------------------------- .../processors/query/h2/opt/GridH2AbstractKeyValueRow.java | 4 ++-- .../kernal/processors/query/h2/opt/GridH2KeyValueRowOffheap.java | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/794e0541/modules/indexing/src/main/java/org/gridgain/grid/kernal/processors/query/h2/opt/GridH2AbstractKeyValueRow.java ---------------------------------------------------------------------- diff --git a/modules/indexing/src/main/java/org/gridgain/grid/kernal/processors/query/h2/opt/GridH2AbstractKeyValueRow.java b/modules/indexing/src/main/java/org/gridgain/grid/kernal/processors/query/h2/opt/GridH2AbstractKeyValueRow.java index 6d526a7..f3c0f41 100644 --- a/modules/indexing/src/main/java/org/gridgain/grid/kernal/processors/query/h2/opt/GridH2AbstractKeyValueRow.java +++ b/modules/indexing/src/main/java/org/gridgain/grid/kernal/processors/query/h2/opt/GridH2AbstractKeyValueRow.java @@ -219,9 +219,9 @@ public abstract class GridH2AbstractKeyValueRow extends GridH2Row { if (valObj != null) { Value upd = wrap(valObj, desc.valueType()); - Value res = updateWeakValue(v, upd); + Value res = updateWeakValue(null, upd); - if (res == v) { + if (res == null) { if (super.getValue(KEY_COL) == null) cache(); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/794e0541/modules/indexing/src/main/java/org/gridgain/grid/kernal/processors/query/h2/opt/GridH2KeyValueRowOffheap.java ---------------------------------------------------------------------- diff --git a/modules/indexing/src/main/java/org/gridgain/grid/kernal/processors/query/h2/opt/GridH2KeyValueRowOffheap.java b/modules/indexing/src/main/java/org/gridgain/grid/kernal/processors/query/h2/opt/GridH2KeyValueRowOffheap.java index 7f386f0..7f567ee 100644 --- a/modules/indexing/src/main/java/org/gridgain/grid/kernal/processors/query/h2/opt/GridH2KeyValueRowOffheap.java +++ b/modules/indexing/src/main/java/org/gridgain/grid/kernal/processors/query/h2/opt/GridH2KeyValueRowOffheap.java @@ -207,6 +207,8 @@ public class GridH2KeyValueRowOffheap extends GridH2AbstractKeyValueRow { /** {@inheritDoc} */ @SuppressWarnings("NonSynchronizedMethodOverridesSynchronizedMethod") @Override protected Value updateWeakValue(Value exp, Value upd) { + setValue(VAL_COL, upd); + return exp; }