diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2023-08-31 18:56:33 +0200 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2023-08-31 18:56:33 +0200 |
commit | 1e20822d51eae8e84f624a57063ca36396c4e780 (patch) | |
tree | 5680dc8c0f03f484b364f49ef258543899ee9927 /node-repository | |
parent | d2f7db5952f002e0ea0c929716430caa0289c8e1 (diff) |
Get TableToken on demand.
Diffstat (limited to 'node-repository')
-rw-r--r-- | node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/QuestMetricsDb.java | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/QuestMetricsDb.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/QuestMetricsDb.java index b735c766cb8..ac915e3fcf6 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/QuestMetricsDb.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/autoscale/QuestMetricsDb.java @@ -234,7 +234,7 @@ public class QuestMetricsDb extends AbstractComponent implements MetricsDb { private void ensureClusterTableIsUpdated() { try { - if (0 == engine().getStatus(newContext().getCairoSecurityContext(), new Path(), clusterTable.token)) { + if (0 == engine().getStatus(newContext().getCairoSecurityContext(), new Path(), clusterTable.token())) { // Example: clusterTable.ensureColumnExists("write_rate", "float"); } } catch (Exception e) { @@ -361,25 +361,26 @@ public class QuestMetricsDb extends AbstractComponent implements MetricsDb { private final Object writeLock = new Object(); private final String name; - private final TableToken token; private final File dir; private long highestTimestampAdded = 0; Table(String dataDir, String name) { this.name = name; - this.token = engine().getTableToken(name); this.dir = new File(dataDir, name); IOUtils.createDirectory(dir.getPath()); // https://stackoverflow.com/questions/67785629/what-does-max-txn-txn-inflight-limit-reached-in-questdb-and-how-to-i-avoid-it new File(dir + "/_txn_scoreboard").delete(); } + private TableToken token() { return engine().getTableToken(name); } boolean exists() { + TableToken token = engine().getTableTokenIfExists(name); + if (token == null) return false; return 0 == engine().getStatus(newContext().getCairoSecurityContext(), new Path(), token); } TableWriter getWriter() { - return engine().getWriter(newContext().getCairoSecurityContext(), token, "getWriter"); + return engine().getWriter(newContext().getCairoSecurityContext(), token(), "getWriter"); } void gc() { |