code: @Override
      public void put(String spaceId, String key, byte[] value, IPutCallback<byte[]> callback) {
          try {
              Document _doc = createDocument(spaceId, key);
              _doc.add(new StoredField(FIELD_VALUE, value));
              IndexWriter indexWriter = getIndexWriter();
              indexWriter.updateDocument(buildIdTerm(spaceId, key), _doc);
              if (!isAsyncWrite()) {
                  indexWriter.commit();
              } else if (getIndexManager().getBackgroundCommitIndexPeriodMs() <= 0) {
                  LOGGER.warn("Async-write is enable, autoCommitPeriodMs must be larger than 0!");
              }
              if (callback != null) {
                  callback.onSuccess(spaceId, key, value);
              }
          } catch (Throwable t) {
              if (callback != null) {
                  callback.onError(spaceId, key, value, t);
              }
          }
      }
docs: {@inheritDoc}