+1 that's a good point. We could define a function to normalize the slot range through consolidating of all the remaining slots together.
On Thu, Mar 12, 2015 at 1:22 PM, Asitha Nanayakkara <asi...@wso2.com> wrote: > Hi Pamod > > Querying the remaining slots and removing content directly is OK. As an > improvement you can add a separate method in slot coordinator to get that > message range of all the slots, to reduce cluster communication, and then > do the necessary processing in the local node it self. > > Thanks, > Asitha > > On Thu, Mar 12, 2015 at 11:56 AM, Pamod Sylvester <pa...@wso2.com> wrote: > >> Hi All, >> >> During the subscription disconnection/deletion purge operation is being >> called on the the relevant non durable topic the subscription/s was bound >> to. During purge operation all existing data (if any) relevant to that >> topic will be removed. >> >> When using hector the removal is done through a range query following LOC, >> >> List<Long> currentPage = >> HectorDataAccessHelper.getNumericColumnKeysOfRow >> (keyspace, >> CassandraConstants.META_DATA_COLUMN_FAMILY, storageQueueName, pageSize, >> lastProcessedID); >> >> Initially the relevant message ids are retrieved from MetaData CF and >> then removed from the MessageContent CF. Once more than 200,000 messages >> are sent since the range query queries the entire row of data belonging to >> a relevant topic, it results in the following, >> >> >> >> *Caused by: >> org.apache.cassandra.db.filter.TombstoneOverwhelmingException: nullat >> org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:214) >> ~[apache-cassandra-2.1.2.jar:2.1.2]at >> org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:107) >> ~[apache-cassandra-2.1.2.jar:2.1.2]* >> >> And causes *me.prettyprint.hector.api.exceptions.HTimedOutException: >> TimedOutException() *in the broker end, >> >> As solution, >> >> Since the idea of purging during disconnection is to clear out remaining >> data which have not being given out to its subscribers, we could query the >> slots which are still remaining and directly delete them from the >> MessageContentCF instead of querying them from meta data CF. Would there be >> any implication to this ? WDYT ? >> >> Thanks, >> Pamod >> >> -- >> *Pamod Sylvester * >> *Senior Software Engineer * >> Integration Technologies Team, WSO2 Inc.; http://wso2.com >> email: pa...@wso2.com cell: +94 77 7779495 >> > > > > -- > *Asitha Nanayakkara* > Software Engineer > WSO2, Inc. http://wso2.com/ > Mob: + 94 77 85 30 682 > > -- *Pamod Sylvester * *Senior Software Engineer * Integration Technologies Team, WSO2 Inc.; http://wso2.com email: pa...@wso2.com cell: +94 77 7779495
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev