Alan Li created SAMZA-94:
----------------------------

             Summary: State management kv-store delete() does not remove key
                 Key: SAMZA-94
                 URL: https://issues.apache.org/jira/browse/SAMZA-94
             Project: Samza
          Issue Type: Bug
            Reporter: Alan Li


Sample code snippet: 

    _realtimeStateStore.put("foo", new HashMap());
    
    KeyValueIterator<String, Map<String, State>> realtimeIterator = 
_realtimeStateStore.all();
    while (realtimeIterator.hasNext())
    {
      Entry<String, Map<String, State>> entry = realtimeIterator.next();
      System.out.println("read from leveldb: " + entry.getKey() + "=>" + 
entry.getValue());
    }
    realtimeIterator.close();
    
    _realtimeStateStore.delete("foo");
    
    KeyValueIterator<String, Map<String, State>> iter = 
_realtimeStateStore.all();
    while (iter.hasNext())
    {
      Entry<String, Map<String, State>> entry = iter.next();
      System.out.println("read from leveldb: " + entry.getKey() + "=>" + 
entry.getValue());
    }
    iter.close();

Output:
  read from leveldb: foo=>{}
  read from leveldb: foo=>null

I would expect that the kv would remove both the key & value on delete so that 
subsequent iterators will not return keys that have been deleted.




--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to