Skip to content
  • Mike Hibler's avatar
    Add script to approve a lease and add some locking in other scripts. · 6fef3cce
    Mike Hibler authored
    approvelease is the place where storage actually gets allocated for
    a lease. It uses bscontrol to contact an appropriate freeNAS storage
    server and allocate a ZFS volume.
    
    deletelease is the place where storage is deallocated. Note that once
    a lease has been approved and storage allocated, it cannot be returned
    to the unapproved state. The only way to free storage is to delete the
    lease.
    
    Both approve and delete use an intermediate state, "initializing", to
    signal that the lease is in the middle of a potentially time-consuming
    allocation/deallocation procedure. I probably should have just used the
    lease locking mechanism instead.
    
    Approve, delete, and mod all DO use the locking mechanism when examining
    and manipulating the state of a lease. Nonetheless, I am sure that are
    still plenty of races.
    6fef3cce