You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@trafficserver.apache.org by GitBox <gi...@apache.org> on 2020/07/14 21:07:46 UTC

[GitHub] [trafficserver] gtenev opened a new pull request #7001: Fix volume/stripe calcs when using forced volumes (#6995)

gtenev opened a new pull request #7001:
URL: https://github.com/apache/trafficserver/pull/7001


   Fixed problems with initialization of cache volumes when at least
   one volume is being forced to a specific "exclusive" span.
   
   Problem description:
   ====================
   Disks are cleared in the following configuration where volume sizes are
   specified using percentages and also one of the volumes is forced to a
   specific span (disk):
   
   ```
   storage.config:
     /dev/disk1
     /dev/disk2 volume=3 # <- exclusive span forced to a specific volume
   
   volume.config:
     volume=1 scheme=http size=50%
     volume=2 scheme=http size=50%
     volume=3 scheme=http size=512 # <- volume forced to an exclusive span
   ```
   
   During the first start ATS identifies the clears disks and does the following:
   1. creates and spreads new volume 1 and 2 blocks across disk1 and disk2
   2. deletes all volume 1 and 2 blocks from disk2 to make space for volume 3
   3. creates new volume 3 that takes over the whole disk2.
   
   In step (1) volumes are caclulated larger and spread to disk2 only to be
   deleted in step (2) to make space for the forced volume 3.
   
   During the initial start the global volume list cp_list would end up
   containing "zombie" CacheVol instances which corespond to the volume 1
   and 2 blocks deleted from disk2 to make space for the volume 3 and the
   mapping of domains to volumes (hosting.config) could end up mapping
   to any of the deleted volume blocks.
   
   This problem disappears after restart since cp_list will be initialized
   from the disks and cp_list will contain only valid CacheVol instances.
   
   The fix:
   ========
   This fix prevents this from happening by making sure all volumes meant
   to have "exclusive" disks are created first to make sure span free
   spaces are updated correctly and by excluding the size of
   the "exclusive" disks from the total cache size used for volume size
   calculations when sizes are specified in percentages (volume.config).
   
   (cherry picked from commit 17ee97aa90191767c25a485958965cd76f0e5013)


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [trafficserver] zwoop merged pull request #7001: Fix volume/stripe calcs when using forced volumes (#6995)

Posted by GitBox <gi...@apache.org>.
zwoop merged pull request #7001:
URL: https://github.com/apache/trafficserver/pull/7001


   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org