)]}'
{"nova/tests/test_metadata.py":[{"author":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"change_message_id":"a6ab280164cfb9f7568c53980d592580af437fc9","unresolved":false,"context_lines":[{"line_number":139,"context_line":""},{"line_number":140,"context_line":"    def test_can_pickle_metadata(self):"},{"line_number":141,"context_line":"        \"\"\"Make sure that InstanceMetadata is possible to pickle. This is"},{"line_number":142,"context_line":"        required for memcache backend to work correctly\"\"\""},{"line_number":143,"context_line":"        md \u003d fake_InstanceMetadata(self.stubs, copy.copy(self.instance))"},{"line_number":144,"context_line":"        pickle.dumps(md, protocol\u003d0)"},{"line_number":145,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOH%2F%2Fw98%3D","line":142,"updated":"2013-03-28 13:31:01.000000000","message":"Actually, I think this doc string will get picked up and used in some places as the test name instead of the function name.  I would change it to just a \u0027#\u0027 prefixed comment.\n\nAlso, while you\u0027re at it, adding the bug # this was related to may be handy for the future.","commit_id":"e63b9651643460ad1d0b7cc687ede9861ea1c54e"},{"author":{"_account_id":5511,"name":"Nikola Dipanov","email":"ndipanov@redhat.com","username":"ndipanov"},"change_message_id":"ffc8b1eaf3762d53d8ae1f25bc4b3ce2abd6c5c5","unresolved":false,"context_lines":[{"line_number":141,"context_line":"        \"\"\"Make sure that InstanceMetadata is possible to pickle. This is"},{"line_number":142,"context_line":"        required for memcache backend to work correctly\"\"\""},{"line_number":143,"context_line":"        md \u003d fake_InstanceMetadata(self.stubs, copy.copy(self.instance))"},{"line_number":144,"context_line":"        pickle.dumps(md, protocol\u003d0)"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"    def test_user_data(self):"},{"line_number":147,"context_line":"        inst \u003d copy.copy(self.instance)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOH%2F%2FxG0%3D","line":144,"updated":"2013-03-28 11:34:16.000000000","message":"I\u0027m not happy with this test tbh - afaict from the trace in the bug - pickling is totally an internal implementation detail of the memcached python driver and could change.\n\nIdeally we should test this with the driver itself (but might be difficult to do so as part of unittests)\n\nHowever if we want to be pragmatic - this will catch future issues of this sort so maybe not too terrible to leave it.","commit_id":"e63b9651643460ad1d0b7cc687ede9861ea1c54e"},{"author":{"_account_id":1528,"name":"Stanislaw Pitucha","email":"viraptor@gmail.com","username":"stanislaw-pitucha"},"change_message_id":"e41495c43e333fb112947a5d3a8a5883cb6f43d9","unresolved":false,"context_lines":[{"line_number":141,"context_line":"        \"\"\"Make sure that InstanceMetadata is possible to pickle. This is"},{"line_number":142,"context_line":"        required for memcache backend to work correctly\"\"\""},{"line_number":143,"context_line":"        md \u003d fake_InstanceMetadata(self.stubs, copy.copy(self.instance))"},{"line_number":144,"context_line":"        pickle.dumps(md, protocol\u003d0)"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"    def test_user_data(self):"},{"line_number":147,"context_line":"        inst \u003d copy.copy(self.instance)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOH%2F%2FxAY%3D","line":144,"in_reply_to":"AAAAOH%2F%2FxG0%3D","updated":"2013-03-28 13:00:08.000000000","message":"I agree. Unfortunately the only way that I know to trigger the test on memcache side would be either to to extract an internal _val_to_store_info() method from the client (that\u0027s relying on implementation detail too), or try to send the value to a fake server and make sure all results and exceptions can be checked. Neither way is better than just pickling and both are more complicated.\n\nIMO pickling is part of a public interface, so it\u0027s ok to rely on in this case. Currently used memcache client defaults to pickling anything other than strings and ints and the pickle protocol level is part of its public interface too.","commit_id":"e63b9651643460ad1d0b7cc687ede9861ea1c54e"}]}
