What i expect to happen is when you run the query SELECT manufacturer,id FROM product_data WHERE type='manu'
you must get all the rows from the DB in the table product_data So it is likely that you get an OOM if the DB table has a lot of rows. processor="CachedSQLEntityProcessor" is wrong processor="CachedSqlEntityProcessor" is right counter intuitive? which part is counter-intuitive ? the where part? The cache store the entire data with id value as the key On Wed, Nov 26, 2008 at 4:27 PM, Steffen B. <[EMAIL PROTECTED]> wrote: > > I've been discussing this topic with Amit and also have some questions... > > > Noble Paul നോബിള് नोब्ळ् wrote: >> >> On Tue, Nov 25, 2008 at 11:35 PM, Amit Nithian <[EMAIL PROTECTED]> wrote: >>> 2) In the example, there were two use cases, one that is like >>> query="select >>> * from Y where xid=${X.ID}" and another where it's query="select * from >>> Y" >>> where="xid=${x.ID}. Is there any difference in how >>> CachedSQLEntityPRocessor >>> behaves? Does it know to strip off the WHERE clause and simply cache the >>> "select * from Y"? >> It fetches all the rows using the 'query' first. >> >> he where="xid=x.id" (see no ${} here ) >> is evaluated in the map. In the map all the xid values will be kept as >> keys and the lookup is done on the map after evaluating the value of >> 'x.id' as ${x.ID} >> > > If I'm not mistaken, this behaviour would require that the query I use > returns the column I want to match on, too. Without the > CachedSQLEntityProcessor, my entity for fetching multi-valued manufacturers > could look like this: ("product" is the parent entity) > <entity query="SELECT manufacturer FROM product_data WHERE id=${product.id} > AND type='manu'" /> > Now if I wanted to use the cache, what would the query look like...? I tried > this: > <entity query="SELECT manufacturer,id FROM product_data WHERE type='manu'" > where="id=product.id" processor="CachedSQLEntityProcessor" /> > That seems to be a pretty counter-intuitive change, which isn't explained at > all in the Wiki. =| Also, it didn't work for me, the query that is executed > returns zero rows, when I debug it with the dataimport.jsp-tool. The cache > seems to get filled though, as I encountered some JVM out-of-memory errors > when trying to cache huge tables... ;) > > -- > View this message in context: > http://www.nabble.com/CachedSqlEntityProcessor%27s-purpose-tp20676874p20698724.html > Sent from the Solr - User mailing list archive at Nabble.com. > > -- --Noble Paul