From af674919e7e5fbd25db69cf04815904fffdb0731 Mon Sep 17 00:00:00 2001 From: Rsl1122 Date: Sat, 2 Feb 2019 12:18:46 +0200 Subject: [PATCH] Refactored TPSTable#insertTPS to a transaction: - Removed TPSInsertProcessor --- .../tasks/bukkit/BukkitTPSCountTimer.java | 10 ++-- .../tasks/bungee/BungeeTPSCountTimer.java | 10 ++-- .../db/access/queries/DataStoreQueries.java | 25 ++++++++++ .../events/TPSStoreTransaction.java} | 48 ++++++++++--------- .../plan/db/sql/tables/TPSTable.java | 29 ++--------- .../databases/operation/SaveOperations.java | 3 -- .../databases/sql/operation/SQLSaveOps.java | 5 -- .../processing/processors/Processors.java | 15 +----- .../plan/system/tasks/TPSCountTimer.java | 22 +++++---- .../com/djrapitops/plan/db/CommonDBTest.java | 4 +- .../tasks/sponge/SpongeTPSCountTimer.java | 10 ++-- .../tasks/velocity/VelocityTPSCountTimer.java | 10 ++-- 12 files changed, 90 insertions(+), 101 deletions(-) rename Plan/common/src/main/java/com/djrapitops/plan/{system/processing/processors/TPSInsertProcessor.java => db/access/transactions/events/TPSStoreTransaction.java} (58%) diff --git a/Plan/bukkit/src/main/java/com/djrapitops/plan/system/tasks/bukkit/BukkitTPSCountTimer.java b/Plan/bukkit/src/main/java/com/djrapitops/plan/system/tasks/bukkit/BukkitTPSCountTimer.java index cc7a7c45c..fd1b1206f 100644 --- a/Plan/bukkit/src/main/java/com/djrapitops/plan/system/tasks/bukkit/BukkitTPSCountTimer.java +++ b/Plan/bukkit/src/main/java/com/djrapitops/plan/system/tasks/bukkit/BukkitTPSCountTimer.java @@ -19,9 +19,9 @@ package com.djrapitops.plan.system.tasks.bukkit; import com.djrapitops.plan.Plan; import com.djrapitops.plan.data.container.TPS; import com.djrapitops.plan.data.container.builders.TPSBuilder; +import com.djrapitops.plan.system.database.DBSystem; +import com.djrapitops.plan.system.info.server.ServerInfo; import com.djrapitops.plan.system.info.server.properties.ServerProperties; -import com.djrapitops.plan.system.processing.Processing; -import com.djrapitops.plan.system.processing.processors.Processors; import com.djrapitops.plan.system.tasks.TPSCountTimer; import com.djrapitops.plugin.logging.console.PluginLogger; import com.djrapitops.plugin.logging.error.ErrorHandler; @@ -41,13 +41,13 @@ public class BukkitTPSCountTimer extends TPSCountTimer { @Inject public BukkitTPSCountTimer( Plan plugin, - Processors processors, - Processing processing, + DBSystem dbSystem, + ServerInfo serverInfo, ServerProperties serverProperties, PluginLogger logger, ErrorHandler errorHandler ) { - super(processors, processing, logger, errorHandler); + super(dbSystem, serverInfo, logger, errorHandler); this.plugin = plugin; this.serverProperties = serverProperties; lastCheckNano = -1; diff --git a/Plan/bungeecord/src/main/java/com/djrapitops/plan/system/tasks/bungee/BungeeTPSCountTimer.java b/Plan/bungeecord/src/main/java/com/djrapitops/plan/system/tasks/bungee/BungeeTPSCountTimer.java index 277e9e7b6..57f249b3e 100644 --- a/Plan/bungeecord/src/main/java/com/djrapitops/plan/system/tasks/bungee/BungeeTPSCountTimer.java +++ b/Plan/bungeecord/src/main/java/com/djrapitops/plan/system/tasks/bungee/BungeeTPSCountTimer.java @@ -18,9 +18,9 @@ package com.djrapitops.plan.system.tasks.bungee; import com.djrapitops.plan.data.container.TPS; import com.djrapitops.plan.data.container.builders.TPSBuilder; +import com.djrapitops.plan.system.database.DBSystem; +import com.djrapitops.plan.system.info.server.ServerInfo; import com.djrapitops.plan.system.info.server.properties.ServerProperties; -import com.djrapitops.plan.system.processing.Processing; -import com.djrapitops.plan.system.processing.processors.Processors; import com.djrapitops.plan.system.tasks.TPSCountTimer; import com.djrapitops.plugin.logging.console.PluginLogger; import com.djrapitops.plugin.logging.error.ErrorHandler; @@ -35,13 +35,13 @@ public class BungeeTPSCountTimer extends TPSCountTimer { @Inject public BungeeTPSCountTimer( - Processors processors, - Processing processing, + DBSystem dbSystem, + ServerInfo serverInfo, ServerProperties serverProperties, PluginLogger logger, ErrorHandler errorHandler ) { - super(processors, processing, logger, errorHandler); + super(dbSystem, serverInfo, logger, errorHandler); this.serverProperties = serverProperties; } diff --git a/Plan/common/src/main/java/com/djrapitops/plan/db/access/queries/DataStoreQueries.java b/Plan/common/src/main/java/com/djrapitops/plan/db/access/queries/DataStoreQueries.java index e4327da1d..5bc4a263a 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/db/access/queries/DataStoreQueries.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/db/access/queries/DataStoreQueries.java @@ -19,6 +19,7 @@ package com.djrapitops.plan.db.access.queries; import com.djrapitops.plan.data.container.GeoInfo; import com.djrapitops.plan.data.container.Ping; import com.djrapitops.plan.data.container.Session; +import com.djrapitops.plan.data.container.TPS; import com.djrapitops.plan.data.store.keys.SessionKeys; import com.djrapitops.plan.data.time.GMTimes; import com.djrapitops.plan.db.access.ExecBatchStatement; @@ -262,4 +263,28 @@ public class DataStoreQueries { } }; } + + /** + * Store TPS data of a server. + * + * @param serverUUID UUID of the Plan server. + * @param tps TPS data entry + * @return Executable, use inside a {@link com.djrapitops.plan.db.access.transactions.Transaction} + */ + public static Executable storeTPS(UUID serverUUID, TPS tps) { + return new ExecStatement(TPSTable.INSERT_STATEMENT) { + @Override + public void prepare(PreparedStatement statement) throws SQLException { + statement.setString(1, serverUUID.toString()); + statement.setLong(2, tps.getDate()); + statement.setDouble(3, tps.getTicksPerSecond()); + statement.setInt(4, tps.getPlayers()); + statement.setDouble(5, tps.getCPUUsage()); + statement.setLong(6, tps.getUsedMemory()); + statement.setDouble(7, tps.getEntityCount()); + statement.setDouble(8, tps.getChunksLoaded()); + statement.setLong(9, tps.getFreeDiskSpace()); + } + }; + } } \ No newline at end of file diff --git a/Plan/common/src/main/java/com/djrapitops/plan/system/processing/processors/TPSInsertProcessor.java b/Plan/common/src/main/java/com/djrapitops/plan/db/access/transactions/events/TPSStoreTransaction.java similarity index 58% rename from Plan/common/src/main/java/com/djrapitops/plan/system/processing/processors/TPSInsertProcessor.java rename to Plan/common/src/main/java/com/djrapitops/plan/db/access/transactions/events/TPSStoreTransaction.java index c963913f0..2b4b1852a 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/system/processing/processors/TPSInsertProcessor.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/db/access/transactions/events/TPSStoreTransaction.java @@ -14,44 +14,48 @@ * You should have received a copy of the GNU Lesser General Public License * along with Plan. If not, see . */ -package com.djrapitops.plan.system.processing.processors; +package com.djrapitops.plan.db.access.transactions.events; import com.djrapitops.plan.data.container.TPS; import com.djrapitops.plan.data.container.builders.TPSBuilder; -import com.djrapitops.plan.db.Database; -import com.djrapitops.plan.system.processing.CriticalRunnable; +import com.djrapitops.plan.db.access.queries.DataStoreQueries; +import com.djrapitops.plan.db.access.transactions.Transaction; import java.util.List; +import java.util.UUID; /** - * Processes 60s average of a TPS list. + * Transaction to store server's TPS data. * * @author Rsl1122 */ -public class TPSInsertProcessor implements CriticalRunnable { +public class TPSStoreTransaction extends Transaction { + private final UUID serverUUID; private final List tpsList; - private final Database database; - - TPSInsertProcessor(List tpsList, Database database) { + public TPSStoreTransaction(UUID serverUUID, List tpsList) { + this.serverUUID = serverUUID; this.tpsList = tpsList; - this.database = database; } @Override - public void run() { - List history = tpsList; - long lastDate = history.get(history.size() - 1).getDate(); - double averageTPS = history.stream().mapToDouble(TPS::getTicksPerSecond).average().orElse(0); - int peakPlayersOnline = history.stream().mapToInt(TPS::getPlayers).max().orElse(0); - double averageCPUUsage = history.stream().mapToDouble(TPS::getCPUUsage).average().orElse(0); - long averageUsedMemory = (long) history.stream().mapToLong(TPS::getUsedMemory).average().orElse(0); - int averageEntityCount = (int) history.stream().mapToInt(TPS::getEntityCount).average().orElse(0); - int averageChunksLoaded = (int) history.stream().mapToInt(TPS::getChunksLoaded).average().orElse(0); - long freeDiskSpace = (long) history.stream().mapToLong(TPS::getFreeDiskSpace).average().orElse(0); + protected void performOperations() { + TPS tps = calculateTPS(); + execute(DataStoreQueries.storeTPS(serverUUID, tps)); + } - TPS tps = TPSBuilder.get() + private TPS calculateTPS() { + long lastDate = tpsList.get(tpsList.size() - 1).getDate(); + double averageTPS = tpsList.stream().mapToDouble(TPS::getTicksPerSecond).average().orElse(0); + int peakPlayersOnline = tpsList.stream().mapToInt(TPS::getPlayers).max().orElse(0); + double averageCPUUsage = tpsList.stream().mapToDouble(TPS::getCPUUsage).average().orElse(0); + long averageUsedMemory = (long) tpsList.stream().mapToLong(TPS::getUsedMemory).average().orElse(0); + int averageEntityCount = (int) tpsList.stream().mapToInt(TPS::getEntityCount).average().orElse(0); + int averageChunksLoaded = (int) tpsList.stream().mapToInt(TPS::getChunksLoaded).average().orElse(0); + long freeDiskSpace = (long) tpsList.stream().mapToLong(TPS::getFreeDiskSpace).average().orElse(0); + + return TPSBuilder.get() .date(lastDate) .tps(averageTPS) .playersOnline(peakPlayersOnline) @@ -61,7 +65,5 @@ public class TPSInsertProcessor implements CriticalRunnable { .chunksLoaded(averageChunksLoaded) .freeDiskSpace(freeDiskSpace) .toTPS(); - - database.save().insertTPSforThisServer(tps); } -} +} \ No newline at end of file diff --git a/Plan/common/src/main/java/com/djrapitops/plan/db/sql/tables/TPSTable.java b/Plan/common/src/main/java/com/djrapitops/plan/db/sql/tables/TPSTable.java index ae6d28950..387b50ddb 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/db/sql/tables/TPSTable.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/db/sql/tables/TPSTable.java @@ -20,7 +20,6 @@ import com.djrapitops.plan.data.container.TPS; import com.djrapitops.plan.data.container.builders.TPSBuilder; import com.djrapitops.plan.db.DBType; import com.djrapitops.plan.db.SQLDB; -import com.djrapitops.plan.db.access.ExecStatement; import com.djrapitops.plan.db.access.QueryAllStatement; import com.djrapitops.plan.db.access.QueryStatement; import com.djrapitops.plan.db.access.queries.OptionalFetchQueries; @@ -73,11 +72,8 @@ public class TPSTable extends Table { public TPSTable(SQLDB db) { super(TABLE_NAME, db); - serverTable = db.getServerTable(); } - private final ServerTable serverTable; - public static String createTableSQL(DBType dbType) { return CreateTableParser.create(TABLE_NAME, dbType) .column(SERVER_ID, Sql.INT).notNull() @@ -95,7 +91,7 @@ public class TPSTable extends Table { public List getTPSData(UUID serverUUID) { String sql = Select.all(tableName) - .where(SERVER_ID + "=" + serverTable.statementSelectServerID) + .where(SERVER_ID + "=" + ServerTable.STATEMENT_SELECT_SERVER_ID) .toString(); return query(new QueryStatement>(sql, 50000) { @@ -127,23 +123,6 @@ public class TPSTable extends Table { }); } - public void insertTPS(TPS tps) { - execute(new ExecStatement(INSERT_STATEMENT) { - @Override - public void prepare(PreparedStatement statement) throws SQLException { - statement.setString(1, getServerUUID().toString()); - statement.setLong(2, tps.getDate()); - statement.setDouble(3, tps.getTicksPerSecond()); - statement.setInt(4, tps.getPlayers()); - statement.setDouble(5, tps.getCPUUsage()); - statement.setLong(6, tps.getUsedMemory()); - statement.setDouble(7, tps.getEntityCount()); - statement.setDouble(8, tps.getChunksLoaded()); - statement.setLong(9, tps.getFreeDiskSpace()); - } - }); - } - public List getNetworkOnlineData() { Optional proxyInfo = db.query(OptionalFetchQueries.fetchProxyServerInformation()); if (!proxyInfo.isPresent()) { @@ -154,8 +133,8 @@ public class TPSTable extends Table { String sql = "SELECT " + DATE + ", " + PLAYERS_ONLINE + - " FROM " + tableName + - " WHERE " + SERVER_ID + "=" + serverTable.statementSelectServerID; + " FROM " + TABLE_NAME + + " WHERE " + SERVER_ID + "=" + ServerTable.STATEMENT_SELECT_SERVER_ID; return query(new QueryStatement>(sql, 50000) { @Override @@ -188,7 +167,7 @@ public class TPSTable extends Table { sql.append(SERVER_ID).append(", ") .append(DATE).append(", ") .append(PLAYERS_ONLINE) - .append(" FROM ").append(tableName) + .append(" FROM ").append(TABLE_NAME) .append(" WHERE ") .append(DATE).append(">").append(System.currentTimeMillis() - TimeAmount.WEEK.toMillis(2L)) .append(" AND ("); diff --git a/Plan/common/src/main/java/com/djrapitops/plan/system/database/databases/operation/SaveOperations.java b/Plan/common/src/main/java/com/djrapitops/plan/system/database/databases/operation/SaveOperations.java index 75a48a266..37345965d 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/system/database/databases/operation/SaveOperations.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/system/database/databases/operation/SaveOperations.java @@ -78,9 +78,6 @@ public interface SaveOperations { @Deprecated void playerDisplayName(UUID uuid, Nickname nickname); - @Deprecated - void insertTPSforThisServer(TPS tps); - @Deprecated void session(UUID uuid, Session session); diff --git a/Plan/common/src/main/java/com/djrapitops/plan/system/database/databases/sql/operation/SQLSaveOps.java b/Plan/common/src/main/java/com/djrapitops/plan/system/database/databases/sql/operation/SQLSaveOps.java index 28b0b55fa..484215b25 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/system/database/databases/sql/operation/SQLSaveOps.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/system/database/databases/sql/operation/SQLSaveOps.java @@ -146,11 +146,6 @@ public class SQLSaveOps extends SQLOps implements SaveOperations { nicknamesTable.saveUserName(uuid, nickname); } - @Override - public void insertTPSforThisServer(TPS tps) { - tpsTable.insertTPS(tps); - } - @Override public void session(UUID uuid, Session session) { db.executeTransaction(new Transaction() { diff --git a/Plan/common/src/main/java/com/djrapitops/plan/system/processing/processors/Processors.java b/Plan/common/src/main/java/com/djrapitops/plan/system/processing/processors/Processors.java index 11ae0f820..c06f07b5d 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/system/processing/processors/Processors.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/system/processing/processors/Processors.java @@ -16,15 +16,11 @@ */ package com.djrapitops.plan.system.processing.processors; -import com.djrapitops.plan.data.container.TPS; -import com.djrapitops.plan.system.database.DBSystem; import com.djrapitops.plan.system.processing.processors.info.InfoProcessors; import com.djrapitops.plan.system.processing.processors.player.PlayerProcessors; -import dagger.Lazy; import javax.inject.Inject; import javax.inject.Singleton; -import java.util.List; /** * Factory for creating Runnables to run with {@link com.djrapitops.plan.system.processing.Processing}. @@ -37,22 +33,13 @@ public class Processors { private final PlayerProcessors playerProcessors; private final InfoProcessors infoProcessors; - private final Lazy dbSystem; - @Inject public Processors( PlayerProcessors playerProcessors, - InfoProcessors infoProcessors, - - Lazy dbSystem + InfoProcessors infoProcessors ) { this.playerProcessors = playerProcessors; this.infoProcessors = infoProcessors; - this.dbSystem = dbSystem; - } - - public TPSInsertProcessor tpsInsertProcessor(List tpsList) { - return new TPSInsertProcessor(tpsList, dbSystem.get().getDatabase()); } public PlayerProcessors player() { diff --git a/Plan/common/src/main/java/com/djrapitops/plan/system/tasks/TPSCountTimer.java b/Plan/common/src/main/java/com/djrapitops/plan/system/tasks/TPSCountTimer.java index 494f6f9e3..80b7c8d10 100644 --- a/Plan/common/src/main/java/com/djrapitops/plan/system/tasks/TPSCountTimer.java +++ b/Plan/common/src/main/java/com/djrapitops/plan/system/tasks/TPSCountTimer.java @@ -17,8 +17,9 @@ package com.djrapitops.plan.system.tasks; import com.djrapitops.plan.data.container.TPS; -import com.djrapitops.plan.system.processing.Processing; -import com.djrapitops.plan.system.processing.processors.Processors; +import com.djrapitops.plan.db.access.transactions.events.TPSStoreTransaction; +import com.djrapitops.plan.system.database.DBSystem; +import com.djrapitops.plan.system.info.server.ServerInfo; import com.djrapitops.plugin.logging.L; import com.djrapitops.plugin.logging.console.PluginLogger; import com.djrapitops.plugin.logging.error.ErrorHandler; @@ -39,8 +40,8 @@ public abstract class TPSCountTimer extends AbsRunnable { protected final List history; - protected final Processors processors; - protected final Processing processing; + protected final DBSystem dbSystem; + protected final ServerInfo serverInfo; protected final PluginLogger logger; protected final ErrorHandler errorHandler; @@ -49,13 +50,13 @@ public abstract class TPSCountTimer extends AbsRunnable { protected int latestPlayersOnline = 0; public TPSCountTimer( - Processors processors, - Processing processing, + DBSystem dbSystem, + ServerInfo serverInfo, PluginLogger logger, ErrorHandler errorHandler ) { - this.processors = processors; - this.processing = processing; + this.dbSystem = dbSystem; + this.serverInfo = serverInfo; this.logger = logger; this.errorHandler = errorHandler; history = new ArrayList<>(); @@ -70,7 +71,10 @@ public abstract class TPSCountTimer extends AbsRunnable { addNewTPSEntry(nanoTime, now); if (history.size() >= 60) { - processing.submit(processors.tpsInsertProcessor(new ArrayList<>(history))); + dbSystem.getDatabase().executeTransaction(new TPSStoreTransaction( + serverInfo.getServerUUID(), + new ArrayList<>(history) + )); history.clear(); } } catch (Exception | NoClassDefFoundError | NoSuchMethodError | NoSuchFieldError e) { diff --git a/Plan/common/src/test/java/com/djrapitops/plan/db/CommonDBTest.java b/Plan/common/src/test/java/com/djrapitops/plan/db/CommonDBTest.java index 45964fcfe..e2fd8b803 100644 --- a/Plan/common/src/test/java/com/djrapitops/plan/db/CommonDBTest.java +++ b/Plan/common/src/test/java/com/djrapitops/plan/db/CommonDBTest.java @@ -215,7 +215,7 @@ public abstract class CommonDBTest { } for (TPS tps : expected) { - tpsTable.insertTPS(tps); + execute(DataStoreQueries.storeTPS(serverUUID, tps)); } commitTest(); @@ -558,7 +558,7 @@ public abstract class CommonDBTest { expected.add(new TPS(r.nextLong(), r.nextDouble(), r.nextInt(100000000), averageCPUUsage, usedMemory, entityCount, chunksLoaded, freeDiskSpace)); expected.add(new TPS(r.nextLong(), r.nextDouble(), r.nextInt(100000000), averageCPUUsage, usedMemory, entityCount, chunksLoaded, freeDiskSpace)); for (TPS tps : expected) { - tpsTable.insertTPS(tps); + execute(DataStoreQueries.storeTPS(serverUUID, tps)); } db.executeTransaction(new PingStoreTransaction( diff --git a/Plan/sponge/src/main/java/com/djrapitops/plan/system/tasks/sponge/SpongeTPSCountTimer.java b/Plan/sponge/src/main/java/com/djrapitops/plan/system/tasks/sponge/SpongeTPSCountTimer.java index 886462a6b..f754a8436 100644 --- a/Plan/sponge/src/main/java/com/djrapitops/plan/system/tasks/sponge/SpongeTPSCountTimer.java +++ b/Plan/sponge/src/main/java/com/djrapitops/plan/system/tasks/sponge/SpongeTPSCountTimer.java @@ -19,9 +19,9 @@ package com.djrapitops.plan.system.tasks.sponge; import com.djrapitops.plan.PlanSponge; import com.djrapitops.plan.data.container.TPS; import com.djrapitops.plan.data.container.builders.TPSBuilder; +import com.djrapitops.plan.system.database.DBSystem; +import com.djrapitops.plan.system.info.server.ServerInfo; import com.djrapitops.plan.system.info.server.properties.ServerProperties; -import com.djrapitops.plan.system.processing.Processing; -import com.djrapitops.plan.system.processing.processors.Processors; import com.djrapitops.plan.system.tasks.TPSCountTimer; import com.djrapitops.plugin.logging.console.PluginLogger; import com.djrapitops.plugin.logging.error.ErrorHandler; @@ -40,13 +40,13 @@ public class SpongeTPSCountTimer extends TPSCountTimer { @Inject public SpongeTPSCountTimer( PlanSponge plugin, - Processors processors, - Processing processing, + DBSystem dbSystem, + ServerInfo serverInfo, ServerProperties serverProperties, PluginLogger logger, ErrorHandler errorHandler ) { - super(processors, processing, logger, errorHandler); + super(dbSystem, serverInfo, logger, errorHandler); this.plugin = plugin; this.serverProperties = serverProperties; lastCheckNano = -1; diff --git a/Plan/velocity/src/main/java/com/djrapitops/plan/system/tasks/velocity/VelocityTPSCountTimer.java b/Plan/velocity/src/main/java/com/djrapitops/plan/system/tasks/velocity/VelocityTPSCountTimer.java index f2339a4e4..971edb3ca 100644 --- a/Plan/velocity/src/main/java/com/djrapitops/plan/system/tasks/velocity/VelocityTPSCountTimer.java +++ b/Plan/velocity/src/main/java/com/djrapitops/plan/system/tasks/velocity/VelocityTPSCountTimer.java @@ -18,9 +18,9 @@ package com.djrapitops.plan.system.tasks.velocity; import com.djrapitops.plan.data.container.TPS; import com.djrapitops.plan.data.container.builders.TPSBuilder; +import com.djrapitops.plan.system.database.DBSystem; +import com.djrapitops.plan.system.info.server.ServerInfo; import com.djrapitops.plan.system.info.server.properties.ServerProperties; -import com.djrapitops.plan.system.processing.Processing; -import com.djrapitops.plan.system.processing.processors.Processors; import com.djrapitops.plan.system.tasks.TPSCountTimer; import com.djrapitops.plugin.logging.console.PluginLogger; import com.djrapitops.plugin.logging.error.ErrorHandler; @@ -35,13 +35,13 @@ public class VelocityTPSCountTimer extends TPSCountTimer { @Inject public VelocityTPSCountTimer( - Processors processors, - Processing processing, + DBSystem dbSystem, + ServerInfo serverInfo, ServerProperties serverProperties, PluginLogger logger, ErrorHandler errorHandler ) { - super(processors, processing, logger, errorHandler); + super(dbSystem, serverInfo, logger, errorHandler); this.serverProperties = serverProperties; }