Stream-Framework
Stream-Framework copied to clipboard
Cassandra: weird feed.filter(...) query results
Something is not working properly when querying activities through CassandraFeed's filter method:
>>> activity = Activity(...)
>>> feed = UserFeed(1)
>>> feed.add(activity)
>>> feed.get_timeline_storage().model.objects.filter(activity_id=activity.serialization_id).allow_filtering().count()
1
>>> feed.filter(activity_id=activity.serialization_id).count()
2
>>> feed.filter(activity_id=activity_id)[0]
[Activity(posted) 1 1]
>>> feed.filter(activity_id=activity_id)[1]
*** cassandra.InvalidRequest: code=2200 [Invalid query] message="activity_id cannot be restricted by more than one relation if it includes an Equal"
>>> feed.filter(activity_id=activity_id)[2]
[]
>>> feed.filter(activity_id=activity_id)[N]
[]
>>> feed.remove(activity.serialization_id)
>>> feed.get_timeline_storage().model.objects.filter(activity_id=activity.serialization_id).allow_filtering().count()
0
>>> feed.filter(activity_id=activity_id).count()
1
>>> feed.filter(activity_id=activity_id)[0]
[]
>>> feed.filter(activity_id=activity_id)[2]
[]
>>> feed.filter(activity_id=activity_id)[N]
[]