Assigned
Status Update
Comments
ba...@google.com <ba...@google.com>
ku...@google.com <ku...@google.com> #2
i meant the following:
import com.google.appengine.api.memcache.MemcacheService;
import com.google.appengine.api.memcache.MemcacheServiceFactory;
import java.util.Collection;
import java.util.Map;
import java.util.Set;
public class AppEngineCache implements Map {
protected MemcacheService cache = MemcacheServiceFactory.getMemcacheService();
public int size() {
return new Long(cache.getStatistics().getItemCount()).intValue();
}
public boolean isEmpty() {
return cache.getStatistics().getItemCount() != 0;
}
public boolean containsKey(Object key) {
return cache.contains(key);
}
public boolean containsValue(Object value) {
throw new UnsupportedOperationException("containsValue() is not supported in
App Engine");
}
public Object get(Object key) {
return cache.get(key);
}
public Object put(Object key, Object value) {
cache.put(key, value);
return value;
}
public Object remove(Object key) {
Object value = cache.get(key);
cache.delete(key);
return value;
}
public void putAll(Map m) {
cache.putAll(m);
}
public void clear() {
cache.clearAll();
}
public Set keySet() {
throw new UnsupportedOperationException("keySet() is not supported in App
Engine");
}
public Collection values() {
throw new UnsupportedOperationException("values() is not supported in App
Engine");
}
public Set entrySet() {
throw new UnsupportedOperationException("entrySet() is not supported in App
Engine");
}
}
import com.google.appengine.api.memcache.MemcacheService;
import com.google.appengine.api.memcache.MemcacheServiceFactory;
import java.util.Collection;
import java.util.Map;
import java.util.Set;
public class AppEngineCache implements Map {
protected MemcacheService cache = MemcacheServiceFactory.getMemcacheService();
public int size() {
return new Long(cache.getStatistics().getItemCount()).intValue();
}
public boolean isEmpty() {
return cache.getStatistics().getItemCount() != 0;
}
public boolean containsKey(Object key) {
return cache.contains(key);
}
public boolean containsValue(Object value) {
throw new UnsupportedOperationException("containsValue() is not supported in
App Engine");
}
public Object get(Object key) {
return cache.get(key);
}
public Object put(Object key, Object value) {
cache.put(key, value);
return value;
}
public Object remove(Object key) {
Object value = cache.get(key);
cache.delete(key);
return value;
}
public void putAll(Map m) {
cache.putAll(m);
}
public void clear() {
cache.clearAll();
}
public Set keySet() {
throw new UnsupportedOperationException("keySet() is not supported in App
Engine");
}
public Collection values() {
throw new UnsupportedOperationException("values() is not supported in App
Engine");
}
public Set entrySet() {
throw new UnsupportedOperationException("entrySet() is not supported in App
Engine");
}
}
bm...@scu.edu <bm...@scu.edu> #3
This issue came up for us because we want a way to force a full cache flush of memcached. So however you wish to implement that ability would be much appreciated.
Thanks!
Thanks!
Description
This will create a feature request which anybody can view and comment on.
Please describe your requested enhancement. Good feature requests will solve common problems or enable new use cases.
Issue:
A feature where there is a direct way to add the restart flag for the nodes in the UPDATE Command for Memorystore for Memcached.
Problem encountered:
The first time when tried to run the command
gcloud memcache instances update --region=value <memcacheInstance> --parameters=disable-flush-all=false
, the nodes show that they need to be restarted due to a configuration change. Restarting both nodes at the same time then does the full cache flush. If we try to do this again, there is no pending configuration change, so the nodes do not restart and the cache does not get flushed. Is there a way to simply force both nodes to restart?.What is expected to happen:
An ability to add the restart flag for the nodes in the UPDATE Command for Memorystore for Memcached.