diff --git a/presto-memory/src/main/java/io/prestosql/plugin/memory/MemoryMetadata.java b/presto-memory/src/main/java/io/prestosql/plugin/memory/MemoryMetadata.java index 0ad1be797c02..54efa793fb74 100644 --- a/presto-memory/src/main/java/io/prestosql/plugin/memory/MemoryMetadata.java +++ b/presto-memory/src/main/java/io/prestosql/plugin/memory/MemoryMetadata.java @@ -356,10 +356,12 @@ public Optional> applyLimit(Connect { MemoryTableHandle table = (MemoryTableHandle) handle; - if (!table.getLimit().isPresent() || limit < table.getLimit().getAsLong()) { - table = new MemoryTableHandle(table.getId(), OptionalLong.of(limit)); + if (table.getLimit().isPresent() && table.getLimit().getAsLong() <= limit) { + return Optional.empty(); } - return Optional.of(new LimitApplicationResult<>(table, true)); + return Optional.of(new LimitApplicationResult<>( + new MemoryTableHandle(table.getId(), OptionalLong.of(limit)), + true)); } }