Skip to content

Commit beabf6b

Browse files
committed
Pulled out toResolvedPolarisEntity method per PR comment
1 parent d1d7b2c commit beabf6b

File tree

3 files changed

+46
-48
lines changed

3 files changed

+46
-48
lines changed

persistence/relational-jdbc/src/main/java/org/apache/polaris/persistence/relational/jdbc/JdbcBasePersistenceImpl.java

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,25 @@
1818
*/
1919
package org.apache.polaris.persistence.relational.jdbc;
2020

21+
import static org.apache.polaris.persistence.relational.jdbc.QueryGenerator.PreparedQuery;
22+
2123
import com.google.common.base.Preconditions;
2224
import jakarta.annotation.Nonnull;
2325
import jakarta.annotation.Nullable;
26+
import java.sql.Connection;
27+
import java.sql.SQLException;
28+
import java.util.ArrayList;
29+
import java.util.Collections;
30+
import java.util.HashMap;
31+
import java.util.LinkedHashMap;
32+
import java.util.List;
33+
import java.util.Map;
34+
import java.util.Objects;
35+
import java.util.Optional;
36+
import java.util.concurrent.atomic.AtomicReference;
37+
import java.util.function.Function;
38+
import java.util.function.Predicate;
39+
import java.util.stream.Collectors;
2440
import org.apache.polaris.core.PolarisCallContext;
2541
import org.apache.polaris.core.PolarisDiagnostics;
2642
import org.apache.polaris.core.entity.EntityNameLookupRecord;
@@ -62,23 +78,6 @@
6278
import org.slf4j.Logger;
6379
import org.slf4j.LoggerFactory;
6480

65-
import java.sql.Connection;
66-
import java.sql.SQLException;
67-
import java.util.ArrayList;
68-
import java.util.Collections;
69-
import java.util.HashMap;
70-
import java.util.LinkedHashMap;
71-
import java.util.List;
72-
import java.util.Map;
73-
import java.util.Objects;
74-
import java.util.Optional;
75-
import java.util.concurrent.atomic.AtomicReference;
76-
import java.util.function.Function;
77-
import java.util.function.Predicate;
78-
import java.util.stream.Collectors;
79-
80-
import static org.apache.polaris.persistence.relational.jdbc.QueryGenerator.PreparedQuery;
81-
8281
public class JdbcBasePersistenceImpl implements BasePersistence, IntegrationPersistence {
8382

8483
private static final Logger LOGGER = LoggerFactory.getLogger(JdbcBasePersistenceImpl.class);

polaris-core/src/main/java/org/apache/polaris/core/persistence/cache/InMemoryEntityCache.java

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,18 @@
2323
import com.github.benmanes.caffeine.cache.RemovalListener;
2424
import jakarta.annotation.Nonnull;
2525
import jakarta.annotation.Nullable;
26+
import java.util.AbstractMap;
27+
import java.util.ArrayList;
28+
import java.util.HashMap;
29+
import java.util.Iterator;
30+
import java.util.List;
31+
import java.util.Map;
32+
import java.util.Objects;
33+
import java.util.Optional;
34+
import java.util.concurrent.ConcurrentHashMap;
35+
import java.util.concurrent.TimeUnit;
36+
import java.util.function.Function;
37+
import java.util.stream.Collectors;
2638
import org.apache.polaris.core.PolarisCallContext;
2739
import org.apache.polaris.core.PolarisDiagnostics;
2840
import org.apache.polaris.core.config.BehaviorChangeConfiguration;
@@ -41,19 +53,6 @@
4153
import org.slf4j.Logger;
4254
import org.slf4j.LoggerFactory;
4355

44-
import java.util.AbstractMap;
45-
import java.util.ArrayList;
46-
import java.util.HashMap;
47-
import java.util.Iterator;
48-
import java.util.List;
49-
import java.util.Map;
50-
import java.util.Objects;
51-
import java.util.Optional;
52-
import java.util.concurrent.ConcurrentHashMap;
53-
import java.util.concurrent.TimeUnit;
54-
import java.util.function.Function;
55-
import java.util.stream.Collectors;
56-
5756
/** An in-memory entity cache with a limit of 100k entities and a 1h TTL. */
5857
public class InMemoryEntityCache implements EntityCache {
5958
private static final Logger LOGGER = LoggerFactory.getLogger(InMemoryEntityCache.class);

polaris-core/src/main/java/org/apache/polaris/core/persistence/transactional/TransactionalMetaStoreManagerImpl.java

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2314,28 +2314,28 @@ private static ResolvedEntitiesResult getResolvedEntitiesResult(
23142314
return entities.get(i);
23152315
}
23162316
})
2317-
.map(
2318-
e -> {
2319-
if (e == null) {
2320-
return null;
2321-
} else {
2322-
// load the grant records
2323-
final List<PolarisGrantRecord> grantRecordsAsSecurable =
2324-
ms.loadAllGrantRecordsOnSecurableInCurrentTxn(
2325-
callCtx, e.getCatalogId(), e.getId());
2326-
final List<PolarisGrantRecord> grantRecordsAsGrantee =
2327-
e.getType().isGrantee()
2328-
? ms.loadAllGrantRecordsOnGranteeInCurrentTxn(
2329-
callCtx, e.getCatalogId(), e.getId())
2330-
: List.of();
2331-
return new ResolvedPolarisEntity(
2332-
PolarisEntity.of(e), grantRecordsAsGrantee, grantRecordsAsSecurable);
2333-
}
2334-
})
2317+
.map(e -> toResolvedPolarisEntity(callCtx, e, ms))
23352318
.collect(Collectors.toList());
23362319
return new ResolvedEntitiesResult(ret);
23372320
}
23382321

2322+
private static ResolvedPolarisEntity toResolvedPolarisEntity(
2323+
PolarisCallContext callCtx, PolarisBaseEntity e, TransactionalPersistence ms) {
2324+
if (e == null) {
2325+
return null;
2326+
} else {
2327+
// load the grant records
2328+
final List<PolarisGrantRecord> grantRecordsAsSecurable =
2329+
ms.loadAllGrantRecordsOnSecurableInCurrentTxn(callCtx, e.getCatalogId(), e.getId());
2330+
final List<PolarisGrantRecord> grantRecordsAsGrantee =
2331+
e.getType().isGrantee()
2332+
? ms.loadAllGrantRecordsOnSecurableInCurrentTxn(callCtx, e.getCatalogId(), e.getId())
2333+
: List.of();
2334+
return new ResolvedPolarisEntity(
2335+
PolarisEntity.of(e), grantRecordsAsGrantee, grantRecordsAsSecurable);
2336+
}
2337+
}
2338+
23392339
@Nonnull
23402340
@Override
23412341
public ResolvedEntitiesResult loadResolvedEntities(

0 commit comments

Comments
 (0)