If you want to get all the tick between two integers yes. A
----------------- Aaron Morton Freelance Developer @aaronmorton http://www.thelastpickle.com On 14/02/2012, at 8:36 AM, Dave Brosius wrote: > if the composite column was rearranged as > > ticks:111 > > wouldn't the result be as desired? > > > ----- Original Message ----- > From: "aaron morton" <aa...@thelastpickle.com> > Sent: Mon, February 13, 2012 13:41 > Subject: Re: problem with sliceQuery with composite column > > My understanding is you expected to see > > 111:ticks > 222:ticks > 333:ticks > 444:ticks > > But instead you are getting > > 111:ticks > 111:quote > 222:ticks > 222:quote > 333:ticks > 333:quote > 444:ticks > > If that is the case things are working as expected. > > The slice operation gets a column range. So if you start at 111:ticks and end > at 444:ticks you are asking for all the column in between. > > it is not possible to filter at each level of a composite column. > > Hope that helps. > > ----------------- > Aaron Morton > Freelance Developer > @aaronmorton > http://www.thelastpickle.com > > > > On 10/02/2012, at 10:58 PM, Deno Vichas wrote: > >> >> >> all, >> >> could somebody clue me to why the below code doesn't work. my schema is; >> >> create column family StockHistory >> with comparator = 'CompositeType(LongType,UTF8Type)' >> and default_validation_class = 'UTF8Type' >> and key_validation_class = 'UTF8Type'; >> >> >> the time part works but i'm getting other column with the second half not >> equaling the value set. it's like it's ignoring the string part of the >> composite. >> >> Composite start = new Composite(); >> Composite end = new Composite(); >> start.addComponent(0, >> startDate.toDateTimeAtStartOfDay().toDate().getTime(), >> Composite.ComponentEquality.EQUAL); >> end.addComponent(0, endDate.toDateMidnight().toDate().getTime(), >> Composite.ComponentEquality.EQUAL); >> >> start.addComponent(1, "ticks", Composite.ComponentEquality.EQUAL); >> end.addComponent(1, "ticks", >> Composite.ComponentEquality.GREATER_THAN_EQUAL); >> >> ; SliceQuery<String, Composite, String> sliceQuery = >> HFactory.createSliceQuery(_keyspace, _stringSerializer, new >> CompositeSerializer(), _stringSerializer); >> sliceQuery.setColumnFamily(CF_STOCK_HISTORY).setKey(symbol); >> sliceQuery.setRange(start, end, false, 10); >> >> QueryResult<ColumnSlice<Composite, String>> result = >> sliceQuery.execute(); >> ColumnSlice<Composite, String> cs = result.get(); >> SortedSet<String> historyJSON = new TreeSet<String>(); >> for ( HColumn<Composite, String> col: cs.getColumns() ) { >> System.out.println(col.getName().get(0, _longSerializer) +"|"+ >> col.getName().get(1,StringSerializer.get())); >> } >> >> >> this outputs the following; >> >> 1327035600000|ticks >> 1327046400000|quote >> 1327294800000|ticks >> 1327305600000|quote >> 1327381200000|ticks >> 1327392000000|quote >> 1327467600000|ticks >> 1327478400000|quote >> 1327554000000|ticks >> 1327564800000|quote >> >> thanks, >> deno >> >>