From cf6b28e6e0676db0f8637358581462002401e3ac Mon Sep 17 00:00:00 2001 From: devozerov Date: Wed, 18 Oct 2017 13:56:22 +0300 Subject: [PATCH] IGNITE-6662 --- .../internal/processors/query/h2/opt/GridH2Table.java | 6 +++++- .../processors/query/h2/sql/GridSqlQueryParser.java | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2Table.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2Table.java index 93da34ea171a5..6c353e9f32b47 100644 --- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2Table.java +++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/opt/GridH2Table.java @@ -137,8 +137,12 @@ public GridH2Table(CreateTableData createTblData, GridH2RowDescriptor desc, H2Ro int affKeyColId = -1; if (affKey != null) { - if (doesColumnExist(affKey)) + if (doesColumnExist(affKey)) { affKeyColId = getColumn(affKey).getColumnId(); + + if (desc.isKeyColumn(affKeyColId)) + affKeyColId = KEY_COL; + } else affinityColExists = false; } diff --git a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/sql/GridSqlQueryParser.java b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/sql/GridSqlQueryParser.java index bf72200c45b02..280fb2d420154 100644 --- a/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/sql/GridSqlQueryParser.java +++ b/modules/indexing/src/main/java/org/apache/ignite/internal/processors/query/h2/sql/GridSqlQueryParser.java @@ -1104,7 +1104,7 @@ private GridSqlCreateTable parseCreateTable(CreateTable createTbl) { if (res.affinityKey() == null) { LinkedHashSet pkCols0 = res.primaryKeyColumns(); - if (!F.isEmpty(pkCols0) && pkCols0.size() == 1) + if (!F.isEmpty(pkCols0) && pkCols0.size() == 1 && wrapKey0) res.affinityKey(pkCols0.iterator().next()); }