Revision 7ed99da8

b/snf-pithos-backend/pithos/backends/lib/sqlalchemy/dbwrapper.py
55 55
        else:
56 56
            #self.engine = create_engine(db, pool_size=0, max_overflow=-1)
57 57
            self.engine = create_engine(db, poolclass=NullPool)
58
#         self.engine.echo = True
58
        self.engine.echo = False
59 59
        self.engine.echo_pool = False
60 60
        self.conn = self.engine.connect()
61 61
        self.trans = None
b/snf-pithos-backend/pithos/backends/modular.py
186 186

  
187 187
            self.queue = NoQueue()
188 188

  
189
        self.quotaholder = QuotaholderHTTP('http://127.0.0.1/api/quotaholder/v')
189
        self.quotaholder_url = quotaholder_url
190
        self.quotaholder = QuotaholderHTTP(quotaholder_url)
191
        self.serials = []
190 192

  
191 193
    def close(self):
192 194
        self.wrapper.close()
......
493 495
                self.store.map_delete(h)
494 496
            self.node.node_purge_children(node, until, CLUSTER_DELETED)
495 497
            self._report_size_change(user, account, -size,
496
            						 {'action':'container purge', 'path': path,
497
            						  'versions': ','.join(str(i) for i in serials)})
498
                                     {'action':'container purge', 'path': path,
499
                                      'versions': serials})
498 500
            return
499 501

  
500 502
        if not delimiter:
......
507 509
            self.node.node_purge_children(node, inf, CLUSTER_DELETED)
508 510
            self.node.node_remove(node)
509 511
            self._report_size_change(user, account, -size,
510
            						 {'action': 'container delete',
511
            						  'path': path,
512
            						  'versions': ','.join(str(i) for i in serials)})
512
                                     {'action': 'container delete',
513
                                      'path': path,
514
                                      'versions': serials})
513 515
        else:
514 516
                # remove only contents
515 517
            src_names = self._list_objects_no_limit(user, account, container, prefix='', delimiter=None, virtual=False, domain=None, keys=[], shared=False, until=None, size_range=None, all_props=True, public=False)
......
522 524
                    account, container, src_version_id)
523 525
                if del_size:
524 526
                    self._report_size_change(user, account, -del_size,
525
                    						 {'action': 'object delete',
526
                    						  'path': path,
527
                    						  'versions': ','.join([str(dest_version_id)])})
527
                                             {'action': 'object delete',
528
                                              'path': path, 'versions': [dest_version_id]})
528 529
                self._report_object_change(
529 530
                    user, account, path, details={'action': 'object delete'})
530 531
                paths.append(path)
......
815 816
                # This must be executed in a transaction, so the version is never created if it fails.
816 817
                raise QuotaError
817 818
        self._report_size_change(user, account, size_delta,
818
        						 {'action': 'object update', 'path': path,
819
        						  'versions': ','.join([str(dest_version_id)])})
819
                                 {'action': 'object update', 'path': path,
820
                                  'versions': [dest_version_id]})
820 821

  
821 822
        if permissions is not None:
822 823
            self.permissions.access_set(path, permissions)
......
947 948
            except NameError:
948 949
                self.permissions.access_clear(path)
949 950
            self._report_size_change(user, account, -size,
950
            						{'action': 'object purge', 'path': path,
951
            						 'versions': ','.join(str(i) for i in serials)})
951
                                    {'action': 'object purge', 'path': path,
952
                                     'versions': serials})
952 953
            return
953 954

  
954 955
        path, node = self._lookup_object(account, container, name)
......
956 957
        del_size = self._apply_versioning(account, container, src_version_id)
957 958
        if del_size:
958 959
            self._report_size_change(user, account, -del_size,
959
            						 {'action': 'object delete', 'path': path,
960
            						  'versions': ','.join([str(dest_version_id)])})
960
                                     {'action': 'object delete', 'path': path,
961
                                      'versions': [dest_version_id]})
961 962
        self._report_object_change(
962 963
            user, account, path, details={'action': 'object delete'})
963 964
        self.permissions.access_clear(path)
......
974 975
                    account, container, src_version_id)
975 976
                if del_size:
976 977
                    self._report_size_change(user, account, -del_size,
977
                    						 {'action': 'object delete',
978
                    						  'path': path,
979
                    						  'versions': ','.join([str(dest_version_id)])})
978
                                             {'action': 'object delete',
979
                                              'path': path,
980
                                              'versions': [dest_version_id]})
980 981
                self._report_object_change(
981 982
                    user, account, path, details={'action': 'object delete'})
982 983
                paths.append(path)
......
1234 1235
        logger.debug(
1235 1236
            "_report_size_change: %s %s %s %s", user, account, size, details)
1236 1237
        self.messages.append((QUEUE_MESSAGE_KEY_PREFIX % ('resource.diskspace',), 
1237
        					  account, QUEUE_INSTANCE_ID, 'diskspace',
1238
        					  float(size), details))
1239

  
1240
        serial = self.quotaholder.issue_provision()
1241
        self.serial.append(serial)
1238
                              account, QUEUE_INSTANCE_ID, 'diskspace',
1239
                              float(size), details))
1240

  
1241
        serial = self.quotaholder.issue_commission(
1242
                context     =   {},
1243
                target      =   account,
1244
                key         =   '1',
1245
                clientkey   =   'pithos',
1246
                ownerkey    =   '',
1247
                provisions  =   ()
1248
        )
1249
        self.serials.append(serial)
1242 1250

  
1243 1251
    def _report_object_change(self, user, account, path, details={}):
1244 1252
        details.update({'user': user})

Also available in: Unified diff