Hi again, I did a quick experiment with removing H2Cache. My performance tests show slight improvement without this cache.
Alex, I'll be curious to hear if it's the same in your adopter's product. Here is a commit to cherry pick: https://github.com/kaloyan-raev/dltk.core/commit/e8bfa12aa5408341d230c57530474db281ef132c Greetings, Kaloyan On Mon, Oct 21, 2013 at 10:10 AM, Kaloyan Raev <kaloya...@zend.com> wrote: > Hi Alex, > > The same thoughts crossed my mind when I worked on improving the > performance in Zend Studio a couple of months ago. > > H2Cache is a set of maps with strong references, which makes it really > look more like an in-memory copy of the h2 db, rather than a cache. Over > time, I suspect, this may cause memory consumption problems. > > I suppose that the H2Cache was introduced in the past, because of some > inefficiencies in the h2 db schema - remember eclip.se/415137. But now, > when the necessary index is added to the schema, the benefits of H2Cache > are not really visible. > > One of the idea in my todo list for performance optimizations is indeed to > try removing the H2Cache and measure the impact. Unfortunately, I was > distracted from the performance topic with other things, but I hope I'll be > back on it very soon. > > Greetings, > Kaloyan > > > On Sat, Oct 19, 2013 at 10:13 AM, Alexey Panchenko < > alex.panche...@gmail.com> wrote: > >> Hi PDT-team, >> >> I have some questions regarding this class >> >> >> http://git.eclipse.org/c/dltk/org.eclipse.dltk.core.git/log/core/plugins/org.eclipse.dltk.core.index.sql.h2/src/org/eclipse/dltk/internal/core/index/sql/h2/H2Cache.java >> >> which was contributed some time ago by Michael and committed by Roy. >> >> As I understand the code, it looks like *all* the data from SQL database >> is loaded into this class and then updates happen to both the in-memory >> copy and the underlying SQL database. >> For me, that effectively compromises the SQL database, as the same result >> could be reached with eventually saving data to file using java >> serialization. >> >> So, I am curious of the following: >> - how much memory does it use? >> - is it supposed to be a cache (and contain recently used data) or a full >> in-memory copy? >> - how much does it improve the performance? Can the same effect be >> reached in other ways? >> >> Thanks, >> Alex >> >> _______________________________________________ >> pdt-dev mailing list >> pdt-dev@eclipse.org >> https://dev.eclipse.org/mailman/listinfo/pdt-dev >> >> >
_______________________________________________ pdt-dev mailing list pdt-dev@eclipse.org https://dev.eclipse.org/mailman/listinfo/pdt-dev