docs: @Override
  	public void close() {
  		// make sure that we close only once
  		synchronized (this.stateLock) {
  			if (this.closed) {
  				return;
  			}
  			this.closed = true;
  		}
  		
  		LOG.debug("Closing hash table and releasing resources.");
  		
  		// release the table structure
  		releaseTable();
  		
  		// clear the memory in the partitions
  		clearPartitions();
  	}