[Engine-devel] Introducing Infinispan cache and some required actions after change

Michael Kublin mkublin at redhat.com
Tue Apr 23 07:30:09 UTC 2013


Hi All,
The following commit I2fbebb10c08c87d2c7fd4d7443d3e3b374541ed7 will introduce a in memory cache inside ovirt-engine
The cache which was chosen is infinispan (http://www.jboss.org/infinispan/)
The reasons are following: cache has all required functionality, it is open source project and has built-in integration with
JBOSS, all cache configuration can be accessed or edited via JBOSS admin console.

By introducing this commit the first stage is finished:
1. Cache implementation is added to project
2. Show example how to add and use a cache in ovirt-engine, if it is required
3. Solved bug with possible memory leak in audit log event

The next stages are:
1. Second stage - replace all custom made implementation by standard central cache implementation
2. Third stage - introduce second level cache for work with DB 
3. Fourth stage (Future) - make cluster wise cache or make cache as service, if we will have more than one instance of JBOSS

Now, after the applying the following commit I2fbebb10c08c87d2c7fd4d7443d3e3b374541ed7, everyone who works with ovirt-engine
will be required to perform the following operation
1. Run mvn clean install -Pdep,setup in order to replace an old standalone.xml with new version of it
Or
1. Use regular deploy: mvn clean install -Pdep
2. Access to $JBOSS_HOME/bin/standalone.xml and replace or add infinispan subsystem:
        <subsystem xmlns="urn:jboss:domain:infinispan:1.1" default-cache-container="ovirt-engine">
            <cache-container name="ovirt-engine" default-cache="timeout-base" jndi-name="java:jboss/infinispan/ovirt-engine" start="EAGER">
                <local-cache name="timeout-base">
                    <transaction mode="NONE"/>
                    <eviction max-entries="10000"/>
                    <expiration interval="60000"/>
                </local-cache>
            </cache-container>
        </subsystem>
3. Add or check that exists <extension module="org.jboss.as.clustering.infinispan"/>  under <extensions> element

Thanks and Regards Michael



More information about the Devel mailing list