code: public synchronized ListenableFuture<PagesSpatialIndex> createPagesSpatialIndex()
      {
          activeProbeOperators.retain();
  
          if (pagesSpatialIndex != null) {
              return immediateFuture(pagesSpatialIndex.get());
          }
  
          SettableFuture<PagesSpatialIndex> future = SettableFuture.create();
          pagesSpatialIndexFutures.add(future);
          return future;
      }
docs: Called by {@link SpatialJoinOperator}.
  <p>
  {@link SpatialJoinOperator} must call {@link #probeOperatorFinished()} on completion
  to signal that spatial index is no longer needed.