This is an automated email from the ASF dual-hosted git repository. bchapuis pushed a commit to branch optimize-postgres-tilestore in repository https://gitbox.apache.org/repos/asf/incubator-baremaps.git
commit 3958d9c98e5dbabb36cae43c9ee4d58d3be6bf3a Author: Bertil Chapuis <[email protected]> AuthorDate: Sun Oct 22 22:43:18 2023 +0200 Fix minor issues --- .../tilestore/postgres/PostgresTileStore.java | 25 +++++++++++----------- .../org/apache/baremaps/utils/SqliteUtils.java | 13 ++++++----- .../baremaps/workflow/tasks/ExportVectorTiles.java | 1 - 3 files changed, 18 insertions(+), 21 deletions(-) diff --git a/baremaps-core/src/main/java/org/apache/baremaps/tilestore/postgres/PostgresTileStore.java b/baremaps-core/src/main/java/org/apache/baremaps/tilestore/postgres/PostgresTileStore.java index cca0d304..c10c69eb 100644 --- a/baremaps-core/src/main/java/org/apache/baremaps/tilestore/postgres/PostgresTileStore.java +++ b/baremaps-core/src/main/java/org/apache/baremaps/tilestore/postgres/PostgresTileStore.java @@ -18,15 +18,6 @@ package org.apache.baremaps.tilestore.postgres; -import org.apache.baremaps.tilestore.TileCoord; -import org.apache.baremaps.tilestore.TileStore; -import org.apache.baremaps.tilestore.TileStoreException; -import org.apache.baremaps.vectortile.tileset.Tileset; -import org.apache.baremaps.vectortile.tileset.TilesetQuery; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import javax.sql.DataSource; import java.io.ByteArrayOutputStream; import java.io.OutputStream; import java.nio.ByteBuffer; @@ -35,6 +26,14 @@ import java.sql.ResultSet; import java.sql.Statement; import java.util.Map; import java.util.zip.GZIPOutputStream; +import javax.sql.DataSource; +import org.apache.baremaps.tilestore.TileCoord; +import org.apache.baremaps.tilestore.TileStore; +import org.apache.baremaps.tilestore.TileStoreException; +import org.apache.baremaps.vectortile.tileset.Tileset; +import org.apache.baremaps.vectortile.tileset.TilesetQuery; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * A read-only {@code TileStore} implementation that uses the PostgreSQL to generate vector tiles. @@ -90,7 +89,7 @@ public class PostgresTileStore implements TileStore { for (int j = 0; j < layerQueries.size(); j++) { if (j != 0) { - sqlBuilder.append("\n UNION \n"); + sqlBuilder.append("UNION\n"); } var layerQuery = layerQueries.get(j).getSql().replace(";", ""); sqlBuilder.append(String.format(""" @@ -121,12 +120,12 @@ public class PostgresTileStore implements TileStore { long start = System.currentTimeMillis(); try (Connection connection = datasource.getConnection(); - Statement statement = connection.createStatement(); - ResultSet resultSet = statement.executeQuery(query)) { + Statement statement = connection.createStatement(); + ResultSet resultSet = statement.executeQuery(query)) { int length = 0; try (ByteArrayOutputStream data = new ByteArrayOutputStream(); - OutputStream gzip = new GZIPOutputStream(data)) { + OutputStream gzip = new GZIPOutputStream(data)) { while (resultSet.next()) { byte[] bytes = resultSet.getBytes(1); diff --git a/baremaps-core/src/main/java/org/apache/baremaps/utils/SqliteUtils.java b/baremaps-core/src/main/java/org/apache/baremaps/utils/SqliteUtils.java index a0677b28..d9c7d151 100644 --- a/baremaps-core/src/main/java/org/apache/baremaps/utils/SqliteUtils.java +++ b/baremaps-core/src/main/java/org/apache/baremaps/utils/SqliteUtils.java @@ -20,6 +20,8 @@ package org.apache.baremaps.utils; import com.google.common.io.Resources; +import com.zaxxer.hikari.HikariConfig; +import com.zaxxer.hikari.HikariDataSource; import java.io.IOException; import java.net.URL; import java.nio.charset.StandardCharsets; @@ -29,9 +31,6 @@ import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; import javax.sql.DataSource; - -import com.zaxxer.hikari.HikariConfig; -import com.zaxxer.hikari.HikariDataSource; import org.sqlite.SQLiteConfig; import org.sqlite.SQLiteConfig.JournalMode; import org.sqlite.SQLiteConfig.LockingMode; @@ -64,11 +63,11 @@ public final class SqliteUtils { sqliteDataSource.setConfig(sqliteConfig); sqliteDataSource.setUrl("jdbc:sqlite:" + path.toAbsolutePath()); - var hikariConfig = new HikariConfig(); - hikariConfig.setDataSource(sqliteDataSource); - hikariConfig.setMaximumPoolSize(readOnly ? Runtime.getRuntime().availableProcessors() : 1); + var hikariConfig = new HikariConfig(); + hikariConfig.setDataSource(sqliteDataSource); + hikariConfig.setMaximumPoolSize(readOnly ? Runtime.getRuntime().availableProcessors() : 1); - return new HikariDataSource(hikariConfig); + return new HikariDataSource(hikariConfig); } /** diff --git a/baremaps-core/src/main/java/org/apache/baremaps/workflow/tasks/ExportVectorTiles.java b/baremaps-core/src/main/java/org/apache/baremaps/workflow/tasks/ExportVectorTiles.java index 59c24019..3f5e1854 100644 --- a/baremaps-core/src/main/java/org/apache/baremaps/workflow/tasks/ExportVectorTiles.java +++ b/baremaps-core/src/main/java/org/apache/baremaps/workflow/tasks/ExportVectorTiles.java @@ -76,7 +76,6 @@ public record ExportVectorTiles( var count = TileCoord.count(envelope, tileset.getMinzoom(), tileset.getMaxzoom()); var start = System.currentTimeMillis(); - var tileCoordIterator = TileCoord.iterator(envelope, tileset.getMinzoom(), tileset.getMaxzoom()); var tileCoordStream =
