History | View | Annotate | Download (69.7 kB)
pithos: Fix delete deleted object
Delete object used to create a new object version flagged as deletedregarless of the status of the previous version.However, delete requests of a deleted objectshould return 404 (NOT FOUND) response.
pithos: Fix backend logging.
Merge branch 'hotfix-0.14.5' into develop
Conflicts: snf-pithos-backend/pithos/backends/modular.py version
pithos: Fix access object version data/metadata
pithos: Fix TypeError when trying to retrieve invalid object version
pithos: Do not report size change in move object operation
Refs: #4154
pithos backend: Introduce debug_method decorator
Substitute debug statements with a backend method decoratorwhich registers the method execution arguments, the return valuesand the exceptions occured.
pithos: pep8 fixes
pithos backend: Extend list domain objects method
This method optionally accepts a user paramter and used to returnthe objects shared to the user and having a specific domain.This commit extends this functionality and returns also the objectsowned by the user and having the specific domain...
pithos: Update get objects in a specific domain
Improve performance
Refs: #3510
pithos: improve performance of get_domain_list
Before it used to query the databasefor all the objects having the specific domainand finally filtered out the objects to which the user had no access.Now gets first the allowed_paths for the user and then...
pithos: Handle backend transaction management
In commit 9f135224edf6e50386dc29e0a35806a92c56a50cthe transaction management has been movedfrom the pithos backend to pithos frontend.This commit updates all modules use pithos backendto handle transactions manually.
pithos: Cleanup api_method code
Merge branch 'tmp-pithos-tests' into feature-pithos-atomic-api
Conflicts: snf-pithos-app/pithos/api/util.py
pithos: return always etag
Refs: #3554
If update md5 is deactivated Pithos does not return an etag header.Pithos in that case should return the merkle hash as etag
pithos: Change block size by configuration
This is useful for testing corner cases efficiently.
pithos: move transaction managment and quotaholder sync in frontend
Remove backend_method decorator and move logic in the pithos api method
pithos: introduce lock_container_path api_method argument
pithos: conditional select for update in lookup account
pithos: enable api calls to lock explicitly the path
pithos: update pithos statistics computation
Compute account statistics instead of storing them in the databaseFix container statistics computationRelated commit: 3a9f1f113c1e2c853b7ae223fbcbb843d19f7f95
pithos: enforce transaction isolation level
Refs: #3582 #3585
pithos: update recursively statistics up to the container level
To achieve atomicity we lock the container path.However, the write operations update the statistics for the ancestornodes (container/account).Therefore, the backend restricts the recursion up to the container...
pithos-backend: disable AstakosClient if no URL given
If the backend is initialized with astakos_url=None,or AstakosClient cannot be imported,a fake AstakosClient is instantiated which will raisean AssertionError on any attempt to access it.
Read-only uses of pithos backend, as in pithcat,...
pithos: change resource usage retrieval
Replace ``astakosclient.get_info()`` with ``astakosclient.get_quotas()``
pithos: Update merged code
pithos: Update pithos management commands
Refs: #3625
pithos: Rename backend quotaholder properties
Refer to astakosclient instead of quotaholder
WIP astakosclient for quotas in pithos
pithos:Ensure serial registration before commission
Commit transaction before accepting the commissionand delete registered serials after successful commission.
Refs: #3594
pithos backend: update get_domain_objects method
Rename and change it to backend method(add the backend_method decorator)
Pithos backend: Return objects in a specific domain
pithos: Fix container quota violation control
Pithos backend before performing the quota violation checkscreates a new version of object and updates theusage of the ancestor nodes (the container).
In Postgresql SELECT does see the effectsof previous updates executed within its own transaction...
Change pithos default container policy quota to unlimited
Refs: #3543
pithos: Register commission serials to allow for recoery
Change pithos backend DEFAULT_PUBLIC_URL_SECURITY
Change value from 8 to 16, to conform with the defaultPITHOS_PUBLIC_URL_SECURITY setting.
Change pithos public URL implementation
Refs: commit: 56f3c759
Do not include encoded serial in the public URL.
Change PITHOS_PUBLIC_URL_MIN_LENGTH setting toPITHOS_PUBLIC_URL_SECURITY.
Log public set/unset functions.
Change pithos public implementation
Public URLs should consist of a random part.A public URL should be unique and should not beequal to any deleted public URL.Finally publishing a public object has no effect.Therefore, to generate a new public URL for an...
Eliminate mutable default arguments
Fix pithos purging accounting
Refs: #3442Refs: #1733
Fix+move HTTP quotaholder client in synnefo.lib
Allow per-service configuration of the (http) quotaholder client.Kamaki is no longer needed in service (or ganeti) nodes,because the client has been moved to snf-common.
Also fix the default quotaholder settings for pithos backend to be disabled...
Fix UUID bug breaking image list and VM creation
latest_uuid(uuid) returned the latest version with the given uuid.This is called from pithos backend method get_uuid(),which is called from plankton backend method get_image().
For the use in get_image() the uuid alone is not enough,...
Explicitly enabled/disable pithos quotaholder component
Use PITHOS_USE_QUOTAHOLDER setting
Pithos stop unnecessary contacts with quotaholder
Do not issue commission if there is not size change
Pithos: handle quotaholder exception errors
Remove trailing space
Restore container policy check
Debit pithos object owner not the request user
fix radosblocker merge, fix some tabs/whitespace
Fix pithos backend external_quota argument initialization
Return quotaholder holding in pithos backend
Fix pithos get_account_meta.
Do now show usage if request user is other than the owner
Merge branch 'latest-quota' of https://code.grnet.gr/git/synnefo into latest-quota
Conflicts: snf-astakos-app/astakos/im/forms.py snf-astakos-app/astakos/im/functions.py
Fix pithos versioning
Do not remove previous object version in case of free versioning policy
Fix pithos versioning (better implementation)
fix indentation in pithos.backend.modular
Pithos backend should send the token to the quotaholder
Pithos issue_commission using user uuid instead of id
Merge branch 'dev' of https://code.grnet.gr/git/pithos into latest-quota
Conflicts: .gitignore devtools/fabfile.py snf-pithos-app/pithos/api/util.py
Merge branch 'projects' of https://code.grnet.gr/git/astakos into latest-quota
Conflicts: .gitignore snf-astakos-app/conf/20-snf-astakos-app-settings.conf
fix quotaholder imports
Intergation with updated quotaholder module
If PITHOS_QUOTAHOLDER_URL is None do not try to connect to the quotaholder
Fix indent and add logging in case of QuotaError
If PITHOS_QUOTAHOLDER_URL is None, perform internal pithos quota checking
Merge branch 'dev' of https://code.grnet.gr/git/pithos into dev
Conflicts: snf-pithos-app/pithos/api/util.py snf-pithos-backend/pithos/backends/modular.py
Conflicts: snf-pithos-app/pithos/api/dispatch.py snf-pithos-app/pithos/api/management/commands/storagequota.py snf-pithos-app/pithos/api/util.py snf-pithos-backend/pithos/backends/modular.py
By default report size change in object delete/update (do not include older version size)
Send versions as string in resource events queue
Include version information in aquarium messages
Change QuotaholderSync to QuotaholderSerial
incorporate AMQPClient instead of synnefo.lib.queue methods for sending queue messages
fix backend variable name
fix mispelling
New database tables to keep track of quota holder commisions
Fix code formatting to conform to the PEP 8 style guide
rename resource to pithos+.diskspace
make sure backend hasattr 'messages'
fix: initialize per-request quotaholder seriallist
use astakos resource name in issue_commission
quotaholder serial handling fix
accept/reject commission on backend_method deco
wip issue_commision(). no accept or reject yet
wip quotaholder client in backend
fix UnboundLocalError
include path in messages sent to aquarium
Write more realistic tests
Refs: #2675
Call for delete container contents
Refs: #2611