mirror of
https://github.com/MarginaliaSearch/MarginaliaSearch.git
synced 2025-02-24 05:18:58 +00:00
Revert "(loader) Optimize INSERT statements"
This reverts commit 7cb92195d1
.
This commit is contained in:
parent
7cb92195d1
commit
1847845151
@ -45,42 +45,24 @@ public class DomainLoaderService {
|
|||||||
DomainIdRegistry ret = new DomainIdRegistry();
|
DomainIdRegistry ret = new DomainIdRegistry();
|
||||||
|
|
||||||
try (var conn = dataSource.getConnection();
|
try (var conn = dataSource.getConnection();
|
||||||
var existingDomainNamesQuery = conn.prepareStatement("""
|
|
||||||
SELECT DOMAIN_NAME FROM EC_DOMAIN
|
|
||||||
""");
|
|
||||||
var selectStmt = conn.prepareStatement("""
|
var selectStmt = conn.prepareStatement("""
|
||||||
SELECT ID, DOMAIN_NAME FROM EC_DOMAIN WHERE DOMAIN_NAME=?
|
SELECT ID, DOMAIN_NAME FROM EC_DOMAIN WHERE DOMAIN_NAME=?
|
||||||
""")
|
""")
|
||||||
) {
|
) {
|
||||||
Set<EdgeDomain> existingDomainNames = new HashSet<>();
|
|
||||||
var existingDomainNamesRs = existingDomainNamesQuery.executeQuery();
|
|
||||||
while (existingDomainNamesRs.next()) {
|
|
||||||
existingDomainNames.add(new EdgeDomain(existingDomainNamesRs.getString(1)));
|
|
||||||
}
|
|
||||||
|
|
||||||
try (var inserter = new DomainInserter(conn, nodeId)) {
|
try (var inserter = new DomainInserter(conn, nodeId)) {
|
||||||
for (var domainName : readSetDomainNames(inputData)) {
|
for (var domain : readSetDomainNames(inputData)) {
|
||||||
var domain = new EdgeDomain(domainName);
|
inserter.accept(new EdgeDomain(domain));
|
||||||
if (existingDomainNames.contains(domain))
|
domainNamesAll.add(domain);
|
||||||
continue;
|
|
||||||
|
|
||||||
inserter.accept(domain);
|
|
||||||
domainNamesAll.add(domainName);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
try (var inserter = new DomainInserter(conn, -1)) {
|
try (var inserter = new DomainInserter(conn, -1)) {
|
||||||
for (var domainName : readReferencedDomainNames(inputData)) {
|
for (var domain : readReferencedDomainNames(inputData)) {
|
||||||
var domain = new EdgeDomain(domainName);
|
inserter.accept(new EdgeDomain(domain));
|
||||||
if (existingDomainNames.contains(domain))
|
domainNamesAll.add(domain);
|
||||||
continue;
|
|
||||||
|
|
||||||
inserter.accept(domain);
|
|
||||||
domainNamesAll.add(domainName);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
existingDomainNames.clear();
|
|
||||||
|
|
||||||
try (var updater = new DomainAffinityUpdater(conn, nodeId)) {
|
try (var updater = new DomainAffinityUpdater(conn, nodeId)) {
|
||||||
for (var domain : readSetDomainNames(inputData)) {
|
for (var domain : readSetDomainNames(inputData)) {
|
||||||
updater.accept(new EdgeDomain(domain));
|
updater.accept(new EdgeDomain(domain));
|
||||||
@ -182,7 +164,6 @@ public class DomainLoaderService {
|
|||||||
statement.close();
|
statement.close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class DomainAffinityUpdater implements AutoCloseable {
|
private static class DomainAffinityUpdater implements AutoCloseable {
|
||||||
private final PreparedStatement statement;
|
private final PreparedStatement statement;
|
||||||
private final int nodeAffinity;
|
private final int nodeAffinity;
|
||||||
|
Loading…
Reference in New Issue
Block a user