54 | | TODO |
| 54 | |
| 55 | '''1.''' Performance improvement to search[[BR]] |
| 56 | In current !GeoNetwork, the search from the main page works as follows: the request with search parameters is sent to !GeoNetwork and is turned into a JDOM structure by Jeeves; this request object is processed in XSLT (lucene.xsl), the result of which is a different JDOM structure; this in turn is processed to create the actual Lucene query.[[BR]] |
| 57 | This proposal removes the step of XSLT processing by lucene.xsl. The function of lucene.xsl is exactly re-built in Java (!LuceneQueryBuilder.java). The resulting Lucene query is not changed in this proposal.[[BR]] |
| 58 | !LuceneQueryBuilder.java was developed [http://www.extremeprogramming.org/rules/testfirst.html test-first] and as a result, it's well covered by a unit test.[[BR]][[BR]] |
| 59 | A second performance gain is effected by a change to retrieving the regions data in the search service. In standard !GeoNetwork, the regions are retrieved from the DB at each search request; in this proposal, it happens only once, after which the regions data is kept in memory for application lifetime.[[BR]][[BR]] |
| 60 | Performance metrics from [http://www.yourkit.com/ YourKit Java Profiler] show that this change leads to a 90% performance increase of the search service as such (excluding the creation of the search results page). |
| 61 | |
| 62 | '''2.''' Persistent validation results[[BR]] |
| 63 | '''3.''' Organizations[[BR]] |
| 64 | '''4.''' Service monitoring[[BR]] |
| 65 | '''5.''' Tabbed view of Metadata[[BR]] |
| 66 | '''6.''' Local rating[[BR]] |
| 67 | |