def __init__(self, sqluri, standard_collections=False, fixed_collections=False, use_quota=False, quota_size=0, pool_size=100, pool_recycle=3600, cache_servers=None, mirrored_cache_servers=None, create_tables=False, shard=False, shardsize=100, memcached_json=False, **kw): self.sqlstorage = super(MemcachedSQLStorage, self) self.sqlstorage.__init__(sqluri, standard_collections, fixed_collections, use_quota, quota_size, pool_size, pool_recycle, create_tables=create_tables, shard=shard, shardsize=shardsize, **kw) if isinstance(cache_servers, str): cache_servers = [cache_servers] elif cache_servers is None: cache_servers = ['127.0.0.1:11211'] if isinstance(mirrored_cache_servers, str): mirrored_cache_servers = [mirrored_cache_servers] extra_kw = {} if memcached_json: extra_kw['pickler'] = _JSONDumper extra_kw['unpickler'] = _JSONDumper if mirrored_cache_servers is None: self.cache = CacheManager(cache_servers, **extra_kw) else: self.cache = MirroredCacheManager(cache_servers, mirrored_cache_servers, **extra_kw)