David Winslow-3 wrote: > > There was talk of having a dumb implementation of paging available that > individual datastores could overwrite with more efficient implementations. > I > see no mention of this in the writeup, so has that idea been dropped or is > it > just considered to be implicit? >
This was my point of view as well, up to the moment when I actually started to write down the proposal. In that moment I realized that sorting and paging must be there at the same time, and not only that, but you really need sorting on the fid too to make things work. Say you sort on an attribute that's not the fid, the order of the features that have the same attribute value is undefined, which is based paging wise. So... you always have to add a extra sorting clause on @gmlid no matter what. Now, which datastores do support sorting nowadays? Only JDBC based ones. Which ones do support sorting on @gmlid? NONE! Long story short, we are already coming from a situation where datastores are not abiding to the Query contract, and we don't have the workforce to fix them all... so I guess we have to surrender and accept the fact certain things may not be supported, even if this means that writing a client needing those features against datastore is going to become a real pain. If you have suggestions on this one, I'm all ears... I don't like this situation either. Aside... how one does implement the damned paging if sorting on feature id is not implemented? Simple and... horrible: make a query that returns only one attribute of the feature (since generally speaking you cannot ask only fids to be returned... ), store all the fids in memory, sort it, and then make a big bad query listing all of the fids in the requested page (and hope this does not require encoding in sql 10.000 fids...). Ok, this is going to work only on very very small dataset but... what can I do? David Winslow-3 wrote: > > Relatedly, perhaps FeatureSource.getQueryCapabilities() should be split > into > two: FeatureSource.getAvailableQueryCapabilities() and > FeatureSource.getNativeQueryCapabilities() , to indicate all supported > capabilities and all optimized capabilities, respectively. Although, I > suppose the former would be unnecessary if default implementations of all > operations were provided. > Hmm... I'd prefer to have a single object with very few properties. The filter capabilities thing is something that I added becaues Jody asked for it, but I'm not really certain what's the usefullness of it (Jody, can you elaborate)? What I'm really interested in is what the datastore can do, not what it can do fast. Cheers Andrea -- View this message in context: http://www.nabble.com/Feature-paging-proposal-created%2C-please-discuss-tp16730161p16734848.html Sent from the geotools-devel mailing list archive at Nabble.com. ------------------------------------------------------------------------- This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone _______________________________________________ Geotools-devel mailing list Geotools-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geotools-devel