Revision 369a7b41

b/snf-pithos-app/pithos/api/settings.py
108 108

  
109 109
# The maximum number or items returned by the listing api methods
110 110
API_LIST_LIMIT = getattr(settings, 'PITHOS_API_LIST_LIMIT', 10000)
111

  
112
# The backend block size
113
BACKEND_BLOCK_SIZE = getattr(
114
    settings, 'PITHOS_BACKEND_BLOCK_SIZE', 4 * 1024 * 1024)
115

  
116
# The backend block hash algorithm
117
BACKEND_HASH_ALGORITHM = getattr(
118
    settings, 'PITHOS_BACKEND_HASH_ALGORITHM', 'sha256')
b/snf-pithos-app/pithos/api/test/__init__.py
92 92
        pithos_settings.BACKEND_DB_MODULE = 'pithos.backends.lib.sqlalchemy'
93 93
        pithos_settings.BACKEND_DB_CONNECTION = django_to_sqlalchemy()
94 94
        pithos_settings.BACKEND_POOL_SIZE = 1
95

  
96
        # Override default block size to spead up tests
97
        pithos_settings.BACKEND_BLOCK_SIZE = 1024
98

  
95 99
        self.user = 'user'
96 100
        self.pithos_path = join_urls(get_service_path(
97 101
            pithos_settings.pithos_services, 'object-store'))
b/snf-pithos-app/pithos/api/util.py
59 59
                                 BACKEND_ACCOUNT_QUOTA, BACKEND_CONTAINER_QUOTA,
60 60
                                 BACKEND_VERSIONING,
61 61
                                 BACKEND_FREE_VERSIONING, BACKEND_POOL_SIZE,
62
                                 BACKEND_BLOCK_SIZE, BACKEND_HASH_ALGORITHM,
62 63
                                 RADOS_STORAGE, RADOS_POOL_BLOCKS,
63 64
                                 RADOS_POOL_MAPS, TRANSLATE_UUIDS,
64 65
                                 PUBLIC_URL_SECURITY,
......
999 1000
        block_module=BACKEND_BLOCK_MODULE,
1000 1001
        block_path=BACKEND_BLOCK_PATH,
1001 1002
        block_umask=BACKEND_BLOCK_UMASK,
1003
        block_size=BACKEND_BLOCK_SIZE,
1004
        hash_algorithm=BACKEND_HASH_ALGORITHM,
1002 1005
        queue_module=BACKEND_QUEUE_MODULE,
1003 1006
        queue_hosts=BACKEND_QUEUE_HOSTS,
1004 1007
        queue_exchange=BACKEND_QUEUE_EXCHANGE,
b/snf-pithos-backend/pithos/backends/modular.py
94 94
DEFAULT_BLOCK_MODULE = 'pithos.backends.lib.hashfiler'
95 95
DEFAULT_BLOCK_PATH = 'data/'
96 96
DEFAULT_BLOCK_UMASK = 0o022
97
DEFAULT_BLOCK_SIZE = 4 * 1024 * 1024  # 4MB
98
DEFAULT_HASH_ALGORITHM = 'sha256'
97 99
#DEFAULT_QUEUE_MODULE = 'pithos.backends.lib.rabbitmq'
98 100
DEFAULT_BLOCK_PARAMS = { 'mappool': None, 'blockpool': None }
99 101
#DEFAULT_QUEUE_HOSTS = '[amqp://guest:guest@localhost:5672]'
......
126 128

  
127 129
    def __init__(self, db_module=None, db_connection=None,
128 130
                 block_module=None, block_path=None, block_umask=None,
131
                 block_size=None, hash_algorithm=None,
129 132
                 queue_module=None, queue_hosts=None, queue_exchange=None,
130 133
                 astakos_url=None, service_token=None,
131 134
                 astakosclient_poolsize=None,
......
141 144
        block_path = block_path or DEFAULT_BLOCK_PATH
142 145
        block_umask = block_umask or DEFAULT_BLOCK_UMASK
143 146
        block_params = block_params or DEFAULT_BLOCK_PARAMS
147
        block_size = block_size or DEFAULT_BLOCK_SIZE
148
        hash_algorithm = hash_algorithm or DEFAULT_HASH_ALGORITHM
144 149
        #queue_module = queue_module or DEFAULT_QUEUE_MODULE
145 150
        account_quota_policy = account_quota_policy or DEFAULT_ACCOUNT_QUOTA
146 151
        container_quota_policy = container_quota_policy \
......
156 161
        #queue_hosts = queue_hosts or DEFAULT_QUEUE_HOSTS
157 162
        #queue_exchange = queue_exchange or DEFAULT_QUEUE_EXCHANGE
158 163

  
159
        self.public_url_security = public_url_security or DEFAULT_PUBLIC_URL_SECURITY
160
        self.public_url_alphabet = public_url_alphabet or DEFAULT_PUBLIC_URL_ALPHABET
164
        self.public_url_security = (public_url_security or
165
            DEFAULT_PUBLIC_URL_SECURITY)
166
        self.public_url_alphabet = (public_url_alphabet or
167
            DEFAULT_PUBLIC_URL_ALPHABET)
161 168

  
162
        self.hash_algorithm = 'sha256'
163
        self.block_size = 4 * 1024 * 1024  # 4MB
169
        self.hash_algorithm = hash_algorithm
170
        self.block_size = block_size
164 171
        self.free_versioning = free_versioning
165 172

  
166 173
        def load_module(m):
b/snf-pithos-backend/pithos/backends/util.py
43 43
class PithosBackendPool(ObjectPool):
44 44
    def __init__(self, size=None, db_module=None, db_connection=None,
45 45
                 block_module=None, block_path=None, block_umask=None,
46
                 block_size=None, hash_algorithm=None,
46 47
                 queue_module=None, queue_hosts=None,
47 48
                 queue_exchange=None, free_versioning=True,
48 49
                 astakos_url=None, service_token=None,
......
60 61
        self.block_module = block_module
61 62
        self.block_path = block_path
62 63
        self.block_umask = block_umask
64
        self.block_size = block_size
65
        self.hash_algorithm = hash_algorithm
63 66
        self.queue_module = queue_module
64 67
        self.block_params = block_params
65 68
        self.queue_hosts = queue_hosts
......
81 84
                block_module=self.block_module,
82 85
                block_path=self.block_path,
83 86
                block_umask=self.block_umask,
87
                block_size = self.block_size,
88
                hash_algorithm = self.hash_algorithm,
84 89
                queue_module=self.queue_module,
85 90
                block_params=self.block_params,
86 91
                queue_hosts=self.queue_hosts,

Also available in: Unified diff