)]}'
{"doc/source/dev/cassandra.rst":[{"author":{"_account_id":8491,"name":"Illia Khudoshyn","email":"ikhudoshyn@mirantis.com","username":"ikhudoshyn"},"change_message_id":"9934b72ed45598b4ff4d2d8288ac77a0c75871f0","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Cassandra relays on cloud-init script."},{"line_number":8,"context_line":"It prepares VM with java, full-gear python 2.7, virtualenv and guestagent* in it."},{"line_number":9,"context_line":"Avarege time for cloud-init processing is 11-13 mins."},{"line_number":10,"context_line":"I\u0027d suggest you to https://github.com/rackerjoe/oz-image-build for custom image."},{"line_number":11,"context_line":"Base template is https://github.com/rackerjoe/oz-image-build/blob/master/templates/ubuntu-precise_x86_64_60G.tdl"},{"line_number":12,"context_line":"but it need to be customised for cassandra-in-trove needs"}],"source_content_type":"text/x-rst","patch_set":15,"id":"AAAATn%2F%2FFYk%3D","line":9,"updated":"2013-11-14 16:14:31.000000000","message":"Please fix,  Avarege -\u003e Average","commit_id":"678c39cfca5ab825adb565e721eea8c2454842a7"}],"etc/trove/cloudinit/cassandra.cloudinit":[{"author":{"_account_id":8491,"name":"Illia Khudoshyn","email":"ikhudoshyn@mirantis.com","username":"ikhudoshyn"},"change_message_id":"f79bb04d1c3a60f5af382f0c723e1e53949304f8","unresolved":false,"context_lines":[{"line_number":28,"context_line":"mkdir -p /root/.ssh"},{"line_number":29,"context_line":"touch /root/.ssh/authorized_keys"},{"line_number":30,"context_line":"echo \"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCPWH4REJVD121pUCyXPR1lwh0U6Lh5cS9hyq6Ok15tuJkaKKN1Nzvy7uDTUq1RhF32Ep3BwNTk07cuY2znhUuYlDWaovmpXzj1KWnb5LjWqjlGVRq2trASP0HpzEhrSwhQ2Mhln/32On5iKi2TYUaz18cKllsseXzTTfSp9G263fyVnxew2SpbiJPnFF5v4URS0a7bJUaAc7F5U9rXo0olkgr2QBqafR3tNMXqfCpYi60tX8FckBhXBsYVp+X79gLlcyuSV6Wf7MdjwsjbM9PG7+ozYq6y8t08CRf34er5WiG94U8DYWxim7z2GtHZSslqxI5GiKPiqUpqIiPnRiX dmakogon@dmakogon-pc\" \u003e\u003e /root/.ssh/authorized_keys"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"################################ ssh ###################################################################"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"################################ Py ###################################################################"}],"source_content_type":"application/x-shellscript","patch_set":1,"id":"AAAATH%2F%2FcAo%3D","line":31,"updated":"2013-10-16 07:14:26.000000000","message":"You are not going to commit YOUR public key, are you?","commit_id":"736a336179096be35c557e3e0cf02e772fa79365"},{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"c9efc98f14cf896c44d278534b3c4ebdd7cfa03a","unresolved":false,"context_lines":[{"line_number":17,"context_line":""},{"line_number":18,"context_line":"apt-get update"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py"},{"line_number":21,"context_line":"python ez_setup.py"},{"line_number":22,"context_line":"wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py"},{"line_number":23,"context_line":"python get-pip.py"}],"source_content_type":"application/x-shellscript","patch_set":16,"id":"AAAATn%2F%2B7Dk%3D","line":20,"updated":"2013-11-18 15:17:38.000000000","message":"why are you using wget after you just installed curl? You can one line this with curl:\n\u003e curl -s https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py | python","commit_id":"1101a3da93bfe6c0b9d342e7c2b28d73c78d0d4c"},{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"c9efc98f14cf896c44d278534b3c4ebdd7cfa03a","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py"},{"line_number":21,"context_line":"python ez_setup.py"},{"line_number":22,"context_line":"wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py"},{"line_number":23,"context_line":"python get-pip.py"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":16,"id":"AAAATn%2F%2B7DY%3D","line":22,"updated":"2013-11-18 15:17:38.000000000","message":"same thing here","commit_id":"1101a3da93bfe6c0b9d342e7c2b28d73c78d0d4c"}],"trove/guestagent/common/operating_system.py":[{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"2640d129e067834774d98485c381f2a8ba617872","unresolved":false,"context_lines":[{"line_number":73,"context_line":"    return result"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"def get_ip_address(ifname\u003d\u0027eth0\u0027):"},{"line_number":77,"context_line":"    s \u003d socket.socket(socket.AF_INET, socket.SOCK_DGRAM)"},{"line_number":78,"context_line":"    return socket.inet_ntoa(fcntl.ioctl("},{"line_number":79,"context_line":"        s.fileno(),"}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAUH%2F%2F3FI%3D","line":76,"updated":"2014-01-07 15:33:48.000000000","message":"This looks fairly complex, possibly you should add some more comments about what this is doing or link to a stackoverflow question.","commit_id":"88370e4c11318da603451435e0e57cb84a567caa"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"d15778bd3248206708180758e6fc62d9c2b4e0ef","unresolved":false,"context_lines":[{"line_number":73,"context_line":"    return result"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"def get_ip_address(ifname\u003d\u0027eth0\u0027):"},{"line_number":77,"context_line":"    s \u003d socket.socket(socket.AF_INET, socket.SOCK_DGRAM)"},{"line_number":78,"context_line":"    return socket.inet_ntoa(fcntl.ioctl("},{"line_number":79,"context_line":"        s.fileno(),"}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAUH%2F%2F2Jw%3D","line":76,"in_reply_to":"AAAAUH%2F%2F3FI%3D","updated":"2014-01-07 18:59:23.000000000","message":"Ok, i\u0027ll add few comments.","commit_id":"88370e4c11318da603451435e0e57cb84a567caa"}],"trove/guestagent/datastore/cassandra/README":[{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"892fa520839847afb95a6b2568927ff41fbb0f50","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Please be informed. Trove set ups Cassandra 1.2.10."},{"line_number":2,"context_line":"Cassandra relays on cloud-init script."},{"line_number":3,"context_line":"It prepares VM with java, full-gear python 2.7, virtualenv and guestagent* in it."},{"line_number":4,"context_line":"Avarege time for cloud-init processing is 11-13 mins."}],"source_content_type":"application/octet-stream","patch_set":9,"id":"AAAATn%2F%2F9d4%3D","line":1,"updated":"2013-10-24 15:45:15.000000000","message":"Nit: Can we format this with either markdown or resttext? That way it will show up a little nicer when browsing the code.","commit_id":"48f376a5fc94b37ede88a7ea56ebe769ba053ed0"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"af72c374be79af503c3f9cd2657745a343f8a032","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Please be informed. Trove set ups Cassandra 1.2.10."},{"line_number":2,"context_line":"Cassandra relays on cloud-init script."},{"line_number":3,"context_line":"It prepares VM with java, full-gear python 2.7, virtualenv and guestagent* in it."},{"line_number":4,"context_line":"Avarege time for cloud-init processing is 11-13 mins."}],"source_content_type":"application/octet-stream","patch_set":9,"id":"AAAATn%2F%2F9Oo%3D","line":1,"in_reply_to":"AAAATn%2F%2F9d4%3D","updated":"2013-10-24 16:26:57.000000000","message":"k","commit_id":"48f376a5fc94b37ede88a7ea56ebe769ba053ed0"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"963c132aa7c8f480b3297b15d6840b37989b69c8","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Cassandra relays on cloud-init script."},{"line_number":2,"context_line":"It prepares VM with java, full-gear python 2.7, virtualenv and guestagent* in it."},{"line_number":3,"context_line":"Avarege time for cloud-init processing is 11-13 mins."},{"line_number":4,"context_line":"I\u0027d suggest you to https://github.com/rackerjoe/oz-image-build for custom image."},{"line_number":5,"context_line":"Base template is https://github.com/rackerjoe/oz-image-build/blob/master/templates/ubuntu-precise_x86_64_60G.tdl"}],"source_content_type":"application/octet-stream","patch_set":13,"id":"AAAATn%2F%2FJKM%3D","line":2,"updated":"2013-11-13 21:42:25.000000000","message":"move this do doc/dev","commit_id":"07bdd877049ce114274bc23a623697015a960112"}],"trove/guestagent/datastore/cassandra/__init__.py":[{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"c27fa0c06a16427d783de2dd8392f1292e39f238","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright (c) 2013 OpenStack Foundation"},{"line_number":4,"context_line":"# All Rights Reserved."}],"source_content_type":"text/x-python","patch_set":19,"id":"AAAATn%2F9tBc%3D","line":1,"updated":"2013-12-06 22:58:09.000000000","message":"make file clean.","commit_id":"edb0dd3fe80dcba9bcdcf8591aebbbbfea4affaf"}],"trove/guestagent/datastore/cassandra/manager.py":[{"author":{"_account_id":1049,"name":"Conrad Weidenkeller","email":"conrad@weidenkeller.com","username":"cweidenkeller"},"change_message_id":"5336f0e474f3291f3bfa9a286eecd55c1c357b3f","unresolved":false,"context_lines":[{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    @periodic_task.periodic_task(ticks_between_runs\u003d1)"},{"line_number":44,"context_line":"    def update_status(self, context):"},{"line_number":45,"context_line":"        \"\"\"Update the status of the MySQL service\"\"\""},{"line_number":46,"context_line":"        self.appStatus.update()"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def restart(self):"}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAATn%2F8zK0%3D","line":45,"updated":"2013-12-20 07:36:06.000000000","message":"This Should be cassandra not mysql","commit_id":"829dc94fd10fca550edabd0264b7c3315158fe7a"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    def prepare(self, context, packages, databases, memory_mb, users,"},{"line_number":56,"context_line":"                device_path\u003dNone, mount_point\u003dNone, backup_info\u003dNone,"},{"line_number":57,"context_line":"                config_contents\u003dNone, root_password\u003dNone):"},{"line_number":58,"context_line":"        LOG.info(\"Setting status BUILDING\")"},{"line_number":59,"context_line":"        self.appStatus.begin_install()"},{"line_number":60,"context_line":"        LOG.info(\"Installing cassandra\")"},{"line_number":61,"context_line":"        if packages:"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2FkyI%3D","line":58,"updated":"2014-01-10 21:44:59.000000000","message":"Log message needs to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":57,"context_line":"                config_contents\u003dNone, root_password\u003dNone):"},{"line_number":58,"context_line":"        LOG.info(\"Setting status BUILDING\")"},{"line_number":59,"context_line":"        self.appStatus.begin_install()"},{"line_number":60,"context_line":"        LOG.info(\"Installing cassandra\")"},{"line_number":61,"context_line":"        if packages:"},{"line_number":62,"context_line":"            self.app.install_if_needed(packages)"},{"line_number":63,"context_line":"            if config_contents:"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2FkyA%3D","line":60,"updated":"2014-01-10 21:44:59.000000000","message":"Log message needs to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":61,"context_line":"        if packages:"},{"line_number":62,"context_line":"            self.app.install_if_needed(packages)"},{"line_number":63,"context_line":"            if config_contents:"},{"line_number":64,"context_line":"                LOG.info(\"Config processing\")"},{"line_number":65,"context_line":"                self.app.write_config(config_contents)"},{"line_number":66,"context_line":"            updates \u003d {"},{"line_number":67,"context_line":"                \u0027rpc_address\u0027: operating_system.get_ip_address(),"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2Fkxs%3D","line":64,"updated":"2014-01-10 21:44:59.000000000","message":"Log message needs to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":102,"context_line":"        else:"},{"line_number":103,"context_line":"            self.appStatus.mark_failed()"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"        LOG.info(\u0027\"prepare\" call has finished.\u0027)"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def install_is_finished(self):"},{"line_number":108,"context_line":"        return (self.appStatus."}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2FkxQ%3D","line":105,"updated":"2014-01-10 21:44:59.000000000","message":"Log message needs to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"3d3d8a3055cf869f26448bad59b603475fe5afbd","unresolved":false,"context_lines":[{"line_number":30,"context_line":"USAGE_TIMEOUT \u003d CONF.usage_timeout  # seconds."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"class Manager(periodic_task.PeriodicTasks):"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"    def __init__(self):"},{"line_number":36,"context_line":"        self.appStatus \u003d service.CassandraAppStatus()"}],"source_content_type":"text/x-python","patch_set":30,"id":"AAAAUH%2F%2BFRI%3D","line":33,"updated":"2014-01-30 10:50:11.000000000","message":"has same problem as mongo patch-set in terms of dealing with non supported operations (e.g. user-list). see mongo patch-set for more information.","commit_id":"8943302f2c6191a973b51b6614d5bc4336919b74"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"480dfe273b0ec5a4772e540b4bed4ff9b9a147d5","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        \"\"\"Update the status of the Cassandra service\"\"\""},{"line_number":44,"context_line":"        self.appStatus.update()"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"    def restart(self):"},{"line_number":47,"context_line":"        self.app.restart()"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def get_filesystem_stats(self, context, fs_path):"}],"source_content_type":"text/x-python","patch_set":32,"id":"AAAAUH%2F9a%2Bw%3D","line":46,"updated":"2014-02-07 01:10:00.000000000","message":"should be \"def restart(self, context)\", otherwise restart does not work at all.","commit_id":"2fa5c2ff57f3f444dc927f12f8f76ab3d64e73e3"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"6921978ab91b7ece22fd8c914c773f886a6b82aa","unresolved":false,"context_lines":[{"line_number":88,"context_line":"                if restart_cassandra:"},{"line_number":89,"context_line":"                        self.app.restart()"},{"line_number":90,"context_line":"            self.appStatus.end_install_or_restart()"},{"line_number":91,"context_line":"        else:"},{"line_number":92,"context_line":"            self.appStatus.mark_failed()"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"        LOG.info(_(\u0027\"prepare\" call has finished.\u0027))"}],"source_content_type":"text/x-python","patch_set":34,"id":"AAAAUX%2F%2Fksc%3D","line":91,"updated":"2014-02-12 09:06:45.000000000","message":"The logic to check if packages\u003dNone, and if so, automatically flip to FAILED is a breaking change. The current behavior is that if packages\u003dNone, as long as the is_pkg_installed check returns True, you\u0027re good to move forward (see mysql manager). the aforementioned is a legitimate use-case for those who want to pre-bake images and never install packages on first-boot/prepare. Having them put in a value for packages on datastore_version_upgrade isn\u0027t sufficient, because that assumes a distro package (which if it wasn\u0027t, will trigger an unnecessary install that at best wastes time, and at worst borks the install).","commit_id":"6fbd678fb6bfaa1d9e3911335749945fe72ee841"}],"trove/guestagent/datastore/cassandra/service.py":[{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"892fa520839847afb95a6b2568927ff41fbb0f50","unresolved":false,"context_lines":[{"line_number":35,"context_line":"class CassandraApp(object):"},{"line_number":36,"context_line":"    \"\"\"Prepares DBaaS on a Guest container.\"\"\""},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    ###########################################################################"},{"line_number":39,"context_line":"    def __init__(self, status):"},{"line_number":40,"context_line":"        \"\"\" By default login with root no password for initial setup. \"\"\""},{"line_number":41,"context_line":"        self.state_change_wait_time \u003d CONF.state_change_wait_time"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATn%2F%2F9dU%3D","line":38,"updated":"2013-10-24 15:45:15.000000000","message":"Remove these lines, as the rest of the code base is not formatted like this.","commit_id":"48f376a5fc94b37ede88a7ea56ebe769ba053ed0"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"af72c374be79af503c3f9cd2657745a343f8a032","unresolved":false,"context_lines":[{"line_number":35,"context_line":"class CassandraApp(object):"},{"line_number":36,"context_line":"    \"\"\"Prepares DBaaS on a Guest container.\"\"\""},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    ###########################################################################"},{"line_number":39,"context_line":"    def __init__(self, status):"},{"line_number":40,"context_line":"        \"\"\" By default login with root no password for initial setup. \"\"\""},{"line_number":41,"context_line":"        self.state_change_wait_time \u003d CONF.state_change_wait_time"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATn%2F%2F9Ok%3D","line":38,"in_reply_to":"AAAATn%2F%2F9dU%3D","updated":"2013-10-24 16:26:57.000000000","message":"it is just a delimeters, they would be deleted soon","commit_id":"48f376a5fc94b37ede88a7ea56ebe769ba053ed0"},{"author":{"_account_id":4240,"name":"Craig Vyvial","email":"cp16net@gmail.com","username":"cp16net"},"change_message_id":"c27fa0c06a16427d783de2dd8392f1292e39f238","unresolved":false,"context_lines":[{"line_number":15,"context_line":"#    under the License."},{"line_number":16,"context_line":"#"},{"line_number":17,"context_line":"#"},{"line_number":18,"context_line":"#  Copyright 2013 Mirantis Inc."},{"line_number":19,"context_line":"#  All Rights Reserved."},{"line_number":20,"context_line":"#"},{"line_number":21,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":19,"id":"AAAATn%2F9tBA%3D","line":18,"updated":"2013-12-06 22:58:09.000000000","message":"double rainbow (license)? :)","commit_id":"edb0dd3fe80dcba9bcdcf8591aebbbbfea4affaf"},{"author":{"_account_id":1049,"name":"Conrad Weidenkeller","email":"conrad@weidenkeller.com","username":"cweidenkeller"},"change_message_id":"5336f0e474f3291f3bfa9a286eecd55c1c357b3f","unresolved":false,"context_lines":[{"line_number":49,"context_line":"    def complete_install_or_restart(self):"},{"line_number":50,"context_line":"        self.status.end_install_or_restart()"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    def _unable_db_on_boot(self):"},{"line_number":53,"context_line":"        utils.execute_with_timeout(system.UNABLE_CASSANDRA_ON_BOOT,"},{"line_number":54,"context_line":"                                   shell\u003dTrue, run_as_root\u003dTrue)"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAATn%2F8zLs%3D","line":52,"updated":"2013-12-20 07:36:06.000000000","message":"This should be _enable*.","commit_id":"829dc94fd10fca550edabd0264b7c3315158fe7a"},{"author":{"_account_id":1049,"name":"Conrad Weidenkeller","email":"conrad@weidenkeller.com","username":"cweidenkeller"},"change_message_id":"27a4c062da0180487eb0b3b61bf1d4b002170281","unresolved":false,"context_lines":[{"line_number":49,"context_line":"    def complete_install_or_restart(self):"},{"line_number":50,"context_line":"        self.status.end_install_or_restart()"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    def _unable_db_on_boot(self):"},{"line_number":53,"context_line":"        utils.execute_with_timeout(system.ENABLE_CASSANDRA_ON_BOOT,"},{"line_number":54,"context_line":"                                   shell\u003dTrue, run_as_root\u003dTrue)"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-python","patch_set":21,"id":"AAAATn%2F8wao%3D","line":52,"updated":"2013-12-20 16:44:59.000000000","message":"this needs to be _enable.","commit_id":"df352386e972e6bea9218effa44d2ca53ffc3db1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":58,"context_line":"                                   shell\u003dTrue, run_as_root\u003dTrue)"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"    def start_db(self, update_db\u003dFalse):"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"        self._enable_db_on_boot()"},{"line_number":63,"context_line":"        try:"},{"line_number":64,"context_line":"            utils.execute_with_timeout(system.START_CASSANDRA,"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2FkvQ%3D","line":61,"updated":"2014-01-10 21:44:59.000000000","message":"Did a docstring once live here or was there a reason for the space?","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":75,"context_line":"                utils.execute_with_timeout(system.CASSANDRA_KILL,"},{"line_number":76,"context_line":"                                           shell\u003dTrue, run_as_root\u003dTrue)"},{"line_number":77,"context_line":"            except exception.ProcessExecutionError as p:"},{"line_number":78,"context_line":"                LOG.error(\"Error killing stalled Cassandra start command.\")"},{"line_number":79,"context_line":"                LOG.error(p)"},{"line_number":80,"context_line":"                self.status.end_install_or_restart()"},{"line_number":81,"context_line":"                raise RuntimeError(\"Could not start Cassandra\")"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2Fkus%3D","line":78,"updated":"2014-01-10 21:44:59.000000000","message":"Log message needs to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                LOG.error(\"Error killing stalled Cassandra start command.\")"},{"line_number":79,"context_line":"                LOG.error(p)"},{"line_number":80,"context_line":"                self.status.end_install_or_restart()"},{"line_number":81,"context_line":"                raise RuntimeError(\"Could not start Cassandra\")"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    def stop_db(self, update_db\u003dFalse, do_not_start_on_reboot\u003dFalse):"},{"line_number":84,"context_line":"        if do_not_start_on_reboot:"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2Fkuo%3D","line":81,"updated":"2014-01-10 21:44:59.000000000","message":"exceptions need to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":91,"context_line":"                self.state_change_wait_time, update_db)):"},{"line_number":92,"context_line":"            LOG.error(_(\"Could not stop Cassandra\"))"},{"line_number":93,"context_line":"            self.status.end_install_or_restart()"},{"line_number":94,"context_line":"            raise RuntimeError(\"Could not stop Cassandra\")"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"    def restart(self):"},{"line_number":97,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2Fkuk%3D","line":94,"updated":"2014-01-10 21:44:59.000000000","message":"exceptions need to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":109,"context_line":"        LOG.debug(_(\"Finished installing cassandra server\"))"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"    def write_config(self, config_contents):"},{"line_number":112,"context_line":"        LOG.info(\u0027Defining temp config holder at \u0027"},{"line_number":113,"context_line":"                 \u0027%s\u0027 % system.CASSANDRA_TEMP_CONF)"},{"line_number":114,"context_line":"        with open(system.CASSANDRA_TEMP_CONF, \u0027w+\u0027) as conf:"},{"line_number":115,"context_line":"            conf.write(config_contents)"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2FkuY%3D","line":112,"updated":"2014-01-10 21:44:59.000000000","message":"Log messages need to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":113,"context_line":"                 \u0027%s\u0027 % system.CASSANDRA_TEMP_CONF)"},{"line_number":114,"context_line":"        with open(system.CASSANDRA_TEMP_CONF, \u0027w+\u0027) as conf:"},{"line_number":115,"context_line":"            conf.write(config_contents)"},{"line_number":116,"context_line":"        LOG.info(\u0027Writing new config\u0027)"},{"line_number":117,"context_line":"        utils.execute_with_timeout(\"sudo\", \"mv\","},{"line_number":118,"context_line":"                                   system.CASSANDRA_TEMP_CONF,"},{"line_number":119,"context_line":"                                   system.CASSANDRA_CONF)"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2FkuI%3D","line":116,"updated":"2014-01-10 21:44:59.000000000","message":"Log messages need to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":114,"context_line":"        with open(system.CASSANDRA_TEMP_CONF, \u0027w+\u0027) as conf:"},{"line_number":115,"context_line":"            conf.write(config_contents)"},{"line_number":116,"context_line":"        LOG.info(\u0027Writing new config\u0027)"},{"line_number":117,"context_line":"        utils.execute_with_timeout(\"sudo\", \"mv\","},{"line_number":118,"context_line":"                                   system.CASSANDRA_TEMP_CONF,"},{"line_number":119,"context_line":"                                   system.CASSANDRA_CONF)"},{"line_number":120,"context_line":"        LOG.info(\u0027Overriding old config\u0027)"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2FkuA%3D","line":117,"updated":"2014-01-10 21:44:59.000000000","message":"I thought we were supposed to start using the root_helper root_wrapper stuff for all code executed.","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":117,"context_line":"        utils.execute_with_timeout(\"sudo\", \"mv\","},{"line_number":118,"context_line":"                                   system.CASSANDRA_TEMP_CONF,"},{"line_number":119,"context_line":"                                   system.CASSANDRA_CONF)"},{"line_number":120,"context_line":"        LOG.info(\u0027Overriding old config\u0027)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"    def read_conf(self):"},{"line_number":123,"context_line":"        \"\"\"Returns cassandra.yaml in dict structure\"\"\""}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2Fkt8%3D","line":120,"updated":"2014-01-10 21:44:59.000000000","message":"Log messages need to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":168,"context_line":"            else:"},{"line_number":169,"context_line":"                return rd_instance.ServiceStatuses.SHUTDOWN"},{"line_number":170,"context_line":"        except exception.ProcessExecutionError as e:"},{"line_number":171,"context_line":"            LOG.error(\"Process execution %s\" % e)"},{"line_number":172,"context_line":"            return rd_instance.ServiceStatuses.SHUTDOWN"},{"line_number":173,"context_line":"        except OSError as e:"},{"line_number":174,"context_line":"            LOG.error(\"OS Error %s\" % e)"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2FktA%3D","line":171,"updated":"2014-01-10 21:44:59.000000000","message":"Log messages need to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":171,"context_line":"            LOG.error(\"Process execution %s\" % e)"},{"line_number":172,"context_line":"            return rd_instance.ServiceStatuses.SHUTDOWN"},{"line_number":173,"context_line":"        except OSError as e:"},{"line_number":174,"context_line":"            LOG.error(\"OS Error %s\" % e)"},{"line_number":175,"context_line":"            return rd_instance.ServiceStatuses.SHUTDOWN"}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2Fks4%3D","line":174,"updated":"2014-01-10 21:44:59.000000000","message":"Log messages need to be wrapped _()","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"3d3d8a3055cf869f26448bad59b603475fe5afbd","unresolved":false,"context_lines":[{"line_number":81,"context_line":"                LOG.error(_(\"Error killing stalled Cassandra start command.\"))"},{"line_number":82,"context_line":"                LOG.error(p)"},{"line_number":83,"context_line":"                self.status.end_install_or_restart()"},{"line_number":84,"context_line":"                raise RuntimeError(_(\"Could not start Cassandra\"))"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"    def stop_db(self, update_db\u003dFalse, do_not_start_on_reboot\u003dFalse):"},{"line_number":87,"context_line":"        if do_not_start_on_reboot:"}],"source_content_type":"text/x-python","patch_set":30,"id":"AAAAUH%2F%2BFRw%3D","line":84,"updated":"2014-01-30 10:50:11.000000000","message":"the two lines above are outside of the except block in the mongo patch-set, yet they\u0027re inside on this one. please ascertain which one is correct and update the appropriate patch-set (i\u0027m 90% sure, but it\u0027s 2AM, so i\u0027ll rely on your judgement).","commit_id":"8943302f2c6191a973b51b6614d5bc4336919b74"}],"trove/guestagent/datastore/cassandra/system.py":[{"author":{"_account_id":1049,"name":"Conrad Weidenkeller","email":"conrad@weidenkeller.com","username":"cweidenkeller"},"change_message_id":"5336f0e474f3291f3bfa9a286eecd55c1c357b3f","unresolved":false,"context_lines":[{"line_number":24,"context_line":"CASSANDRA_TEMP_CONF \u003d \"/tmp/cassandra.yaml\""},{"line_number":25,"context_line":"CASSANDRA_TEMP_DIR \u003d \"/tmp/cassandra\""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"UNABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra enable\""},{"line_number":28,"context_line":"DISABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra disable\""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"START_CASSANDRA \u003d \"sudo service cassandra start\""}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAATn%2F8zMk%3D","line":27,"updated":"2013-12-20 07:36:06.000000000","message":"This should be ENABLE not UNABLE.","commit_id":"829dc94fd10fca550edabd0264b7c3315158fe7a"},{"author":{"_account_id":971,"name":"Daniel Salinas","email":"imsplitbit@gmail.com","username":"imsplitbit"},"change_message_id":"f9ebd200d08a2bebed3ed3ac96f84c011ec9d200","unresolved":false,"context_lines":[{"line_number":24,"context_line":"CASSANDRA_TEMP_CONF \u003d \"/tmp/cassandra.yaml\""},{"line_number":25,"context_line":"CASSANDRA_TEMP_DIR \u003d \"/tmp/cassandra\""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"ENABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra enable\""},{"line_number":28,"context_line":"DISABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra disable\""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"START_CASSANDRA \u003d \"sudo service cassandra start\""}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2Fkss%3D","line":27,"updated":"2014-01-10 21:44:59.000000000","message":"are there plans to make this less OS dependent?","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"507f41b9a7379735fe0069f85ac8af798b7bb0bf","unresolved":false,"context_lines":[{"line_number":24,"context_line":"CASSANDRA_TEMP_CONF \u003d \"/tmp/cassandra.yaml\""},{"line_number":25,"context_line":"CASSANDRA_TEMP_DIR \u003d \"/tmp/cassandra\""},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"ENABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra enable\""},{"line_number":28,"context_line":"DISABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra disable\""},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"START_CASSANDRA \u003d \"sudo service cassandra start\""}],"source_content_type":"text/x-python","patch_set":23,"id":"AAAAUH%2F%2Fkpw%3D","line":27,"in_reply_to":"AAAAUH%2F%2Fkss%3D","updated":"2014-01-10 21:50:36.000000000","message":"Datastax installing from package documentation is orientied on Ubuntu LTS. So, i think not.","commit_id":"23f4058673df5910c88fac3d9611de6bb4f90be1"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"3d3d8a3055cf869f26448bad59b603475fe5afbd","unresolved":false,"context_lines":[{"line_number":30,"context_line":"ENABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra enable\""},{"line_number":31,"context_line":"DISABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra disable\""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"START_CASSANDRA \u003d \"sudo cassandra\""},{"line_number":34,"context_line":"STOP_CASSANDRA \u003d \"sudo killall java 2\u003e/dev/null\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"CASSANDRA_STATUS \u003d \"\"\"nodetool statusthrift\"\"\""}],"source_content_type":"text/x-python","patch_set":30,"id":"AAAAUH%2F%2BFSg%3D","line":33,"updated":"2014-01-30 10:50:11.000000000","message":"\u0027sudo cassandra\u0027 never exits, causing a shell timeout.","commit_id":"8943302f2c6191a973b51b6614d5bc4336919b74"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"889537459c972045130ff5ea665ab41e03697462","unresolved":false,"context_lines":[{"line_number":30,"context_line":"ENABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra enable\""},{"line_number":31,"context_line":"DISABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra disable\""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"START_CASSANDRA \u003d \"sudo cassandra\""},{"line_number":34,"context_line":"STOP_CASSANDRA \u003d \"sudo killall java 2\u003e/dev/null\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"CASSANDRA_STATUS \u003d \"\"\"nodetool statusthrift\"\"\""}],"source_content_type":"text/x-python","patch_set":30,"id":"AAAAUH%2F%2BFCo%3D","line":33,"in_reply_to":"AAAAUH%2F%2BFGU%3D","updated":"2014-01-30 11:49:07.000000000","message":"flavor that holds 2GB RAM, please read datastax docs about cassandra in general","commit_id":"8943302f2c6191a973b51b6614d5bc4336919b74"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"ee7ede0afedcccd00b705e17e3162cc1e5f2c147","unresolved":false,"context_lines":[{"line_number":30,"context_line":"ENABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra enable\""},{"line_number":31,"context_line":"DISABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra disable\""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"START_CASSANDRA \u003d \"sudo cassandra\""},{"line_number":34,"context_line":"STOP_CASSANDRA \u003d \"sudo killall java 2\u003e/dev/null\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"CASSANDRA_STATUS \u003d \"\"\"nodetool statusthrift\"\"\""}],"source_content_type":"text/x-python","patch_set":30,"id":"AAAAUH%2F%2BFGU%3D","line":33,"in_reply_to":"AAAAUH%2F%2BFMg%3D","updated":"2014-01-30 11:31:35.000000000","message":"proof: https://gist.github.com/amcrn/e48c5e2058780ed6c40e\n\nusing a hunch: what flavor are you testing against?","commit_id":"8943302f2c6191a973b51b6614d5bc4336919b74"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"d9258051bd5af80ce03d7061e1b8f509322875c1","unresolved":false,"context_lines":[{"line_number":30,"context_line":"ENABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra enable\""},{"line_number":31,"context_line":"DISABLE_CASSANDRA_ON_BOOT \u003d \"sudo update-rc.d cassandra disable\""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"START_CASSANDRA \u003d \"sudo cassandra\""},{"line_number":34,"context_line":"STOP_CASSANDRA \u003d \"sudo killall java 2\u003e/dev/null\""},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"CASSANDRA_STATUS \u003d \"\"\"nodetool statusthrift\"\"\""}],"source_content_type":"text/x-python","patch_set":30,"id":"AAAAUH%2F%2BFMg%3D","line":33,"in_reply_to":"AAAAUH%2F%2BFSg%3D","updated":"2014-01-30 11:21:05.000000000","message":"No, this patch tested, and it works fine.\nUse \"which cassandra\" and you\u0027ll see that binary cassandra exists.\ncassandra binary stored at /usr/sbin/","commit_id":"8943302f2c6191a973b51b6614d5bc4336919b74"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"3d3d8a3055cf869f26448bad59b603475fe5afbd","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"CASSANDRA_STATUS \u003d \"\"\"nodetool statusthrift\"\"\""},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"CASSANDRA_KILL \u003d \"sudo pkill -9 java\""},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"TIME_OUT \u003d 10000"}],"source_content_type":"text/x-python","patch_set":30,"id":"AAAAUH%2F%2BFSY%3D","line":38,"updated":"2014-01-30 10:50:11.000000000","message":"as mentioned in the mongo patch, use kill vs. pkill -9.","commit_id":"8943302f2c6191a973b51b6614d5bc4336919b74"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"42a87b7206330b7b9934bdff49347f5301267f6b","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"# cassandra binary stored at /usr/sbin/"},{"line_number":34,"context_line":"START_CASSANDRA \u003d \"sudo /usr/sbin/cassandra\""},{"line_number":35,"context_line":"STOP_CASSANDRA \u003d \"sudo killall java 2\u003e/dev/null\""},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"CASSANDRA_STATUS \u003d \"\"\"echo \"use system;\" \u003e /tmp/check; cqlsh -f /tmp/check\"\"\""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":32,"id":"AAAAUH%2F9a04%3D","line":35,"updated":"2014-02-07 01:49:03.000000000","message":"should be \"java 2\u003e /dev/null\", not \"java 2\u003e/dev/null\", aka you\u0027re missing a space. this causes the command to insta-fail.","commit_id":"2fa5c2ff57f3f444dc927f12f8f76ab3d64e73e3"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"ff295ddb3515c839cf6242a5e763355fe756c453","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"# cassandra binary stored at /usr/sbin/"},{"line_number":34,"context_line":"START_CASSANDRA \u003d \"sudo /usr/sbin/cassandra\""},{"line_number":35,"context_line":"STOP_CASSANDRA \u003d \"sudo killall java 2\u003e/dev/null\""},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"CASSANDRA_STATUS \u003d \"\"\"echo \"use system;\" \u003e /tmp/check; cqlsh -f /tmp/check\"\"\""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":32,"id":"AAAAUH%2F9ayQ%3D","line":35,"in_reply_to":"AAAAUH%2F9a04%3D","updated":"2014-02-07 01:55:10.000000000","message":"actually, even that fails. if it\u0027s changed to \"sudo killall java\" (aka the same as CASSANDRA_KILL), it works just fine.","commit_id":"2fa5c2ff57f3f444dc927f12f8f76ab3d64e73e3"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"0914384c54a61bbfcfb6acaa0cfac5993d03fa0c","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"# cassandra binary stored at /usr/sbin/"},{"line_number":34,"context_line":"START_CASSANDRA \u003d \"sudo /usr/sbin/cassandra\""},{"line_number":35,"context_line":"STOP_CASSANDRA \u003d \"sudo killall java 2\u003e/dev/null\""},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"CASSANDRA_STATUS \u003d \"\"\"echo \"use system;\" \u003e /tmp/check; cqlsh -f /tmp/check\"\"\""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":32,"id":"AAAAUH%2F9X9A%3D","line":35,"in_reply_to":"AAAAUH%2F9ayQ%3D","updated":"2014-02-07 11:14:03.000000000","message":"sudo killall java will work if process exists, if not exception would raised, that is why i used 2\u003e /dev/null - it will work even if process doesn\u0027t exist.","commit_id":"2fa5c2ff57f3f444dc927f12f8f76ab3d64e73e3"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"f6db151bf45fffde10cd6b4e8f6d04cd41a50e94","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"# cassandra binary stored at /usr/sbin/"},{"line_number":34,"context_line":"START_CASSANDRA \u003d \"sudo /usr/sbin/cassandra\""},{"line_number":35,"context_line":"STOP_CASSANDRA \u003d \"sudo killall java 2\u003e /dev/null\""},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"CASSANDRA_STATUS \u003d \"\"\"echo \"use system;\" \u003e /tmp/check; cqlsh -f /tmp/check\"\"\""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"AAAAUH%2F9UdA%3D","line":35,"updated":"2014-02-07 19:24:17.000000000","message":"i said in my last comment that this does not work (tested on a fresh devstack/redstack). leaving -2 until something shows that it does, or explains why it works for you and not me.","commit_id":"f6573f1ac54db0794ad0d7610d17d8492b0aadaf"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"d0d2418387f46129343c74ffe15280187136a8c3","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"# cassandra binary stored at /usr/sbin/"},{"line_number":34,"context_line":"START_CASSANDRA \u003d \"sudo /usr/sbin/cassandra\""},{"line_number":35,"context_line":"STOP_CASSANDRA \u003d \"sudo killall java 2\u003e /dev/null\""},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"CASSANDRA_STATUS \u003d \"\"\"echo \"use system;\" \u003e /tmp/check; cqlsh -f /tmp/check\"\"\""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"AAAAUH%2F9UXc%3D","line":35,"in_reply_to":"AAAAUH%2F9UY8%3D","updated":"2014-02-07 19:45:34.000000000","message":"please paste your logs first, because if you tested it you could share the results with all of  reviewers.","commit_id":"f6573f1ac54db0794ad0d7610d17d8492b0aadaf"},{"author":{"_account_id":8214,"name":"Auston McReynolds","email":"amcreynolds@ebaysf.com","username":"amcreynolds"},"change_message_id":"9267008f9f284efba19787b6a240e906278f0f25","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"# cassandra binary stored at /usr/sbin/"},{"line_number":34,"context_line":"START_CASSANDRA \u003d \"sudo /usr/sbin/cassandra\""},{"line_number":35,"context_line":"STOP_CASSANDRA \u003d \"sudo killall java 2\u003e /dev/null\""},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"CASSANDRA_STATUS \u003d \"\"\"echo \"use system;\" \u003e /tmp/check; cqlsh -f /tmp/check\"\"\""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"AAAAUH%2F9UY8%3D","line":35,"in_reply_to":"AAAAUH%2F9Ua4%3D","updated":"2014-02-07 19:40:40.000000000","message":"the command works when done manually via the shell. it does not work in the \"trove restart\" flow, which is where STOP_COMMAND happens to be used. please paste a log showing the full guestagent log for a successful \"trove restart\".","commit_id":"f6573f1ac54db0794ad0d7610d17d8492b0aadaf"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"d5780287c60861b9893e1650f5b4e6d4d811345d","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"# cassandra binary stored at /usr/sbin/"},{"line_number":34,"context_line":"START_CASSANDRA \u003d \"sudo /usr/sbin/cassandra\""},{"line_number":35,"context_line":"STOP_CASSANDRA \u003d \"sudo killall java 2\u003e /dev/null\""},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"CASSANDRA_STATUS \u003d \"\"\"echo \"use system;\" \u003e /tmp/check; cqlsh -f /tmp/check\"\"\""},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":33,"id":"AAAAUH%2F9Ua4%3D","line":35,"in_reply_to":"AAAAUH%2F9UdA%3D","updated":"2014-02-07 19:33:26.000000000","message":"Prof: http://www.ex.ua/863016447007 (there are to screenshots which proves my words)","commit_id":"f6573f1ac54db0794ad0d7610d17d8492b0aadaf"}],"trove/guestagent/datastore/service.py":[{"author":{"_account_id":1375,"name":"Ed Cranford","email":"ed.cranford@gmail.com","username":"ed--cranford"},"change_message_id":"648f0b1ec8317beb0fd27d27db3d603fcbabf39d","unresolved":false,"context_lines":[{"line_number":67,"context_line":"        self.set_status(rd_instance.ServiceStatuses.BUILDING)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"    def mark_failed(self):"},{"line_number":70,"context_line":"        \"\"\"Called if no packages list are empty\"\"\""},{"line_number":71,"context_line":"        self.set_status(rd_instance.ServiceStatuses.FAILED)"},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"    def begin_restart(self):"}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAT3%2F%2FyFo%3D","line":70,"updated":"2013-12-31 20:32:52.000000000","message":"Your wording here\u0027s a little confusing, but I think you mean that we mark instances failed if no packages were given to prepare(). In that case, it looks like that only holds for Cassandra, though. Besides that, empty packages isn\u0027t the only reason to mark an instance failed.\n\nI think this would be better phrased as \"Called for example if prepare or restore fails.\" In that case, datastore/mysql/manager.py line 102 could benefit from this function, if only to make it read more clearly and stay in spirit with your C* additions.","commit_id":"88370e4c11318da603451435e0e57cb84a567caa"}],"trove/guestagent/dbaas.py":[{"author":{"_account_id":8491,"name":"Illia Khudoshyn","email":"ikhudoshyn@mirantis.com","username":"ikhudoshyn"},"change_message_id":"f79bb04d1c3a60f5af382f0c723e1e53949304f8","unresolved":false,"context_lines":[{"line_number":36,"context_line":"defaults \u003d {"},{"line_number":37,"context_line":"    \u0027mysql\u0027: \u0027trove.guestagent.manager.mysql.Manager\u0027,"},{"line_number":38,"context_line":"    \u0027percona\u0027: \u0027trove.guestagent.manager.mysql.Manager\u0027,"},{"line_number":39,"context_line":"    \u0027cassandra\u0027: \u0027trove.guestagent.manager.cassandra.manager.Manager\u0027"},{"line_number":40,"context_line":"}"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"CONF \u003d cfg.CONF"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAATH%2F%2FcAg%3D","line":39,"updated":"2013-10-16 07:14:26.000000000","message":"manager.cassandra.manager.Manager? Too many managers. Who\u0027s gonna work? )) Let\u0027s think once again about it.","commit_id":"736a336179096be35c557e3e0cf02e772fa79365"}],"trove/taskmanager/models.py":[{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"892fa520839847afb95a6b2568927ff41fbb0f50","unresolved":false,"context_lines":[{"line_number":182,"context_line":"                volume_size,"},{"line_number":183,"context_line":"                availability_zone)"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        try:"},{"line_number":186,"context_line":"            self._create_dns_entry()"},{"line_number":187,"context_line":"        except Exception as e:"},{"line_number":188,"context_line":"            msg \u003d \"Error creating DNS entry for instance: %s\" % self.id"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATn%2F%2F9cQ%3D","line":185,"updated":"2013-10-24 15:45:15.000000000","message":"I don\u0027t see why this is needed for Cassandra support. This should probably be done in a separate review.","commit_id":"48f376a5fc94b37ede88a7ea56ebe769ba053ed0"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"af72c374be79af503c3f9cd2657745a343f8a032","unresolved":false,"context_lines":[{"line_number":182,"context_line":"                volume_size,"},{"line_number":183,"context_line":"                availability_zone)"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        try:"},{"line_number":186,"context_line":"            self._create_dns_entry()"},{"line_number":187,"context_line":"        except Exception as e:"},{"line_number":188,"context_line":"            msg \u003d \"Error creating DNS entry for instance: %s\" % self.id"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAATn%2F%2F9Oc%3D","line":185,"in_reply_to":"AAAATn%2F%2F9cQ%3D","updated":"2013-10-24 16:26:57.000000000","message":"Probably you are right","commit_id":"48f376a5fc94b37ede88a7ea56ebe769ba053ed0"},{"author":{"_account_id":8188,"name":"Ilya Sviridov","email":"sviridov.ilya@gmail.com","username":"isviridov"},"change_message_id":"178d8466632594832e386012c82630934dbbf67a","unresolved":false,"context_lines":[{"line_number":182,"context_line":"                volume_size,"},{"line_number":183,"context_line":"                availability_zone)"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        try:"},{"line_number":186,"context_line":"            self._create_dns_entry()"},{"line_number":187,"context_line":"        except Exception as e:"},{"line_number":188,"context_line":"            msg \u003d \"Error creating DNS entry for instance: %s\" % self.id"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAATn%2F%2F5co%3D","line":185,"updated":"2013-10-25 15:05:13.000000000","message":"Let us move it to another review","commit_id":"db590a10b2d488890171ed69779f472694e39dce"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"3c9378af832529c7c225365cf31bf40e54c93f29","unresolved":false,"context_lines":[{"line_number":182,"context_line":"                volume_size,"},{"line_number":183,"context_line":"                availability_zone)"},{"line_number":184,"context_line":""},{"line_number":185,"context_line":"        try:"},{"line_number":186,"context_line":"            self._create_dns_entry()"},{"line_number":187,"context_line":"        except Exception as e:"},{"line_number":188,"context_line":"            msg \u003d \"Error creating DNS entry for instance: %s\" % self.id"}],"source_content_type":"text/x-python","patch_set":10,"id":"AAAATn%2F%2F5cQ%3D","line":185,"in_reply_to":"AAAATn%2F%2F5co%3D","updated":"2013-10-25 15:06:07.000000000","message":"Already","commit_id":"db590a10b2d488890171ed69779f472694e39dce"}],"trove/templates/cassandra.config.template":[{"author":{"_account_id":739,"name":"Michael Basnight","email":"mbasnight@gmail.com","username":"hubcap"},"change_message_id":"155b231eaea2331f134d4770fdbd561f0b0fd2ee","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Cassandra storage config YAML "},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# NOTE:"},{"line_number":4,"context_line":"#   See http://wiki.apache.org/cassandra/StorageConfiguration for"}],"source_content_type":"application/octet-stream","patch_set":13,"id":"AAAATn%2F%2FJOY%3D","line":1,"updated":"2013-11-13 21:04:39.000000000","message":"plz remove these comments everywhere","commit_id":"07bdd877049ce114274bc23a623697015a960112"}],"trove/tests/unittests/guestagent/test_dbaas.py":[{"author":{"_account_id":1375,"name":"Ed Cranford","email":"ed.cranford@gmail.com","username":"ed--cranford"},"change_message_id":"f850d021e38946d471f8d0bb953a35aac6ec18dc","unresolved":false,"context_lines":[{"line_number":892,"context_line":"        dbaas_sr.get_custom_managers \u003d Mock(return_value\u003d"},{"line_number":893,"context_line":"                                            service_registry_ext_test)"},{"line_number":894,"context_line":"        test_dict \u003d dbaas_sr.service_registry()"},{"line_number":895,"context_line":"        self.assertTrue(len(test_dict) !\u003d 2)"},{"line_number":896,"context_line":"        self.assertEqual(test_dict.get(\u0027test\u0027),"},{"line_number":897,"context_line":"                         service_registry_ext_test.get(\u0027test\u0027, None))"},{"line_number":898,"context_line":"        self.assertEqual(test_dict.get(\u0027mysql\u0027),"}],"source_content_type":"text/x-python","patch_set":16,"id":"AAAATn%2F%2FEbE%3D","line":895,"updated":"2013-11-14 20:58:13.000000000","message":"Look, these are going to get out of hand every time we add a service.\n\nI suggest instead of checking the length of test_dict in these tests, we instead check the contents of test_dict.keys and compare it to a deliberately constructed set of expected keys.\nIn the future, should we add another impl, we won\u0027t need to increment these indices, but instead just add that service to the list of expected keys. It\u0027s a stronger test than len(test_dict).","commit_id":"1101a3da93bfe6c0b9d342e7c2b28d73c78d0d4c"},{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"c9efc98f14cf896c44d278534b3c4ebdd7cfa03a","unresolved":false,"context_lines":[{"line_number":892,"context_line":"        dbaas_sr.get_custom_managers \u003d Mock(return_value\u003d"},{"line_number":893,"context_line":"                                            service_registry_ext_test)"},{"line_number":894,"context_line":"        test_dict \u003d dbaas_sr.service_registry()"},{"line_number":895,"context_line":"        self.assertTrue(len(test_dict) !\u003d 2)"},{"line_number":896,"context_line":"        self.assertEqual(test_dict.get(\u0027test\u0027),"},{"line_number":897,"context_line":"                         service_registry_ext_test.get(\u0027test\u0027, None))"},{"line_number":898,"context_line":"        self.assertEqual(test_dict.get(\u0027mysql\u0027),"}],"source_content_type":"text/x-python","patch_set":16,"id":"AAAATn%2F%2B6%2Fw%3D","line":895,"in_reply_to":"AAAATn%2F%2FEZk%3D","updated":"2013-11-18 15:17:38.000000000","message":"How about we just remove the len check, as it adds nothing to the test. The following tests should be changed to \u0027test_dict.pop(\u0027test\u0027), \u0027test_dict.pop(\u0027mysql\u0027)\u0027, test_dict.pop(\u0027percona\u0027), and test_dict.pop(\u0027cassandra\u0027). Then afterwards assertEqual(test_dict, {})","commit_id":"1101a3da93bfe6c0b9d342e7c2b28d73c78d0d4c"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"7cbf202364dc3332634fe4ec32a3b9d588c10661","unresolved":false,"context_lines":[{"line_number":892,"context_line":"        dbaas_sr.get_custom_managers \u003d Mock(return_value\u003d"},{"line_number":893,"context_line":"                                            service_registry_ext_test)"},{"line_number":894,"context_line":"        test_dict \u003d dbaas_sr.service_registry()"},{"line_number":895,"context_line":"        self.assertTrue(len(test_dict) !\u003d 2)"},{"line_number":896,"context_line":"        self.assertEqual(test_dict.get(\u0027test\u0027),"},{"line_number":897,"context_line":"                         service_registry_ext_test.get(\u0027test\u0027, None))"},{"line_number":898,"context_line":"        self.assertEqual(test_dict.get(\u0027mysql\u0027),"}],"source_content_type":"text/x-python","patch_set":16,"id":"AAAATn%2F%2FEZk%3D","line":895,"in_reply_to":"AAAATn%2F%2FEbE%3D","updated":"2013-11-14 21:07:38.000000000","message":"sound like a plan, but i would be done in another review","commit_id":"1101a3da93bfe6c0b9d342e7c2b28d73c78d0d4c"},{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"c9efc98f14cf896c44d278534b3c4ebdd7cfa03a","unresolved":false,"context_lines":[{"line_number":910,"context_line":"        dbaas_sr.get_custom_managers \u003d Mock(return_value\u003d"},{"line_number":911,"context_line":"                                            service_registry_ext_test)"},{"line_number":912,"context_line":"        test_dict \u003d dbaas_sr.service_registry()"},{"line_number":913,"context_line":"        self.assertTrue(len(test_dict) !\u003d 1)"},{"line_number":914,"context_line":"        self.assertEqual(test_dict.get(\u0027mysql\u0027),"},{"line_number":915,"context_line":"                         \u0027trove.guestagent.datastore.mysql.\u0027"},{"line_number":916,"context_line":"                         \u0027manager.Manager123\u0027)"}],"source_content_type":"text/x-python","patch_set":16,"id":"AAAATn%2F%2B6%2Fc%3D","line":913,"updated":"2013-11-18 15:17:38.000000000","message":"same as above add a check for cassandra and use pop to clear out the dict","commit_id":"1101a3da93bfe6c0b9d342e7c2b28d73c78d0d4c"},{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"c9efc98f14cf896c44d278534b3c4ebdd7cfa03a","unresolved":false,"context_lines":[{"line_number":923,"context_line":"        dbaas_sr.get_custom_managers \u003d Mock(return_value\u003d"},{"line_number":924,"context_line":"                                            service_registry_ext_test)"},{"line_number":925,"context_line":"        test_dict \u003d dbaas_sr.service_registry()"},{"line_number":926,"context_line":"        self.assertTrue(len(test_dict) !\u003d 1)"},{"line_number":927,"context_line":"        self.assertEqual(test_dict.get(\u0027mysql\u0027),"},{"line_number":928,"context_line":"                         \u0027trove.guestagent.datastore.mysql.\u0027"},{"line_number":929,"context_line":"                         \u0027manager.Manager\u0027)"}],"source_content_type":"text/x-python","patch_set":16,"id":"AAAATn%2F%2B6%2FQ%3D","line":926,"updated":"2013-11-18 15:17:38.000000000","message":"same as above","commit_id":"1101a3da93bfe6c0b9d342e7c2b28d73c78d0d4c"},{"author":{"_account_id":6268,"name":"Robert Myers","email":"myer0052@gmail.com","username":"rmyers"},"change_message_id":"2640d129e067834774d98485c381f2a8ba617872","unresolved":false,"context_lines":[{"line_number":1237,"context_line":"            instance_id\u003dself.FAKE_ID)"},{"line_number":1238,"context_line":"        self.assertEqual(expected_status, service_status.status)"},{"line_number":1239,"context_line":""},{"line_number":1240,"context_line":"    def db_starts_successfully(self):"},{"line_number":1241,"context_line":"        def start(update_db\u003dFalse):"},{"line_number":1242,"context_line":"            self.appStatus.set_next_status("},{"line_number":1243,"context_line":"                rd_instance.ServiceStatuses.RUNNING)"}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAUH%2F%2F3BA%3D","line":1240,"updated":"2014-01-07 15:33:48.000000000","message":"I don\u0027t see any of these db_start* or db_stop* methods called anywhere, and they do not appear to test anything, can you remove these?","commit_id":"88370e4c11318da603451435e0e57cb84a567caa"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"d15778bd3248206708180758e6fc62d9c2b4e0ef","unresolved":false,"context_lines":[{"line_number":1237,"context_line":"            instance_id\u003dself.FAKE_ID)"},{"line_number":1238,"context_line":"        self.assertEqual(expected_status, service_status.status)"},{"line_number":1239,"context_line":""},{"line_number":1240,"context_line":"    def db_starts_successfully(self):"},{"line_number":1241,"context_line":"        def start(update_db\u003dFalse):"},{"line_number":1242,"context_line":"            self.appStatus.set_next_status("},{"line_number":1243,"context_line":"                rd_instance.ServiceStatuses.RUNNING)"}],"source_content_type":"text/x-python","patch_set":22,"id":"AAAAUH%2F%2F2Is%3D","line":1240,"in_reply_to":"AAAAUH%2F%2F3BA%3D","updated":"2014-01-07 18:59:23.000000000","message":"Ok","commit_id":"88370e4c11318da603451435e0e57cb84a567caa"}],"trove/tests/unittests/guestagent/test_manager.py":[{"author":{"_account_id":8491,"name":"Illia Khudoshyn","email":"ikhudoshyn@mirantis.com","username":"ikhudoshyn"},"change_message_id":"9934b72ed45598b4ff4d2d8288ac77a0c75871f0","unresolved":false,"context_lines":[{"line_number":123,"context_line":""},{"line_number":124,"context_line":"    def test_prepare_device_path_true(self):"},{"line_number":125,"context_line":"        self._prepare_dynamic()"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"    def _prepare_dynamic(self, device_path\u003d\u0027/dev/vdb\u0027, is_mysql_installed\u003dTrue,"},{"line_number":128,"context_line":"                         backup_id\u003dNone, is_root_enabled\u003dFalse):"},{"line_number":129,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAATn%2F%2FFXI%3D","line":126,"updated":"2013-11-14 16:14:31.000000000","message":"Why do you remove these tests?","commit_id":"678c39cfca5ab825adb565e721eea8c2454842a7"},{"author":{"_account_id":8415,"name":"Denis M.","email":"lildee1991@gmail.com","username":"dmakogon"},"change_message_id":"d1bdd6a1de394f1ecca5f211b249b7639b6c92aa","unresolved":false,"context_lines":[{"line_number":123,"context_line":""},{"line_number":124,"context_line":"    def test_prepare_device_path_true(self):"},{"line_number":125,"context_line":"        self._prepare_dynamic()"},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"    def _prepare_dynamic(self, device_path\u003d\u0027/dev/vdb\u0027, is_mysql_installed\u003dTrue,"},{"line_number":128,"context_line":"                         backup_id\u003dNone, is_root_enabled\u003dFalse):"},{"line_number":129,"context_line":""}],"source_content_type":"text/x-python","patch_set":15,"id":"AAAATn%2F%2FFT8%3D","line":126,"in_reply_to":"AAAATn%2F%2FFXI%3D","updated":"2013-11-14 16:22:34.000000000","message":"Sorry, it\u0027s my mistake, thanks.","commit_id":"678c39cfca5ab825adb565e721eea8c2454842a7"}]}
