docs: private void ensureRocksDBIsLoaded(String tempDirectory) throws IOException {
  		synchronized (RocksDBStateBackend.class) {
  			if (!rocksDbInitialized) {
  
  				final File tempDirParent = new File(tempDirectory).getAbsoluteFile();
  				LOG.info("Attempting to load RocksDB native library and store it under '{}'", tempDirParent);
  
  				Throwable lastException = null;
  				for (int attempt = 1; attempt <= ROCKSDB_LIB_LOADING_ATTEMPTS; attempt++) {
  					try {
  						// when multiple instances of this class and RocksDB exist in different
  						// class loaders, then we can see the following exception:
  						// "java.lang.UnsatisfiedLinkError: Native Library /path/to/temp/dir/librocksdbjni-linux64.so
  						// already loaded in another class loader"
  
  						// to avoid that, we need to add a random element to the library file path
  						// (I know, seems like an unnecessary hack, since the JVM obviously can handle multiple
  						//  instances of the same JNI library being loaded in different class loaders, but
  						//  apparently not when coming from the same file path, so there we go)
  
  						final File rocksLibFolder = new File(tempDirParent, "rocksdb-lib-" + new AbstractID());
  
  						// make sure the temp path exists
  						LOG.debug("Attempting to create RocksDB native library folder {}", rocksLibFolder);
  						// noinspection ResultOfMethodCallIgnored
  						rocksLibFolder.mkdirs();
  
  						// explicitly load the JNI dependency if it has not been loaded before
  						NativeLibraryLoader.getInstance().loadLibrary(rocksLibFolder.getAbsolutePath());
  
  						// this initialization here should validate that the loading succeeded
  						RocksDB.loadLibrary();
  
  						// seems to have worked
  						LOG.info("Successfully loaded RocksDB native library");
  						rocksDbInitialized = true;
  						return;
  					}
  					catch (Throwable t) {
  						lastException = t;
  						LOG.debug("RocksDB JNI library loading attempt {} failed", attempt, t);
  
  						// try to force RocksDB to attempt reloading the library
  						try {
  							resetRocksDBLoadedFlag();
  						} catch (Throwable tt) {
  							LOG.debug("Failed to reset 'initialized' flag in RocksDB native code loader", tt);
  						}
  					}
  				}
  
  				throw new IOException("Could not load the native RocksDB library", lastException);
  			}
  		}
  	}