)]}'
{"lib/etcd3":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"32c5a835d1b252406098b5faeb410b2f3e5ea70a","unresolved":false,"context_lines":[{"line_number":100,"context_line":"    sudo mkdir -p $ETCD_BIN_DIR"},{"line_number":101,"context_line":"    sudo mkdir -p $ETCD_DATA_DIR"},{"line_number":102,"context_line":"    if [[ \"$ETCD_USE_RAMDISK\" \u003d\u003d \"True\" ]]; then"},{"line_number":103,"context_line":"        sudo mount -t ramfs -o size\u003d512m ramfs $ETCD_DATA_DIR"},{"line_number":104,"context_line":"    fi"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"    # Download and cache the etcd tgz for subsequent use"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"9fdfeff1_7780b28c","line":103,"updated":"2019-01-22 19:47:19.000000000","message":"ramfs doesn\u0027t have the ability to limit size (I thought it was weird this worked, but \"-o foo\u003dbar\" also worked, so I guess the TIL is that there are no mount options, and thus no checking for ramfs).  I think tmpfs is more appropriate here so would like to see that changed.\n\nI wonder if the size should be configurable?\n\nA niggling concern is that we\u0027ve done this sort of thing before in tests, reminded of [1].  I wouldn\u0027t like to start an arms (rams?) race with more and more separate mounts ... it obviously stops scaling quickly.\n\n[1] https://review.openstack.org/#/c/612816/","commit_id":"d5a487a65a9c5ee293801120645404f341ddeed2"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"c3869fe18e54f7fc96f47fe0f1d9c720191f4220","unresolved":false,"context_lines":[{"line_number":100,"context_line":"    sudo mkdir -p $ETCD_BIN_DIR"},{"line_number":101,"context_line":"    sudo mkdir -p $ETCD_DATA_DIR"},{"line_number":102,"context_line":"    if [[ \"$ETCD_USE_RAMDISK\" \u003d\u003d \"True\" ]]; then"},{"line_number":103,"context_line":"        sudo mount -t ramfs -o size\u003d512m ramfs $ETCD_DATA_DIR"},{"line_number":104,"context_line":"    fi"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"    # Download and cache the etcd tgz for subsequent use"}],"source_content_type":"application/x-shellscript","patch_set":2,"id":"9fdfeff1_3620deb0","line":103,"in_reply_to":"9fdfeff1_7780b28c","updated":"2019-01-23 13:05:22.000000000","message":"\u003e ramfs doesn\u0027t have the ability to limit size (I thought it was\n \u003e weird this worked, but \"-o foo\u003dbar\" also worked, so I guess the TIL\n \u003e is that there are no mount options, and thus no checking for\n \u003e ramfs).  \n\nI think the `size` with ramfs is just the initial reserved amount of RAM. Might be wrong here though.\n\n \u003e I think tmpfs is more appropriate here so would like to\n \u003e see that changed.\n\nMy main reason to use ramfs was to avoid it going into swap. I now see that gate VMs have no swap, so sure, I\u0027ll change it.\n\n \u003e I wonder if the size should be configurable?\n\nYeah, that might be quite useful actually. I\u0027ll add it.\n\n \u003e A niggling concern is that we\u0027ve done this sort of thing before in\n \u003e tests, reminded of [1].  I wouldn\u0027t like to start an arms (rams?)\n \u003e race with more and more separate mounts ... it obviously stops\n \u003e scaling quickly.\n \u003e \n \u003e [1] https://review.openstack.org/#/c/612816/\n\nI understand the concern, that\u0027s why I make it optional and want only to enable it in kuryr-kubernetes jobs where we suffer greatly due to fsyncs on GRA1 taking even up to 20 seconds. Kubernetes is unable to withstand that and jobs explode. I still work with OVH folks to fix the underlying cause, but this is going on for a while and ramdisk seems to be simplest idea to increase stability of our jobs. I\u0027ve recently seen patch that was rechecked 13 times and still haven\u0027t merged.","commit_id":"d5a487a65a9c5ee293801120645404f341ddeed2"},{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"609c1cc28b1234ec0237c57123a029e09fbc58b4","unresolved":false,"context_lines":[{"line_number":28,"context_line":"ETCD_SYSTEMD_SERVICE\u003d\"devstack@etcd.service\""},{"line_number":29,"context_line":"ETCD_BIN_DIR\u003d\"$DEST/bin\""},{"line_number":30,"context_line":"ETCD_USE_RAMDISK\u003d$(trueorfalse False ETCD_USE_RAMDISK)"},{"line_number":31,"context_line":"ETCD_RAMDISK_MB\u003d${ETCD_RAMDISK_MB:-512}"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"if is_ubuntu ; then"},{"line_number":34,"context_line":"    UBUNTU_RELEASE_BASE_NUM\u003d`lsb_release -r | awk \u0027{print $2}\u0027 | cut -d \u0027.\u0027 -f 1`"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"9fdfeff1_b8bfc6f9","line":31,"updated":"2019-01-24 10:02:06.000000000","message":"Did you simply guess a default here or have you done tests to see how much space is actually needed? I\u0027d like to avoid issues just because some job suddenly needs 600M.","commit_id":"1c0ba292af42ad2660a6116922abc65d66aea209"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"28288c98acf18ec7c68c41dd61c6dd636364c890","unresolved":false,"context_lines":[{"line_number":28,"context_line":"ETCD_SYSTEMD_SERVICE\u003d\"devstack@etcd.service\""},{"line_number":29,"context_line":"ETCD_BIN_DIR\u003d\"$DEST/bin\""},{"line_number":30,"context_line":"ETCD_USE_RAMDISK\u003d$(trueorfalse False ETCD_USE_RAMDISK)"},{"line_number":31,"context_line":"ETCD_RAMDISK_MB\u003d${ETCD_RAMDISK_MB:-512}"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"if is_ubuntu ; then"},{"line_number":34,"context_line":"    UBUNTU_RELEASE_BASE_NUM\u003d`lsb_release -r | awk \u0027{print $2}\u0027 | cut -d \u0027.\u0027 -f 1`"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"9fdfeff1_5638eb3b","line":31,"in_reply_to":"9fdfeff1_b8bfc6f9","updated":"2019-01-24 12:42:54.000000000","message":"I\u0027m running a Kuryr-Kubernetes patch [1] depending on this one. It\u0027s df [2] only shows 124 MB used:\n\n tmpfs           512M  124M  389M  25% /opt/stack/data/etcd\n\nand in Kuryr-Kubernetes we run whole Kubernetes on that etcd, so I don\u0027t think any other job uses etcd more. 512 MB seems like a safe value, especially because tmpfs doesn\u0027t consume RAM for unused space. Additionally it\u0027s an optional thing, so I think anyone wishing to turn it in can tune the ETCD_RAMDISK_MB option.\n\n[1] I9543c1b7aa41e10b64996b0d705593521f46b8b2\n[2] http://logs.openstack.org/06/631506/4/check/kuryr-kubernetes-tempest-daemon-octavia/e435c38/controller/logs/df.txt.gz","commit_id":"1c0ba292af42ad2660a6116922abc65d66aea209"}],"stackrc":[{"author":{"_account_id":13252,"name":"Dr. Jens Harbott","display_name":"Jens Harbott (frickler)","email":"frickler@offenerstapel.de","username":"jrosenboom"},"change_message_id":"609c1cc28b1234ec0237c57123a029e09fbc58b4","unresolved":false,"context_lines":[{"line_number":767,"context_line":"ETCD_DOWNLOAD_LOCATION\u003d$ETCD_DOWNLOAD_URL/$ETCD_VERSION/$ETCD_DOWNLOAD_FILE"},{"line_number":768,"context_line":"# etcd is always required, so place it into list of pre-cached downloads"},{"line_number":769,"context_line":"EXTRA_CACHE_URLS+\u003d\",$ETCD_DOWNLOAD_LOCATION\""},{"line_number":770,"context_line":"# Option below will mount ETCD_DATA_DIR as ramdisk, which is useful to run"},{"line_number":771,"context_line":"# etcd-heavy services in the gate VM\u0027s, e.g. Kubernetes."},{"line_number":772,"context_line":"ETCD_USE_RAMDISK\u003d${ETCD_USE_RAMDISK:-False}"},{"line_number":773,"context_line":""},{"line_number":774,"context_line":"# Detect duplicate values in IMAGE_URLS"},{"line_number":775,"context_line":"for image_url in ${IMAGE_URLS//,/ }; do"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"9fdfeff1_58cfbaaf","line":772,"range":{"start_line":770,"start_character":0,"end_line":772,"end_character":43},"updated":"2019-01-24 10:02:06.000000000","message":"I don\u0027t think it is good to have two defaults, better just drop this and move the comment to lib/etcd, where the default is specified in the trueorfalse statement.","commit_id":"1c0ba292af42ad2660a6116922abc65d66aea209"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"28288c98acf18ec7c68c41dd61c6dd636364c890","unresolved":false,"context_lines":[{"line_number":767,"context_line":"ETCD_DOWNLOAD_LOCATION\u003d$ETCD_DOWNLOAD_URL/$ETCD_VERSION/$ETCD_DOWNLOAD_FILE"},{"line_number":768,"context_line":"# etcd is always required, so place it into list of pre-cached downloads"},{"line_number":769,"context_line":"EXTRA_CACHE_URLS+\u003d\",$ETCD_DOWNLOAD_LOCATION\""},{"line_number":770,"context_line":"# Option below will mount ETCD_DATA_DIR as ramdisk, which is useful to run"},{"line_number":771,"context_line":"# etcd-heavy services in the gate VM\u0027s, e.g. Kubernetes."},{"line_number":772,"context_line":"ETCD_USE_RAMDISK\u003d${ETCD_USE_RAMDISK:-False}"},{"line_number":773,"context_line":""},{"line_number":774,"context_line":"# Detect duplicate values in IMAGE_URLS"},{"line_number":775,"context_line":"for image_url in ${IMAGE_URLS//,/ }; do"}],"source_content_type":"application/x-shellscript","patch_set":4,"id":"9fdfeff1_163a6333","line":772,"range":{"start_line":770,"start_character":0,"end_line":772,"end_character":43},"in_reply_to":"9fdfeff1_58cfbaaf","updated":"2019-01-24 12:42:54.000000000","message":"Sure.","commit_id":"1c0ba292af42ad2660a6116922abc65d66aea209"}]}
