[Logo] Terracotta Discussion Forums
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
[Expert]
Ehcache update check  XML
Forum Index -> Ehcache
Author Message
boniecki

neo

Joined: 12/01/2009 05:10:15
Messages: 2
Offline

Why checking for ehcache update is done by default? Why not change it so checking is done only when you explicitly want it? You may say that it is simple change to ehcache.xml and it is - if you have one but not hundreds files to change in not quite centralized deployment scenario. It would be much easier to control this by system property let's say: -Dnet.sf.ehcache.check.for.update=false|true (false by default). Any thoughts on this?
hhuynh

cherubim

Joined: 06/16/2006 11:54:06
Messages: 761
Offline

It already has a property that works like that:

-Dnet.sf.ehcache.skipUpdateCheck=true
boniecki

neo

Joined: 12/01/2009 05:10:15
Messages: 2
Offline

Thanks! Question about default still stands though.
alexsolo

neo

Joined: 01/18/2010 03:56:40
Messages: 3
Offline

Another good question - why do you send our personal data to your server by default?

net.sf.ehcache.util.UpdateChecker.java:

private String buildParamsString() throws UnsupportedEncodingException {
ProductInfo productInfo = new ProductInfo();
StringBuilder sb = new StringBuilder();
sb.append("id=");
sb.append(getClientId());
sb.append("&os-name=");
sb.append(urlEncode(getProperty("os.name")));
sb.append("&jvm-name=");
sb.append(urlEncode(getProperty("java.vm.name")));
sb.append("&jvm-version=");
sb.append(urlEncode(getProperty("java.version")));
sb.append("&platform=");
sb.append(urlEncode(getProperty("os.arch")));
sb.append("&tc-version=");
sb.append(NOT_AVAILABLE);
sb.append("&tc-product=");
sb.append(urlEncode(productInfo.getName() + " " + productInfo.getVersion()));
sb.append("&source=");
sb.append(urlEncode(productInfo.getName()));
sb.append("&uptime-secs=");
sb.append(getUptimeInSeconds());
sb.append("&patch=");
sb.append(urlEncode(productInfo.getPatchLevel()));
return sb.toString();
}

Could you please just set private boolean updateCheck = false; ?
ari

seraphim

Joined: 05/24/2006 14:23:21
Messages: 1665
Location: San Francisco, CA
Offline

Interesting definition of "personal data." You will notice no unique identifier of you or your system is sent to us. Only your machine type. This allows us to prioritize quality assurance efforts for the good of the many.

Note: all update checkers work this way. They all send info about the version, etc. How else do you expect them to make recommendations about appropriate versions of updates available to you given your particular environment?

--Ari
[WWW]
meonkeys

neo
[Avatar]
Joined: 03/29/2010 09:06:40
Messages: 5
Offline

Hi Ari,

ari wrote:
You will notice no unique identifier of you or your system is sent to us. 

Except the IP address.

ari wrote:
all update checkers work this way. 

What other Java libraries include an "update checker"?

Is UpdateChecker enabled by default in any software in which Ehcache is used? If so, can you see why a library automatically going out on the network (to do anything) might be considered a bad thing?
[WWW]
ari

seraphim

Joined: 05/24/2006 14:23:21
Messages: 1665
Location: San Francisco, CA
Offline

Ok. let's not get in a fight here. Just so you know, IP address is not private. We get it from your update checker's attempt to connect to us, right?

This is why we allow you to turn it off...

a) you don't want updates
b) you have a sensitive production environment where you don't want outgoing connections. (BTW, our expectation is that all prod environments turn this off and only devs use update checker anyways)


And yes: glassfish, for example does an update check on start as do several other OSS containers, libraries, and frameworks. How do you think Glassfish and MySQL both show maps on their websites of how many people download and from where?

Again, I am not interested in any sort of argument. I just want to get our perspective out there--which is that we are helping the community to know what's available to them and better target their needs in the future. Feel free to disagree and then disable the update checker. Its fine by us.

But let's not turn it into something more than it is...let's not vilify Terracotta or pretend like its the only software doing this.

--Ari
[WWW]
alexsolo

neo

Joined: 01/18/2010 03:56:40
Messages: 3
Offline

ari wrote:
But let's not turn it into something more than it is...let's not vilify Terracotta or pretend like its the only software doing this.
--Ari 


It seems that check is a bit more than it is :( Very nice.

class SelfPopulatingCacheTest

//Skip update checks. Causing an OutOfMemoryError
System.setProperty("net.sf.ehcache.skipUpdateCheck", "true");

and damn I have to add

System.setProperty("org.terracotta.quartz.skipUpdateCheck", "true") for Quartz too.
rajoshi

seraphim

Joined: 07/04/2011 04:36:10
Messages: 1491
Offline

Issue seems to be resolved.Please let us know if more information is required.

Rakesh Joshi
Senior Consultant
Terracotta.
meonkeys

neo
[Avatar]
Joined: 03/29/2010 09:06:40
Messages: 5
Offline

rajoshi wrote:
Issue seems to be resolved. 


Resolved how?

Can you provide any related svn revisions, bug tracker issues or forum discussions?
[WWW]
 
Forum Index -> Ehcache
Go to:   
Powered by JForum 2.1.7 © JForum Team