Revision fe3252ab snf-pithos-backend/pithos/backends/lib/sqlalchemy/node.py
b/snf-pithos-backend/pithos/backends/lib/sqlalchemy/node.py | ||
---|---|---|
245 | 245 |
Return () if the path is not found. |
246 | 246 |
""" |
247 | 247 |
|
248 |
if not paths: |
|
249 |
return () |
|
248 | 250 |
# Use LIKE for comparison to avoid MySQL problems with trailing spaces. |
249 | 251 |
s = select([self.nodes.c.node], self.nodes.c.path.in_(paths)) |
250 | 252 |
r = self.conn.execute(s) |
... | ... | |
353 | 355 |
rp = self.conn.execute(s) |
354 | 356 |
nodes = [r[0] for r in rp.fetchall()] |
355 | 357 |
rp.close() |
356 |
s = self.nodes.delete().where(self.nodes.c.node.in_(nodes)) |
|
357 |
self.conn.execute(s).close() |
|
358 |
if nodes: |
|
359 |
s = self.nodes.delete().where(self.nodes.c.node.in_(nodes)) |
|
360 |
self.conn.execute(s).close() |
|
358 | 361 |
|
359 | 362 |
return hashes, size, serials |
360 | 363 |
|
... | ... | |
405 | 408 |
r = self.conn.execute(s) |
406 | 409 |
nodes = r.fetchall() |
407 | 410 |
r.close() |
408 |
s = self.nodes.delete().where(self.nodes.c.node.in_(nodes)) |
|
409 |
self.conn.execute(s).close() |
|
411 |
if nodes: |
|
412 |
s = self.nodes.delete().where(self.nodes.c.node.in_(nodes)) |
|
413 |
self.conn.execute(s).close() |
|
410 | 414 |
|
411 | 415 |
return hashes, size, serials |
412 | 416 |
|
Also available in: Unified diff