Author |
Message |
|
I am trying to upgrade from Terracotta 3.4.0 to 3.6.1 (and upgrading the 2.5.1 EHCache as well).
The problem is that I am getting the following error when I try to deploy the application.
I am running it in Glassfish 3.1.1 on Mac OSX Lion.
The error is
Client might not be connected to right listener. Please check if Client is configured with right Server address and DSO port
The tc-config.xml I am having the client run looks like
<?xml version="1.0" encoding="UTF-8"?>
<!-- All content copyright Terracotta, Inc., unless otherwise indicated. All rights reserved. -->
<tc:tc-config xsi:schemaLocation="http://www.terracotta.org/schema/terracotta-5.xsd"
xmlns:tc="http://www.terracotta.org/config"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<servers>
<!-- Sets where the Terracotta server can be found. Replace the value of host with the server's IP address. -->
<server host="localhost" name="localhost" bind="0.0.0.0">
<data>/vm/terracotta/data</data>
<logs>/vm/terracotta/logs</logs>
</server>
</servers>
<!-- Sets where the generated client logs are saved on clients. Note that the exact location of Terracotta logs on client machines may vary based on the value of user.home and the local disk layout. -->
<clients>
<logs>%(user.home)/terracotta/client-logs</logs>
</clients>
</tc:tc-config>
It's pretty standard.
Anyone have any ideas as to why the client connection isn't working? I have tried to find documentation on how to get this part configured, but the documentation for this is very lacking. I have had issues before with the network lookup part of configuring the client and terracotta.
|
|
|
So what's the best way to get a cache to self-refresh.
Essentially, I have a cache of stats information for graphs to display. What I want is for the graphs to always be able to get the data (even if it's stale) but when a request for the cache comes in and gets back stale data, i want to either have ehcache itself (or a custom listener i write) call refresh on the cache.
Is the expired listeners the best way to do that?
|
|
|
Thanks for the link, but it doesn't work.
The direct download took me to a 404 page from terracotta.
The AWS link took me to a AWS access denied error page.
Any other links that I should try?
|
|
|
I need to know where to go to download old versions of the open source terracotta software.
I recently upgraded computers at work, and downloaded the new 3.5.2 terracotta opensource.
However, my app when running in production expects 3.4.X. I can't change the library dependencies in my local to work with 3.5.2 and then back for production as that violates a whole series of best-practices and our build process.
And terracotta doesn't make their stuff backwards compatible in terms of client-server versions (not even between 3.5.1 and 3.5.2 which is ridiculous for a point version to not be backwards compatible).
So, in order for me to work on my app, I need to find the 3.4.0 version of terracotta open source to install.
But I can't find a link on the site for where to download that.
Anyone got one?
FYI: Terracotta, if your stuff isn't backwards compatible, you need to provide a downloads link for the older stuff.
|
|
|
I have a 2 node terracotta cluster I use to backend ehcache.
Recently we had one of the node crash and needed to be restarted. The cluster correctly shifted master responsibilities to the second node, but when we restarted the first node it came back up and says it's in "Initializing" for it's status instead of the "stand-by" that we expect.
I assume this means that the node didn't correctly startup and that if the current master node goes down that we will be in trouble.
What would cause the node to hang in "Initializing" and how can I fix it?
Last lines of terracotta-server.log are
Code:
2011-04-01 10:52:01,456 [WorkerThread(group_discovery_stage, 0, 0)] INFO com.tc.net.protocol.transport.ConnectionHealthCheckerImpl. TCGroupManager - Health monitoring agent started for pkc-bseventcache02.ak-networks.com:9530
2011-04-01 10:52:01,460 [L2_L2:TCComm Main Selector Thread_R (listen 10.201.22.81:9530)] INFO com.tc.net.protocol.transport.ConnectionHealthCheckerImpl. TCGroupManager - HealthCheckCallbackPort verification PASSED for pkc-bseventcache02.ak-networks.com:9530(callbackport: 9530)
2011-04-01 10:52:01,483 [WorkerThread(group_events_dispatch_stage, 0)] INFO com.tc.l2.ha.L2HACoordinator - NodeID[10.201.22.84:9510] joined the cluster
2011-04-01 10:52:01,483 [WorkerThread(group_events_dispatch_stage, 0)] INFO com.terracottatech.console - NodeID[10.201.22.84:9510] joined the cluster
2011-04-01 10:52:01,486 [WorkerThread(l2_state_message_handler_stage, 0)] INFO com.tc.l2.state.StateManagerImpl - Moved to State[ PASSIVE-UNINITIALIZED ]
2011-04-01 10:52:01,486 [main] INFO com.tc.l2.state.ElectionManagerImpl - Election lost : Winner is : Enrollment [ NodeID[10.201.22.84:9510], isNew = false, weights = 9223372036854775807,9223372036854775807 ]
2011-04-01 10:52:01,486 [WorkerThread(l2_state_message_handler_stage, 0)] INFO com.terracottatech.console - Moved to State[ PASSIVE-UNINITIALIZED ]
2011-04-01 10:52:01,494 [WorkerThread(receive_group_message_stage, 0)] INFO com.tc.l2.ha.StripeIDStateManagerImpl - putToStore GroupID[0] StripeID[a7081480cddc47cf9cc173f542e361ad]
2011-04-01 10:52:01,494 [WorkerThread(receive_group_message_stage, 0)] INFO com.tc.l2.ha.StripeIDStateManagerImpl - Notify local StripeID ready
2011-04-01 10:52:01,494 [WorkerThread(receive_group_message_stage, 0)] INFO com.tc.l2.ha.StripeIDStateManagerImpl - Notify StripeIDMap ready
2011-04-01 10:52:01,495 [WorkerThread(receive_group_message_stage, 0)] INFO com.tc.l2.ha.StripeIDStateManagerImpl - putToStore GroupID[0] StripeID[a7081480cddc47cf9cc173f542e361ad]
2011-04-01 10:52:01,495 [WorkerThread(receive_group_message_stage, 0)] INFO com.tc.l2.ha.StripeIDStateManagerImpl - Notify local StripeID ready
2011-04-01 10:52:01,495 [WorkerThread(receive_group_message_stage, 0)] INFO com.tc.l2.ha.StripeIDStateManagerImpl - Notify StripeIDMap ready
2011-04-01 10:52:01,499 [WorkerThread(receive_group_message_stage, 0)] INFO com.tc.l2.objectserver.ReplicatedObjectManagerImpl - Send response to Active's query : known id lists = 0 isCleanDB: true
2011-04-01 10:52:01,516 [main] INFO com.tc.server.TCServer - Server started as pkc-bseventcache01
2011-04-01 10:52:01,516 [Update Checker] INFO com.tc.server.UpdateCheckAction - Update Checker: Checking...
2011-04-01 10:52:01,804 [Update Checker] INFO com.tc.server.UpdateCheckAction - Update Checker: Available updates:
2011-04-01 10:52:01,804 [Update Checker] INFO com.tc.server.UpdateCheckAction - Update Checker: * 3.5.0 [http://www.terracotta.org/confluence/display/release/Release+Notes+Terracotta+3.4.1]
2011-04-01 10:52:01,804 [Update Checker] INFO com.tc.server.UpdateCheckAction - Update Checker: Next check at Fri Apr 08 10:52:01 CDT 2011
|
|
|
So it's the
terracotta-toolkit-1.2-runtime-3.0.0-SNAPSHOT
lib that provides the ConcurrentDistributedServerMap class that I am missing?
This dependency management stuff has been a pretty constant pain for me in using ehcache and terracotta. Is there anything in the works to help better document this?
|
|
|
Moved up to the following version
ehcache-core 2.4.1-SNAPSHOT
ehcache-terrracotta 2.4.1-SNAPSHOT
terrracotta-toolkit-runtime 2.1.0
Also moved my local terracotta up to 3.4.1
Get the following error
Code:
nested exception is java.lang.NoClassDefFoundError: org/terracotta/collections/ConcurrentDistributedServerMap
I am still stuck in dependency hell
|
|
|
I am trying to use snapshot. I didn't have a choice beings the ehcache-terracotta wasn't up to 2.4 yet except for snapshot.
However, the error I see that started this was with the snapshots.
|
|
|
So, if I want to use ehcache 2.4, I can't use Terracotta?
Then why when I switch from using ehcache-core explicitly to use the ehache pom dependency (for 2.4.0-SNAPSHOT), does it try to bring both of those in.
Can someone from the terracotta/ehcache team actually post that information somewhere, so that those of use that want ehcache and terracotta can know this.
or better yet, put out some release notes that mention it, and a way to get notified when this is resolved so that we can know when this functionality might be ready.
And do we actually have a guess at a release date for this to work?
|
|
|
Not really.
I have the repositories correct defined, and I can find the versions that I think I want. The problem is that I can't figure out the correct combination of ehcache-core, ehcache-terracotta and the terracotta runtime jar in order to make everything work.
What I really need is documentation that defines the inter-dependencies between the versions when working with ehcache and terracotta open source.
That documentation doesn't seem to exist/be easily located.
|
|
|
I am trying to move my app from ehcache 2.3 to 2.4 so that I can finally leverage multi-threaded write-behind caches.
However, we are using ehcache with terracotta open-source, and I can't seem to find any documentation that lists out what dependencies I need to define in my maven pom.xml to actually get this to work.
Using ehcache 2.4.0 and the ehcache-terracotta 2.4.0-SNAPSHOT (which is the only one available in the repo), I end up with runtime mesages about a
Code:
nested exception is java.lang.NoSuchMethodError: net.sf.ehcache.config.TerracottaConfiguration.getCoherenceMode()Lnet/sf/ehcache/config/TerracottaConfiguration$CoherenceMode
I fought dependency issues with this when the snapshots for 2.4 ehcache first came out and hoped that they would be resolved by the final release. But it doesn't appear that they have been (from what I can see).
Can someone tell me what dependencies I need for terracotta to be able to work with this?
|
|
|
really, the problem is that I can't find the ehcache-terracotta-2.4 jar to download, and it's in the new 2.4 jar that the dependency on EhcacheXAStore is resolved.
|
|
|
I have the most recent Terracotta jars (as those caused a earlier issue).
The fact is that the class in question was actually removed as part of 2.2, but something in the current 2.4 code is still referencing it.
|
|
|
Actually, I pulled the 2.4.0-SNAPSHOT from the terracottta/sonatype snapshot repo, and that's the one that threw the error. Which tells me that the problem is in the new ehcache library, especially when according to release notes, that class was removed in version 2.2.0
|
|
|
I am trying to do some testing with the 2.4 version of Ehcache so I can have multiple thread in my write-behind.
But when I try to run my app (which uses clustered Terracotta) I get the following error @ startup.
Code:
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cacheManager' defined in class path resource [applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NoClassDefFoundError: net/sf/ehcache/config/TerracottaConfigConfiguration
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1420)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
at org.springframework.beans.factory.config.BeanExpressionContext.getObject(BeanExpressionContext.java:56)
at org.springframework.context.expression.BeanExpressionContextAccessor.read(BeanExpressionContextAccessor.java:40)
at org.springframework.expression.spel.ast.PropertyOrFieldReference.readProperty(PropertyOrFieldReference.java:195)
at org.springframework.expression.spel.ast.PropertyOrFieldReference.getValueInternal(PropertyOrFieldReference.java:71)
at org.springframework.expression.spel.ast.CompoundExpression.getValueInternal(CompoundExpression.java:52)
at org.springframework.expression.spel.ast.SpelNodeImpl.getValue(SpelNodeImpl.java:93)
at org.springframework.expression.spel.standard.SpelExpression.getValue(SpelExpression.java:88)
at org.springframework.context.expression.StandardBeanExpressionResolver.evaluate(StandardBeanExpressionResolver.java:138)
... 92 more
Caused by: java.lang.NoClassDefFoundError: net/sf/ehcache/config/TerracottaConfigConfiguration
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.getConstructor(Class.java:1657)
at net.sf.ehcache.util.ClassLoaderUtil.createNewInstance(ClassLoaderUtil.java:91)
at net.sf.ehcache.terracotta.TerracottaClusteredInstanceHelper.newClusteredInstanceFactory(TerracottaClusteredInstanceHelper.java:176)
at net.sf.ehcache.terracotta.TerracottaClient.createNewClusteredInstanceFactory(TerracottaClient.java:175)
at net.sf.ehcache.terracotta.TerracottaClient.createClusteredInstanceFactory(TerracottaClient.java:135)
at net.sf.ehcache.CacheManager.init(CacheManager.java:337)
at net.sf.ehcache.CacheManager.<init>(CacheManager.java:281)
at org.springframework.cache.ehcache.EhCacheManagerFactoryBean.afterPropertiesSet(EhCacheManagerFactoryBean.java:112)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417)
I have downloaded the source code and don't see where anything is trying to invoke the non-existent TerracottaConfigConfiguration (which in 2.2 was renamed to TerracottaClientConfirmation).
Can someone help me track down this bug?
|
|
|