private void load(final ConfigurationManager confManager) {
        try (Cursor cursor = this.confTable.openCursor(null, new CursorConfig())) {
            DatabaseEntry key = new DatabaseEntry();
            DatabaseEntry data = new DatabaseEntry();
            OperationStatus operationStatus = cursor.getFirst(key, data, LockMode.DEFAULT);
            while (isSuccessOperation(operationStatus)) {
                final byte[] keyBytes = key.getData();
                final byte[] valueBytes = data.getData();
                if (keyBytes.length == Long.BYTES) {
                    final LogEntry entry = this.logEntryDecoder.decode(valueBytes);
                    if (entry != null) {
                        if (entry.getType() == EntryType.ENTRY_TYPE_CONFIGURATION) {
                            final ConfigurationEntry confEntry = new ConfigurationEntry();
                            confEntry.setId(new LogId(entry.getId().getIndex(), entry.getId().getTerm()));
                            confEntry.setConf(new Configuration(entry.getPeers(), entry.getLearners()));
                            if (entry.getOldPeers() != null) {
                                confEntry.setOldConf(new Configuration(entry.getOldPeers(), entry.getOldLearners()));
                            }
                            if (confManager != null) {
                                confManager.add(confEntry);
                            }
                        }
                    } else {
                        LOG.warn("Fail to decode conf entry at index {}, the log data is: {}.",
                            Bits.getLong(keyBytes, 0), BytesUtil.toHex(valueBytes));
                    }
                } else if (Arrays.equals(FIRST_LOG_IDX_KEY, keyBytes)) {
                    // FIRST_LOG_IDX_KEY storage
                    setFirstLogIndex(Bits.getLong(valueBytes, 0));
                    truncatePrefixInBackground(0L, this.firstLogIndex);
                } else {
                    // Unknown entry
                    LOG.warn("Unknown entry in configuration storage key={}, value={}.", BytesUtil.toHex(keyBytes),
                        BytesUtil.toHex(valueBytes));
                }
                operationStatus = cursor.getNext(key, data, LockMode.DEFAULT);
            }
        }
    }
First log index and last log index key in configuration column family.
jraft-extension/bdb-log-storage-impl/src/main/java/com/alipay/sofa/jraft/storage/impl/BDBLogStorage.java