[JBoss JIRA] Created: (ISPN-871) Out-of-heap data container implementation
by Manik Surtani (JIRA)
Out-of-heap data container implementation
-----------------------------------------
Key: ISPN-871
URL: https://issues.jboss.org/browse/ISPN-871
Project: Infinispan
Issue Type: Feature Request
Components: Core API
Reporter: Manik Surtani
Assignee: Manik Surtani
Fix For: 5.1.0.BETA1, 5.1.0.Final
The DataContainer interface could be implemented using a off-heap impl in C, using mmap. It would require custom memory management (gc-lite?) to reclaim free space, as well as reimplementing of eviction algorithms to maintain the contract of a self-sizing data container, but the benefits of this would be the ability to address very large amounts of memory with minimal gc overhead from the JVM.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 3 months
[JBoss JIRA] Created: (ISPN-863) Eviction based on JVM memory utilization
by Dave Marion (JIRA)
Eviction based on JVM memory utilization
----------------------------------------
Key: ISPN-863
URL: https://issues.jboss.org/browse/ISPN-863
Project: Infinispan
Issue Type: Enhancement
Components: Eviction
Affects Versions: 4.2.0.Final
Environment: N/A
Reporter: Dave Marion
Assignee: Manik Surtani
Allow user to specify percentage threshold upon which eviction will kick in and begin evicting entries based on the specified strategy. This would allow user to create a cache that will attempt to keep as many entries in memory as possible without having to specify maxEntries.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 3 months
[JBoss JIRA] Created: (ISPN-78) Large object support
by Manik Surtani (JIRA)
Large object support
--------------------
Key: ISPN-78
URL: https://jira.jboss.org/jira/browse/ISPN-78
Project: Infinispan
Issue Type: Feature Request
Components: Core API
Reporter: Manik Surtani
Assignee: Manik Surtani
Fix For: 5.0.0.GA
if each VM is allocated a 2GB heap and you have a 100 nodes in a grid with 1 redundant copy for each key, you have a theoretical addressable heap of 100GB. But you are limited by (half) the heap of a single VM per entry, since entries are stored whole.
E.g., cache.put(k, my2GBObject) will fail since you need at least 2GB for the object + another 2GB for its serialized form.
This gets worse when you try cache.put(k, my10GBObject). This *should* be possible if we have a theoretical 100GB heap.
Potential solutions here are to fragment large objects, and store each fragment under separate keys. Another approach would be to directly stream objects to disk. etc. Needs thought and design, possibly a separate API to prevent 'pollution" of the more simplistic API. (JumboCache?)
Re: fragmenting, issues to overcome:
How many chunks to fragment into? Max size of each key could be configured, but how do we determine the size of an Object? VM instrumentation? Or perhaps the JumboCache only stores byte[]'s?
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 3 months
[JBoss JIRA] Created: (ISPN-800) Infinispan inside OSGI
by luca stancapiano (JIRA)
Infinispan inside OSGI
----------------------
Key: ISPN-800
URL: https://jira.jboss.org/browse/ISPN-800
Project: Infinispan
Issue Type: Feature Request
Components: Core API
Affects Versions: 4.2.0.CR1
Reporter: luca stancapiano
Assignee: Manik Surtani
We need to import infinispan inside a OSGI repository. Tests are made with Felix.
I added the configuration to use infinispan inside a osgi repository. We need to ignore all listed dependencies. With this configuration we can install infinispan-core.jar inside OSGI. Its achievement will be as a base installation here: https://github.com/flashboss/infinispan
I added the Import-Package because you are forced to put manually in Felix all dependencies as jgroups, jboss marshalling, jcip, all apache commons. I've seen infinispan core working by default without all those libraries, so I think the same achievement should be replicated in OSGI.
Inside the Import-Package tag I excluded those libraries so Infinispan core can be started in default mode without errors. If we want use the replication in OSGI, it is enough add manually the other packages (jgroups.jar etc etc)
Actually the core bundle can be installed. But to be used it needs theese projects be installed as osgi bundles:
jboss transaction api 1.0.1.GA
(It is not yet a OSGI bundle. Waiting for a response to: https://jira.jboss.org/browse/JBEE-67)
jgroups 2.10.1.GA
(fixed in jgroups 1.12)
river 1.2.3.GA
marshalling-api 1.2.3.GA
jboss common core 2.2.14.GA
jboss logging spi 2.0.5.GA
rhq plugin annotations 1.4.0.B01
i18nlog 1.0.9
log4j 1.2.16
We should make sure proper 'Import-Package' property is specified in the MANIFEST.MF so that:
1- it fails to load obviously when there's any missing bundles that are essential in using the very core functionality of Infinispan.
2 - it does not fail due to the dependency that is not really essential.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 4 months
[JBoss JIRA] Created: (ISPN-375) Enable Hot Rod clients to start transactions
by Galder Zamarreno (JIRA)
Enable Hot Rod clients to start transactions
--------------------------------------------
Key: ISPN-375
URL: https://jira.jboss.org/jira/browse/ISPN-375
Project: Infinispan
Issue Type: Feature Request
Components: Cache Server
Reporter: Galder Zamarreno
Assignee: Galder Zamarreno
Fix For: 5.1.0.BETA1, 5.1.0.Final
It might be useful to allow Hot Rod clients to start transactions within Hot Rod servers. The possibility of clients participating in the actual transaction, i.e. being an XAResource, should not be imposed since this might be less than trivial to achieve in non-Java environments. The alternative would be to allow clients to start Hot Rod server local transactions only.
This would require enhancing Hot Rod spec to have some begin/commit/rollback commands that return a tx id, and for clients to be able to send this id as part of each command that should participate in the transaction.
Pitfalls to avoid include avoiding a transaction to be propagated over several Hot Rod servers. IOW, to simplify things, if a tx is started in server A, all ops within that tx should be directed to tx. Load balancing could still happen but would need to be tx sticky.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 4 months