9701: Changes on the Python SDK to allow small file packing on Collection class:
authorLucas Di Pentima <lucas@curoverse.com>
Wed, 5 Oct 2016 18:20:55 +0000 (15:20 -0300)
committerLucas Di Pentima <lucas@curoverse.com>
Wed, 5 Oct 2016 18:20:55 +0000 (15:20 -0300)
commit480df25dc679998b53f9e7299244ac1ff3f90114
tree1664a75a92aaf5481f0d072a637dbadd419e079f
parent224f384d411bb1b4cccc7165c55bb64fd5c695ad
9701: Changes on the Python SDK to allow small file packing on Collection class:
* Added optional flush parameter to ArvadosFileWriter.close().
* Added _closed attribute & related accessors to ArvadosFile to enable BlockManager to query this state.
* For every ArvadosFile close() operation, call BlockManager to search for small blocks for repacking purposes.
* Do a last repacking operation just before exiting, joining the last small blocks even if they don't meet the
  minimum size requirement.

There's some pending code cleanup, as BlockManager fiddles directly with ArvadosFile._segments lists, some locking:
issues have to be solved.
sdk/python/arvados/arvfile.py
sdk/python/arvados/commands/put.py