A couple of problems:
1. A RocksDBStore instance is currently marked as open before the store has been initialized from its changelog. This can result in reading old/invalid data when querying.
2. In the case of multiple partitions and the tasks are being initialized it is always possible that 1 or more StateStores will be intialized before the complete set of stores in the Streams Instance are initialized. Currently when this happens a query can return null because it will look in the existing initialized stores. However, the key may exist in one of the non-initialized instances. We need to wait for all Stores in the instance to be initialized before allowing queries to progress.