private void storeIdxes()

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();
    }
  }