...
Code Block | ||
---|---|---|
| ||
package org.apache.kafka.streams.state;
@Deprecate
public interface WindowStoreIterator<V> extends KeyValueIterator<Long, V>, Closeable;
public interface ReadOnlyWindowStore<K, V> {
// already deprecated (cf. KIP-358)
@Deprecate
WindowStoreIterator<V> fetch(K key, long timeFrom, long timeTo);
@Deprecate
KeyValueIterator<Windowed<K>, V> fetch(K from, K to, long timeFrom, long timeTo);
@Deprecate
KeyValueIterator<Windowed<K>, V> fetchAll(long timeFrom, long timeTo);
// kept
KeyValueIterator<Windowed<K>, V> all();
// newly deprecated
@Deprecate
V fetch(K key, long time);
@Deprecate
WindowStoreIterator<V> fetch(K key, Instant from, Instant to) throws IllegalArgumentException;
@Deprecate
KeyValueIterator<Windowed<K>, V> fetch(K from, K to, Instant fromTime, Instant toTime) throws IllegalArgumentException;
@Deprecate
KeyValueIterator<Windowed<K>, V> fetchAll(Instant from, Instant to) throws IllegalArgumentException;
// new
V get(K key, long windowStartTime);
KeyValueIterator<Windowed<K>, V> range(K key, Instant from, Instant to) throws IllegalArgumentException;
KeyValueIterator<Windowed<K>, V> range(K from, K to, Instant from, Instant to) throws IllegalArgumentException;
KeyValueIterator<Windowed<K>, V> range(Instant from, Instant to) throws IllegalArgumentException;
}
// note: `WindowStore` does not deprecate overloads with primitive types
// hence, we need to deprecate them now, and add corresponding `range()` methods
public interface WindowStore<K, V> extends ReadOnlyWindowStore<K, V> {
// deprecate
@Deprecate
WindowStoreIterator<V> fetch(K key, long timeFrom, long timeTo);
@Deprecate
KeyValueIterator<Windowed<K>, V> fetch(K from, K to, long timeFrom, long timeTo);
@Deprecate
KeyValueIterator<Windowed<K>, V> fetchAll(long timeFrom, long timeTo);
// new
KeyValueIterator<Windowed<K>, V> range(K key, long fromTime, long toTime);
KeyValueIterator<Windowed<K>, V> range(K from, K to, long fromTime, long toTime);
KeyValueIterator<Windowed<K>, V> range(long fromTime, long toTime);
}
public interface ReadOnlySessionStore<K, V> {
// deprecated
@Deprecate
KeyValueIterator<Windowed<K>, AGG> fetch(K key);
@Deprecate
KeyValueIterator<Windowed<K>, AGG> fetch(K from, K to);
// new
KeyValueIterator<Windowed<K>, AGG> range(K key);
KeyValueIterator<Windowed<K>, AGG> range(K from, K to);
}
public interface SessionStore<K, V> extends ReadOnlySessionStore<K, V> {
// deprecated
@Deprecate
KeyValueIterator<Windowed<K>, AGG> findSessions(K key, long earliestSessionEndTime, long latestSessionStartTime);
@Deprecate
KeyValueIterator<Windowed<K>, AGG> findSessions(K keyFrom, K keyTo, long earliestSessionEndTime, long latestSessionStartTime);
@Deprecate
AGG fetchSession(K key, long startTime, long endTime);
// new
KeyValueIterator<Windowed<K>, AGG> range(K key, long earliestSessionEndTime, long latestSessionStartTime);
KeyValueIterator<Windowed<K>, AGG> range(K keyFrom, K keyTo, long earliestSessionEndTime, long latestSessionStartTime);
AGG get(K key, long sessionStartTime, long sessionEndTime);
}
// unmodified: just added for completeness
public interface ReadOnlyKeyValueStore<K, V> {
// kept
KeyValueIterator<K, V> all();
}
// Metrics: kafka.streams
type = stream-[storeType]-metrics
client-id = [thread ID]
task-id = [task ID]
[storeType]-id = [store name]
level = DEBUG
// deprecated:
[store-type] = rocksdb-window-state / in-memory-window-state / rocksdb-session-state / in-memory-session-state
name = fetch-latency-avg
name = fetch-latency-max
name = fetch-rate
name = fetch-total
[store-type] = rocksdb-state / in-memory--state
name = all-latency-avg
name = all-latency-max
name = all-rate
name = all-total
name = range-latency-avg
name = range-latency-max
name = range-rate
name = range-total
// new
[store-type] = rocksdb-window-state / in-memory-window-state
name = get-latency-avg
name = get-latency-max
name = get-rate
name = get-total
name = range-single-key-time-range-latency-avg
name = range-single-key-time-range-latency-max
name = range-single-key-time-range-rate
name = range-single-key-time-range-total
name = range-key-and-time-latency-avg
name = range-key-and-time-latency-max
name = range-key-and-time-rate
name = range-key-and-time-total
name = range-time-latency-avg
name = range-time-latency-max
name = range-time-rate
name = range-time-total
name = range-all-latency-avg
name = range-all-latency-max
name = range-all-rate
name = range-all-total
[store-type] = rocksdb-session-state / in-memory-session-state
name = range-key-latency-avg
name = range-key-latency-max
name = range-key-rate
name = range-key-total
name = range-single-key-time-range-latency-avg
name = range-single-key-time-range-latency-max
name = range-single-key-time-range-rate
name = range-single-key-time-range-total
name = range-single-key-latency-avg
name = range-single-key-latency-max
name = range-single-key-rate
name = range-single-key-total
name = range-key-and-time-latency-avg
name = range-key-and-time-latency-max
name = range-key-and-time-rate
name = range-key-and-time-total
name = get-latency-avg
name = get-latency-max
name = get-rate
name = get-total
[store-type] = rocksdb-state / in-memory--state
name = range-all-latency-avg
name = range-all-latency-max
name = range-all-rate
name = range-all-total
name = range-key-latency-avg
name = range-key-latency-max
name = range-key-rate
name = range-key-total |
...