You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Maksim Zhuravkov (Jira)" <ji...@apache.org> on 2025/08/14 10:32:00 UTC
[jira] [Created] (IGNITE-26203) Sql. Partition pruning. No metadata for INSERT INTO table SELECT FROM table
Maksim Zhuravkov created IGNITE-26203:
-----------------------------------------
Summary: Sql. Partition pruning. No metadata for INSERT INTO table SELECT FROM table
Key: IGNITE-26203
URL: https://issues.apache.org/jira/browse/IGNITE-26203
Project: Ignite
Issue Type: Improvement
Components: sql ai3
Reporter: Maksim Zhuravkov
Partition pruning metadata is not extracted for the following queries:
{code:java}
CREATE TABLE t (c1 INT, c2 INT, c3 INT, PRIMARY KEY (c1, c2))
INSERT INTO t SELECT * FROM t WHERE c1=? and c1=?
INSERT INTO t SELECT * FROM t WHERE c1=1 and c1=2
...
{code}
Reproducer for PartitionPruningTest
{noformat}
@Test
public void testInsertFromSelect() throws Exception {
IgniteTable table = TestBuilders.table()
.name("T")
.addKeyColumn("C1", NativeTypes.INT32)
.addKeyColumn("C2", NativeTypes.INT32)
.addColumn("C3", NativeTypes.INT32, true)
.distribution(TestBuilders.affinity(List.of(1, 0), 1, 2))
.build();
PartitionPruningMetadata actual = extractMetadata(
"INSERT INTO t SELECT * FROM t WHERE c2=1 and c1=2",
table
);
PartitionPruningColumns cols = actual.get(1);
assertNotNull(cols, "No metadata for source=1");
assertEquals("[[0=2, 1=1], [0=4, 1=3]]", PartitionPruningColumns.canonicalForm(cols).toString());
}
{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)