@Override public void register(final StateStore store, final StateRestoreCallback stateRestoreCallback) { delegate.register(store, stateRestoreCallback); }
@Override public void init(ProcessorContext context, StateStore root) { try { context.register(root, (key, value) -> { }); } catch (Exception e) { throw new RuntimeException(e); } }
public void init(final ProcessorContext context, final StateStore root) { // open the DB dir internalProcessorContext = context; openDB(context); batchingStateRestoreCallback = new RocksDBBatchingRestoreCallback(this); // value getter should always read directly from rocksDB // since it is only for values that are already flushed context.register(root, batchingStateRestoreCallback); }
@Override public void init(final ProcessorContext context, final StateStore root) { context.register(root, (RecordBatchingStateRestoreCallback) this::restoreBatch); if (loggingEnabled) { collector = ((RecordCollector.Supplier) context).recordCollector(); changelogTopic = ProcessorStateManager.storeChangelogTopic(context.applicationId(), storeName); } open = true; }
@Override @SuppressWarnings("unchecked") public void init(final ProcessorContext context, final StateStore root) { // construct the serde this.serdes = new StateSerdes<>( ProcessorStateManager.storeChangelogTopic(context.applicationId(), name), keySerde == null ? (Serde<K>) context.keySerde() : keySerde, valueSerde == null ? (Serde<V>) context.valueSerde() : valueSerde); // register the store context.register(root, new StateRestoreCallback() { @Override public void restore(final byte[] key, final byte[] value) { restoring = true; // check value for null, to avoid deserialization error. if (value == null) { delete(serdes.keyFrom(key)); } else { put(serdes.keyFrom(key), serdes.valueFrom(value)); } restoring = false; } }); }
@Override @SuppressWarnings("unchecked") public void init(final ProcessorContext context, final StateStore root) { // construct the serde this.serdes = new StateSerdes<>( ProcessorStateManager.storeChangelogTopic(context.applicationId(), name), keySerde == null ? (Serde<K>) context.keySerde() : keySerde, valueSerde == null ? (Serde<V>) context.valueSerde() : valueSerde); if (root != null) { // register the store context.register(root, (key, value) -> { // this is a delete if (value == null) { delete(serdes.keyFrom(key)); } else { put(serdes.keyFrom(key), serdes.valueFrom(value)); } }); } this.open = true; }
@Override public void init(final ProcessorContext context, final StateStore root) { this.context = (InternalProcessorContext) context; final StreamsMetricsImpl metrics = this.context.metrics(); final String taskName = context.taskId().toString(); expiredRecordSensor = metrics.storeLevelSensor( taskName, name(), "expired-window-record-drop", Sensor.RecordingLevel.INFO ); addInvocationRateAndCount( expiredRecordSensor, "stream-" + metricScope + "-metrics", metrics.tagMap("task-id", taskName, metricScope + "-id", name()), "expired-window-record-drop" ); keySchema.init(ProcessorStateManager.storeChangelogTopic(context.applicationId(), root.name())); segments.openExisting(this.context); bulkLoadSegments = new HashSet<>(segments.allSegments()); // register and possibly restore the state from the logs context.register(root, new RocksDBSegmentsBatchingRestoreCallback()); open = true; }