in teamcity-kubernetes-plugin-server/src/main/java/jetbrains/buildServer/clouds/kubernetes/KubePodNameGeneratorImpl.java [82:103]
private void storeIdxes() {
// wait for generation operations to finish:
try {
if (!myLock.writeLock().tryLock(100, TimeUnit.MILLISECONDS)) {
Loggers.AGENT.warn("Waited more than 100ms to store Kube indexes");
}
for (Map.Entry<String, AtomicBoolean> entry : myIdxTouchedMaps.entrySet()) {
if (entry.getValue().compareAndSet(true, false)) {
final AtomicInteger counter = myCounters.get(entry.getKey());
try {
final File idxFile = new File(myIdxStorage, entry.getKey() + ".idx");
FileUtil.writeViaTmpFile(idxFile, new ByteArrayInputStream(String.valueOf(counter.get()).getBytes()), FileUtil.IOAction.DO_NOTHING);
} catch (IOException ignored) {
}
}
}
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
myLock.writeLock().unlock();
}
}