Fixes after merge master -> 2.0 merge.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/e18fcda7 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/e18fcda7 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/e18fcda7 Branch: refs/heads/ignite-4705-2 Commit: e18fcda7f9c76c398db0fd3ddaed653967a6e3e6 Parents: d1b2c01 Author: devozerov <voze...@gridgain.com> Authored: Fri Mar 10 14:17:33 2017 +0300 Committer: devozerov <voze...@gridgain.com> Committed: Fri Mar 10 14:17:33 2017 +0300 ---------------------------------------------------------------------- .../processors/query/GridQueryProcessor.java | 2 +- .../query/h2/DmlStatementsProcessor.java | 27 ++++++++------------ .../query/h2/twostep/GridMapQueryExecutor.java | 8 +++--- 3 files changed, 15 insertions(+), 22 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/e18fcda7/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java index 1069e55..f107386 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/GridQueryProcessor.java @@ -754,7 +754,7 @@ public class GridQueryProcessor extends GridProcessorAdapter { QueryTypeDescriptorImpl typeDesc = typesByName.get( new QueryTypeNameKey( - space, + cctx.name(), type)); if (typeDesc == null || !typeDesc.registered()) http://git-wip-us.apache.org/repos/asf/ignite/blob/e18fcda7/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/DmlStatementsProcessor.java ---------------------------------------------------------------------- diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/DmlStatementsProcessor.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/DmlStatementsProcessor.java index 9ab7704..a502479 100644 --- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/DmlStatementsProcessor.java +++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/DmlStatementsProcessor.java @@ -60,7 +60,6 @@ import org.apache.ignite.internal.processors.query.GridQueryProperty; import org.apache.ignite.internal.processors.query.GridQueryTypeDescriptor; import org.apache.ignite.internal.processors.query.IgniteSQLException; import org.apache.ignite.internal.processors.query.h2.dml.FastUpdateArguments; -import org.apache.ignite.internal.processors.query.h2.dml.KeyValueSupplier; import org.apache.ignite.internal.processors.query.h2.dml.UpdateMode; import org.apache.ignite.internal.processors.query.h2.dml.UpdatePlan; import org.apache.ignite.internal.processors.query.h2.dml.UpdatePlanBuilder; @@ -75,7 +74,6 @@ import org.apache.ignite.lang.IgniteBiTuple; import org.apache.ignite.lang.IgniteInClosure; import org.apache.ignite.spi.indexing.IndexingQueryFilter; import org.h2.command.Prepared; -import org.h2.jdbc.JdbcPreparedStatement; import org.h2.table.Column; import org.h2.value.DataType; import org.h2.value.Value; @@ -235,7 +233,7 @@ public class DmlStatementsProcessor { throws IgniteCheckedException { args = U.firstNotNull(args, X.EMPTY_OBJECT_ARRAY); - Prepared p = GridSqlQueryParser.prepared((JdbcPreparedStatement)stmt); + Prepared p = GridSqlQueryParser.prepared(stmt); assert p != null; @@ -276,11 +274,8 @@ public class DmlStatementsProcessor { } }, null); - GridH2RowDescriptor desc = plan.tbl.rowDescriptor(); - if (plan.rowsNum == 1) { - IgniteBiTuple t = rowToKeyValue(cctx, cur.iterator().next().toArray(), plan.colNames, plan.colTypes, - plan.keySupplier, plan.valSupplier, plan.keyColIdx, plan.valColIdx, desc); + IgniteBiTuple t = rowToKeyValue(cctx, cur.iterator().next(), plan); streamer.addData(t.getKey(), t.getValue()); @@ -290,8 +285,7 @@ public class DmlStatementsProcessor { Map<Object, Object> rows = new LinkedHashMap<>(plan.rowsNum); for (List<?> row : cur) { - final IgniteBiTuple t = rowToKeyValue(cctx, row.toArray(), plan.colNames, plan.colTypes, - plan.keySupplier, plan.valSupplier, plan.keyColIdx, plan.valColIdx, desc); + final IgniteBiTuple t = rowToKeyValue(cctx, row, plan); rows.put(t.getKey(), t.getValue()); } @@ -391,7 +385,7 @@ public class DmlStatementsProcessor { @SuppressWarnings({"unchecked", "ConstantConditions"}) private UpdatePlan getPlanForStatement(String spaceName, PreparedStatement prepStmt, @Nullable Integer errKeysPos) throws IgniteCheckedException { - Prepared p = GridSqlQueryParser.prepared((JdbcPreparedStatement) prepStmt); + Prepared p = GridSqlQueryParser.prepared(prepStmt); spaceName = F.isEmpty(spaceName) ? "default" : spaceName; @@ -894,7 +888,7 @@ public class DmlStatementsProcessor { * @param rows Rows to process. * @return Triple [number of rows actually changed; keys that failed to update (duplicates or concurrently * updated ones); chain of exceptions for all keys whose processing resulted in error, or null for no errors]. - * @throws IgniteCheckedException + * @throws IgniteCheckedException If failed. */ @SuppressWarnings({"unchecked", "ConstantConditions"}) private static PageProcessingResult processPage(GridCacheContext cctx, @@ -927,17 +921,17 @@ public class DmlStatementsProcessor { Object key = plan.keySupplier.apply(row); if (GridQueryProcessor.isSqlType(desc.keyClass())) { - assert keyColIdx != -1; + assert plan.keyColIdx != -1; - key = convert(key, rowDesc, desc.keyClass(), plan.colTypes[keyColIdx]); + key = convert(key, rowDesc, desc.keyClass(), plan.colTypes[plan.keyColIdx]); } Object val = plan.valSupplier.apply(row); if (GridQueryProcessor.isSqlType(desc.valueClass())) { - assert valColIdx != -1; + assert plan.valColIdx != -1; - val = convert(val, rowDesc, desc.valueClass(), plan.colTypes[valColIdx]); + val = convert(val, rowDesc, desc.valueClass(), plan.colTypes[plan.valColIdx]); } if (key == null) @@ -960,8 +954,7 @@ public class DmlStatementsProcessor { Class<?> expCls = prop.type(); - newColVals.put(colName, convert(row.get(i), plan.colNames[i], - rowDesc, expCls, plan.colTypes[i])); + newColVals.put(colName, convert(row.get(i), rowDesc, expCls, plan.colTypes[i])); } // We update columns in the order specified by the table for a reason - table's http://git-wip-us.apache.org/repos/asf/ignite/blob/e18fcda7/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java ---------------------------------------------------------------------- diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java index 4dcf331..8fadfeb 100644 --- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java +++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/twostep/GridMapQueryExecutor.java @@ -45,7 +45,6 @@ import org.apache.ignite.events.Event; import org.apache.ignite.events.EventType; import org.apache.ignite.internal.GridKernalContext; import org.apache.ignite.internal.GridTopic; -import org.apache.ignite.internal.managers.communication.GridIoPolicy; import org.apache.ignite.internal.managers.communication.GridMessageListener; import org.apache.ignite.internal.managers.eventstorage.GridLocalEventListener; import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion; @@ -85,6 +84,7 @@ import org.jsr166.ConcurrentHashMap8; import static org.apache.ignite.events.EventType.EVT_CACHE_QUERY_EXECUTED; import static org.apache.ignite.events.EventType.EVT_CACHE_QUERY_OBJECT_READ; +import static org.apache.ignite.internal.managers.communication.GridIoPolicy.QUERY_POOL; import static org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion.NONE; import static org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtPartitionState.OWNING; import static org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.setupConnection; @@ -709,7 +709,7 @@ public class GridMapQueryExecutor { h2.reduceQueryExecutor().onMessage(ctx.localNodeId(), msg); } else - ctx.io().sendToGridTopic(node, GridTopic.TOPIC_QUERY, msg, GridIoPolicy.QUERY_POOL); + ctx.io().sendToGridTopic(node, GridTopic.TOPIC_QUERY, msg, QUERY_POOL); } catch (Exception e) { e.addSuppressed(err); @@ -787,7 +787,7 @@ public class GridMapQueryExecutor { if (loc) h2.reduceQueryExecutor().onMessage(ctx.localNodeId(), msg); else - ctx.io().sendToGridTopic(node, GridTopic.TOPIC_QUERY, msg, GridIoPolicy.QUERY_POOL); + ctx.io().sendToGridTopic(node, GridTopic.TOPIC_QUERY, msg, QUERY_POOL); } catch (IgniteCheckedException e) { log.error("Failed to send message.", e); @@ -815,7 +815,7 @@ public class GridMapQueryExecutor { if (loc) h2.reduceQueryExecutor().onMessage(ctx.localNodeId(), msg); else - ctx.io().sendToGridTopic(node, GridTopic.TOPIC_QUERY, msg, GridIoPolicy.QUERY_POOL); + ctx.io().sendToGridTopic(node, GridTopic.TOPIC_QUERY, msg, QUERY_POOL); } catch (Exception e) { U.warn(log, "Failed to send retry message: " + e.getMessage());