@Override
  public void callFailure(
      final SendableInsert insert, final LowLevelPutException e, int prio, boolean persistent) {
    if (!persistent) {
      insert.onFailure(e, null, null, clientContext);
    } else {
      try {
        jobRunner.queue(
            new DBJob() {

              @Override
              public boolean run(ObjectContainer container, ClientContext context) {
                if (container.ext().isActive(insert))
                  Logger.error(this, "ALREADY ACTIVE: " + insert + " in callFailure(insert)");
                container.activate(insert, 1);
                insert.onFailure(e, null, container, context);
                container.deactivate(insert, 1);
                return false;
              }

              @Override
              public String toString() {
                return "SendableInsert onFailure";
              }
            },
            prio,
            false);
      } catch (DatabaseDisabledException e1) {
        Logger.error(
            this,
            "callFailure() on a persistent request but database disabled",
            new Exception("error"));
      }
    }
  }