azagrebin commented on a change in pull request #7288: [FLINK-9702] Improvement in (de)serialization of keys and values for RocksDB state URL: https://github.com/apache/flink/pull/7288#discussion_r241709422
########## File path: flink-state-backends/flink-statebackend-rocksdb/src/main/java/org/apache/flink/contrib/streaming/state/AbstractRocksDBState.java ########## @@ -100,26 +100,23 @@ protected AbstractRocksDBState( this.dataOutputView = new DataOutputSerializer(128); this.dataInputView = new DataInputDeserializer(); - this.ambiguousKeyPossible = - RocksDBKeySerializationUtils.isAmbiguousKeyPossible(backend.getKeySerializer(), namespaceSerializer); + this.sharedKeyNamespaceSerializer = backend.getSharedRocksKeyBuilder(); } // ------------------------------------------------------------------------ @Override public void clear() { try { - writeCurrentKeyWithGroupAndNamespace(); - byte[] key = dataOutputView.getCopyOfBuffer(); - backend.db.delete(columnFamily, writeOptions, key); - } catch (IOException | RocksDBException e) { + backend.db.delete(columnFamily, writeOptions, serializeCurrentKeyWithGroupAndNamespace()); + } catch (RocksDBException e) { throw new FlinkRuntimeException("Error while removing entry from RocksDB", e); } } @Override public void setCurrentNamespace(N namespace) { - this.currentNamespace = Preconditions.checkNotNull(namespace, "Namespace"); + this.currentNamespace = namespace; Review comment: Allowing `null` namespace or just missing @Nonnull for function arg? ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services