[JBoss JIRA] (ISPN-2022) Make MarshalledValues immutable
by Manik Surtani (JIRA)
Manik Surtani created ISPN-2022:
-----------------------------------
Summary: Make MarshalledValues immutable
Key: ISPN-2022
URL: https://issues.jboss.org/browse/ISPN-2022
Project: Infinispan
Issue Type: Feature Request
Components: Marshalling
Affects Versions: 5.1.4.FINAL
Reporter: Manik Surtani
Assignee: Galder Zamarreño
Fix For: 5.1.x, 5.2.0.ALPHA1, 5.2.0.FINAL
MarshalledValues are not currently reused, so the containers could be made immutable. Different subtypes would be needed as well, i.e., {{InstanceBaisedMarshalledValue}}, where {{instance}} is {{final}} and {{raw}} then need not be volatile. {{RawBiasedMarshalledValue}}, where {{raw}} is {{final}} and {{instance}} then need not be volatile. {{serialisedSize}} and {{equalityPreferenceForInstance}} would be unnecessary.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 8 months
[JBoss JIRA] (ISPN-2178) JGroups configuration error during application deployment
by Dmitry Chuiko (JIRA)
Dmitry Chuiko created ISPN-2178:
-----------------------------------
Summary: JGroups configuration error during application deployment
Key: ISPN-2178
URL: https://issues.jboss.org/browse/ISPN-2178
Project: Infinispan
Issue Type: Bug
Components: Configuration
Affects Versions: 5.1.4.FINAL
Environment: Ubuntu 12.04, Jboss AS 7.1.2, Jgroups 3.0.9, Hibernate 4.1.2, Infinispan 5.1.4 Final
Reporter: Dmitry Chuiko
Assignee: Manik Surtani
This issue occurs using Infinispan as 2LC Hibernate cache provider is clustered environment using JGroups as a transport. So persistence.xml contains this line:
{code:xml}<property name="hibernate.cache.region.factory_class" value="org.hibernate.cache.infinispan.InfinispanRegionFactory"/>{code}
During application deployment the following error occurs:
{noformat}
11:28:45,529 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-11) MSC00001: Failed to start service jboss.persistenceunit."BatchProcessing.ear/sklad-base.jar#MOYsklad": org.jboss.msc.service.StartException in service jboss.persistenceunit."BatchProcessing.ear/sklad-base.jar#MOYsklad": Failed to start service
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1767) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1.7.0_05]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_05]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_05]
Caused by: org.infinispan.manager.EmbeddedCacheManagerStartupException: org.infinispan.CacheException: Unable to invoke method public void org.infinispan.remoting.transport.jgroups.JGroupsTransport.start() on object of type JGroupsTransport
at org.infinispan.factories.GlobalComponentRegistry.start(GlobalComponentRegistry.java:223)
at org.infinispan.manager.DefaultCacheManager.wireCache(DefaultCacheManager.java:684)
at org.infinispan.manager.DefaultCacheManager.createCache(DefaultCacheManager.java:649)
at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:549)
at org.hibernate.cache.infinispan.InfinispanRegionFactory.getCache(InfinispanRegionFactory.java:483)
at org.hibernate.cache.infinispan.InfinispanRegionFactory.buildEntityRegion(InfinispanRegionFactory.java:209)
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:347)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1741)
at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:93)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:905)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:890)
at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:74)
at org.hibernate.ejb.HibernatePersistenceLognex.createContainerEntityManagerFactory(HibernatePersistenceLognex.java:16)
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.createContainerEntityManagerFactory(PersistenceUnitServiceImpl.java:162)
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.start(PersistenceUnitServiceImpl.java:85)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
... 3 more
Caused by: org.infinispan.CacheException: Unable to invoke method public void org.infinispan.remoting.transport.jgroups.JGroupsTransport.start() on object of type JGroupsTransport
at org.infinispan.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:238)
at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:885)
at org.infinispan.factories.AbstractComponentRegistry.invokeStartMethods(AbstractComponentRegistry.java:639)
at org.infinispan.factories.AbstractComponentRegistry.internalStart(AbstractComponentRegistry.java:628)
at org.infinispan.factories.AbstractComponentRegistry.start(AbstractComponentRegistry.java:531)
at org.infinispan.factories.GlobalComponentRegistry.start(GlobalComponentRegistry.java:201)
... 19 more
Caused by: org.infinispan.CacheConfigurationException: configurationFile property specifies value null that could not be read!
at org.infinispan.remoting.transport.jgroups.JGroupsTransport.buildChannel(JGroupsTransport.java:335)
at org.infinispan.remoting.transport.jgroups.JGroupsTransport.initChannel(JGroupsTransport.java:256)
at org.infinispan.remoting.transport.jgroups.JGroupsTransport.initChannelAndRPCDispatcher(JGroupsTransport.java:296)
at org.infinispan.remoting.transport.jgroups.JGroupsTransport.start(JGroupsTransport.java:174)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.7.0_05]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [rt.jar:1.7.0_05]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.7.0_05]
at java.lang.reflect.Method.invoke(Method.java:601) [rt.jar:1.7.0_05]
at org.infinispan.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:236)
... 24 more
Caused by: java.io.FileNotFoundException: tcp.xml
... 33 more
{noformat}
This error occurs because {{org.infinispan.util.FileLookupFactory.DefaultFileLookup#getAsInputStreamFromClassLoader}} method doesn't check result for {{null}} - it is only checking for {{RuntimeException}}. The first {{ClassLoader}} belongs to the application so it could not find the desired resource from {{jgroups}} module. The resource would be found with the second {{Module}} {{ClassLoader}} but method returns {{null}} after the first try.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 8 months
[JBoss JIRA] (ISPN-2229) Fix spelling in error message in InfinispanDirectory.java
by Scott Carlson (JIRA)
Scott Carlson created ISPN-2229:
-----------------------------------
Summary: Fix spelling in error message in InfinispanDirectory.java
Key: ISPN-2229
URL: https://issues.jboss.org/browse/ISPN-2229
Project: Infinispan
Issue Type: Bug
Affects Versions: 5.2.0.ALPHA2
Reporter: Scott Carlson
Assignee: Manik Surtani
Priority: Trivial
metadata is spelled incorrectly in InfinispanDirectory.java
--- a/lucene-directory/src/main/java/org/infinispan/lucene/InfinispanDirectory.java
+++ b/lucene-directory/src/main/java/org/infinispan/lucene/InfinispanDirectory.java
@@ -283,7 +283,7 @@ public IndexInput openInput(String name) throws IOException {
final FileCacheKey fileKey = new FileCacheKey(indexName, name);
FileMetadata fileMetadata = (FileMetadata) metadataCache.get(fileKey);
if (fileMetadata == null) {
- throw new FileNotFoundException("Error loading medatada for index file: " + fileKey);
+ throw new FileNotFoundException("Error loading metadata for index file: " + fileKey);
}
else if (fileMetadata.getSize() <= fileMetadata.getBufferSize()) {
//files smaller than chunkSize don't need a readLock
@@ -293,7 +293,7 @@ else if (fileMetadata.getSize() <= fileMetadata.getBufferSize()) {
boolean locked = readLocks.acquireReadLock(name);
if (!locked) {
// safest reaction is to tell this file doesn't exist anymore.
- throw new FileNotFoundException("Error loading medatada for index file: " + fileKey);
+ throw new FileNotFoundException("Error loading metadata for index file: " + fileKey);
}
return new InfinispanIndexInput(chunksCache, fileKey, fileMetadata, readLocks);
}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 8 months
[JBoss JIRA] (ISPN-2244) Transparently hold serialized representations of keys and values
by Robert Stupp (JIRA)
Robert Stupp created ISPN-2244:
----------------------------------
Summary: Transparently hold serialized representations of keys and values
Key: ISPN-2244
URL: https://issues.jboss.org/browse/ISPN-2244
Project: Infinispan
Issue Type: Enhancement
Reporter: Robert Stupp
Assignee: Mircea Markus
Serialization/deserialization might become very expensive when working with cached large java objects that are created and used on many different nodes.
At the moment, the setting storeAsBinary() allows you to "die" either one:
* serialize/deserialize when the cache is accessed
* serialize/deserialize when L1 is filled or invalidated, object fetched from other node, object is replicated on put
It might be a good solution to add a third mode:
* At a put() operation, the Java object is put into the cache
* When the serialized representation is required first, it is created from the Java object (or during the put() operation)
* The serialized representation is reused every time when needed.
Means: cache the serialized representation of keys and values.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 8 months