Revision 3046f62c

b/snf-pithos-app/pithos/api/manage_accounts/__init__.py
117 117
        if dest_account not in self.existing_accounts():
118 118
            raise NameError('%s does not exist' % dest_account)
119 119

  
120
        self.backend.wrapper.execute()
120
        trans = self.backend.wrapper.conn.begin()
121 121
        try:
122 122
            self._copy_object(src_account, src_container, src_name,
123 123
                              dest_account, move=True)
......
125 125
            if dry:
126 126
                if not silent:
127 127
                    print "Skipping database commit."
128
                self.backend.wrapper.rollback()
128
                trans.rollback()
129 129
            else:
130
                self.backend.wrapper.commit()
130
                trans.commit()
131 131
                if not silent:
132 132
                    print "%s is deleted." % src_account
133 133
        except:
134
            self.backend.wrapper.rollback()
134
            trans.rollback()
135 135
            raise
136 136

  
137 137
    def _copy_object(self, src_account, src_container, src_name,
......
247 247
                                                  src_account).keys()
248 248
            return
249 249

  
250
        self.backend.wrapper.execute()
250
        trans = self.backend.wrapper.conn.begin()
251 251
        try:
252 252
            self._merge_account(src_account, dest_account, delete_src)
253 253

  
254 254
            if dry:
255 255
                if not silent:
256 256
                    print "Skipping database commit."
257
                self.backend.wrapper.rollback()
257
                trans.rollback()
258 258
            else:
259
                self.backend.wrapper.commit()
259
                trans.commit()
260 260
                if not silent:
261 261
                    msg = "%s merged into %s."
262 262
                    print msg % (src_account, dest_account)
263 263
        except:
264
            self.backend.wrapper.rollback()
264
            trans.rollback()
265 265
            raise
266 266

  
267 267
    def delete_container_contents(self, account, container):
......
287 287
                % self.backend.get_account_groups(account, account).keys()
288 288
            return
289 289

  
290
        self.backend.wrapper.execute()
290
        trans = self.backend.wrapper.conn.begin()
291 291
        try:
292 292
            self._delete_account(account)
293 293

  
294 294
            if dry:
295 295
                if not silent:
296 296
                    print "Skipping database commit."
297
                self.backend.wrapper.rollback()
297
                trans.rollback()
298 298
            else:
299
                self.commit()
299
                trans.commit()
300 300
                if not silent:
301 301
                    print "%s is deleted." % account
302 302
        except:
303
            self.rollback()
303
            trans.rollback()
304 304
            raise
305 305

  
306 306
    def create_account(self, account):
b/snf-pithos-app/pithos/api/manage_accounts/cli/__init__.py
138 138
        failed = []
139 139

  
140 140
        def update_container_policy(account):
141
            utils.backend.wrapper.execute()
141
            trans = utils.backend.wrapper.conn.begin()
142 142
            try:
143 143
                utils.backend.update_container_policy(
144 144
                    account, account, args.container, {'quota': quota}
145 145
                )
146 146
                if args.dry:
147 147
                    print "Skipping database commit."
148
                    utils.backend.wrapper.rollback()
148
                    trans.rollback()
149 149
                else:
150
                    utils.backend.wrapper.commit()
150
                    trans.commit()
151 151
            except Exception, e:
152 152
                failed.append((account, e))
153 153

  

Also available in: Unified diff