)]}'
{"ceilometer/storage/hbase/inmemory.py":[{"author":{"_account_id":7478,"name":"Nadya Shakhat","email":"nadmi4@gmail.com","username":"nprivalova"},"change_message_id":"d9e8c575ed2afa8513b81cd7e8db5343855bb71c","unresolved":false,"context_lines":[{"line_number":141,"context_line":"            elif op \u003d\u003d \u0027\u003e\u0027:"},{"line_number":142,"context_line":"                if column in data and data[column] \u003e value:"},{"line_number":143,"context_line":"                    r[row] \u003d data"},{"line_number":144,"context_line":"            elif op \u003d\u003d \u0027\u003e\u003d\u0027:"},{"line_number":145,"context_line":"                if column in data and data[column] \u003e\u003d value:"},{"line_number":146,"context_line":"                    r[row] \u003d data"},{"line_number":147,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_611bec6f","line":144,"updated":"2014-08-05 10:10:49.000000000","message":"And what about !\u003d ? We don\u0027t have a test for this case, do we?","commit_id":"96d77d1863006fd35ed0ad3bb47df0e0ae0fbbac"},{"author":{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},"change_message_id":"94854f84be601d42550f7182663f5683fde8e629","unresolved":false,"context_lines":[{"line_number":141,"context_line":"            elif op \u003d\u003d \u0027\u003e\u0027:"},{"line_number":142,"context_line":"                if column in data and data[column] \u003e value:"},{"line_number":143,"context_line":"                    r[row] \u003d data"},{"line_number":144,"context_line":"            elif op \u003d\u003d \u0027\u003e\u003d\u0027:"},{"line_number":145,"context_line":"                if column in data and data[column] \u003e\u003d value:"},{"line_number":146,"context_line":"                    r[row] \u003d data"},{"line_number":147,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_61a68cc2","line":144,"in_reply_to":"baada198_611bec6f","updated":"2014-08-05 10:26:49.000000000","message":"Actually, we don\u0027t have a test for that case (\"!\u003d\") up to date.","commit_id":"96d77d1863006fd35ed0ad3bb47df0e0ae0fbbac"},{"author":{"_account_id":4491,"name":"Lianhao Lu","email":"llh_misc@outlook.com","username":"lianhao-lu"},"change_message_id":"bc6a66d12c8fb15d27f48908c521a90f8b9546e4","unresolved":false,"context_lines":[{"line_number":140,"context_line":"                    r[row] \u003d data"},{"line_number":141,"context_line":"            elif op \u003d\u003d \u0027\u003e\u0027:"},{"line_number":142,"context_line":"                if column in data and data[column] \u003e value:"},{"line_number":143,"context_line":"                    r[row] \u003d data"},{"line_number":144,"context_line":"            elif op \u003d\u003d \u0027\u003e\u003d\u0027:"},{"line_number":145,"context_line":"                if column in data and data[column] \u003e\u003d value:"},{"line_number":146,"context_line":"                    r[row] \u003d data"}],"source_content_type":"text/x-python","patch_set":4,"id":"baada198_d24a7aad","line":143,"updated":"2014-08-07 03:13:47.000000000","message":"how about op  \u0027\u003c\u0027 or \u0027!\u003d\u0027? Should we add some test cases to cover that?","commit_id":"6dd6fc937298ad9727015064adcf2204a10587dc"},{"author":{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},"change_message_id":"3e22c7f4309738b53493b6f935572a2040fa2ca5","unresolved":false,"context_lines":[{"line_number":140,"context_line":"                    r[row] \u003d data"},{"line_number":141,"context_line":"            elif op \u003d\u003d \u0027\u003e\u0027:"},{"line_number":142,"context_line":"                if column in data and data[column] \u003e value:"},{"line_number":143,"context_line":"                    r[row] \u003d data"},{"line_number":144,"context_line":"            elif op \u003d\u003d \u0027\u003e\u003d\u0027:"},{"line_number":145,"context_line":"                if column in data and data[column] \u003e\u003d value:"},{"line_number":146,"context_line":"                    r[row] \u003d data"}],"source_content_type":"text/x-python","patch_set":4,"id":"baada198_ac6da99c","line":143,"in_reply_to":"baada198_d24a7aad","updated":"2014-08-07 08:12:12.000000000","message":"Really good question, it is very strange that patch could go thru tests without implementation of op \u0027\u003c\u0027 because it is truly checked in tests. Op \u0027!\u003d\u0027 isn\u0027t used in tests so it hasn\u0027t been implemented in mock. More information in docs https://hbase.apache.org/apidocs/org/apache/hadoop/hbase/filter/SingleColumnValueFilter.html","commit_id":"6dd6fc937298ad9727015064adcf2204a10587dc"}],"ceilometer/storage/hbase/utils.py":[{"author":{"_account_id":7478,"name":"Nadya Shakhat","email":"nadmi4@gmail.com","username":"nprivalova"},"change_message_id":"d9e8c575ed2afa8513b81cd7e8db5343855bb71c","unresolved":false,"context_lines":[{"line_number":119,"context_line":""},{"line_number":120,"context_line":"    rts_start \u003d str(timestamp(start)) if start else \"\""},{"line_number":121,"context_line":"    rts_end \u003d str(timestamp(end)) if end else \"\""},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    # # By default, we are using ge for lower bound and lt for upper bound"},{"line_number":124,"context_line":"    # if start_op \u003d\u003d \u0027gt\u0027:"},{"line_number":125,"context_line":"    #     rts_start \u003d str(long(rts_start) - 2)"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_7e446973","line":122,"updated":"2014-08-05 10:10:49.000000000","message":"please remove the following","commit_id":"96d77d1863006fd35ed0ad3bb47df0e0ae0fbbac"},{"author":{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},"change_message_id":"94854f84be601d42550f7182663f5683fde8e629","unresolved":false,"context_lines":[{"line_number":119,"context_line":""},{"line_number":120,"context_line":"    rts_start \u003d str(timestamp(start)) if start else \"\""},{"line_number":121,"context_line":"    rts_end \u003d str(timestamp(end)) if end else \"\""},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"    # # By default, we are using ge for lower bound and lt for upper bound"},{"line_number":124,"context_line":"    # if start_op \u003d\u003d \u0027gt\u0027:"},{"line_number":125,"context_line":"    #     rts_start \u003d str(long(rts_start) - 2)"}],"source_content_type":"text/x-python","patch_set":2,"id":"baada198_8182c0fd","line":122,"in_reply_to":"baada198_7e446973","updated":"2014-08-05 10:26:49.000000000","message":"Sorry for that! Done.","commit_id":"96d77d1863006fd35ed0ad3bb47df0e0ae0fbbac"},{"author":{"_account_id":7478,"name":"Nadya Shakhat","email":"nadmi4@gmail.com","username":"nprivalova"},"change_message_id":"ba0a53491e24c57741a181a4618b61b7310f8d4c","unresolved":false,"context_lines":[{"line_number":97,"context_line":"    if bounds_only:"},{"line_number":98,"context_line":"        return start_row, end_row"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    q \u003d []"},{"line_number":101,"context_line":"    # We don\u0027t need to dump here because get_start_end_rts returns strings"},{"line_number":102,"context_line":"    start_op \u003d start_op or \u0027ge\u0027"},{"line_number":103,"context_line":"    end_op \u003d end_op or \u0027lt\u0027"}],"source_content_type":"text/x-python","patch_set":3,"id":"baada198_bae25b2e","line":100,"updated":"2014-08-06 12:49:35.000000000","message":"please remove this comment or move it up to 93 line","commit_id":"59815b74baccfc03a59973c41cb0afaf9ace5937"},{"author":{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},"change_message_id":"dabe28fc1f8234aa81ecb3872c926881ccb3cb10","unresolved":false,"context_lines":[{"line_number":97,"context_line":"    if bounds_only:"},{"line_number":98,"context_line":"        return start_row, end_row"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"    q \u003d []"},{"line_number":101,"context_line":"    # We don\u0027t need to dump here because get_start_end_rts returns strings"},{"line_number":102,"context_line":"    start_op \u003d start_op or \u0027ge\u0027"},{"line_number":103,"context_line":"    end_op \u003d end_op or \u0027lt\u0027"}],"source_content_type":"text/x-python","patch_set":3,"id":"baada198_008bd817","line":100,"in_reply_to":"baada198_bae25b2e","updated":"2014-08-06 13:15:59.000000000","message":"Done","commit_id":"59815b74baccfc03a59973c41cb0afaf9ace5937"},{"author":{"_account_id":4491,"name":"Lianhao Lu","email":"llh_misc@outlook.com","username":"lianhao-lu"},"change_message_id":"bc6a66d12c8fb15d27f48908c521a90f8b9546e4","unresolved":false,"context_lines":[{"line_number":162,"context_line":"                q.append(\"RowFilter ( \u003d , \u0027regexstring:\\d*_%s\u0027)\" % value)"},{"line_number":163,"context_line":"            else:"},{"line_number":164,"context_line":"                q.append(\"SingleColumnValueFilter \""},{"line_number":165,"context_line":"                         \"(\u0027f\u0027, \u0027%s\u0027, \u003d, \u0027binary:%s\u0027, true, true)\" %"},{"line_number":166,"context_line":"                         (key, dump(value)))"},{"line_number":167,"context_line":"    res_q \u003d None"},{"line_number":168,"context_line":"    if len(q):"}],"source_content_type":"text/x-python","patch_set":4,"id":"baada198_525f4a74","line":165,"updated":"2014-08-07 03:13:47.000000000","message":"Don\u0027t know anything about Hbase, but it seems that comparing to the old event_filter.event_type case, this will add additional \"true, true)\" into the query string. Just wondering is it intentional?","commit_id":"6dd6fc937298ad9727015064adcf2204a10587dc"},{"author":{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},"change_message_id":"3e22c7f4309738b53493b6f935572a2040fa2ca5","unresolved":false,"context_lines":[{"line_number":162,"context_line":"                q.append(\"RowFilter ( \u003d , \u0027regexstring:\\d*_%s\u0027)\" % value)"},{"line_number":163,"context_line":"            else:"},{"line_number":164,"context_line":"                q.append(\"SingleColumnValueFilter \""},{"line_number":165,"context_line":"                         \"(\u0027f\u0027, \u0027%s\u0027, \u003d, \u0027binary:%s\u0027, true, true)\" %"},{"line_number":166,"context_line":"                         (key, dump(value)))"},{"line_number":167,"context_line":"    res_q \u003d None"},{"line_number":168,"context_line":"    if len(q):"}],"source_content_type":"text/x-python","patch_set":4,"id":"baada198_c1546625","line":165,"in_reply_to":"baada198_525f4a74","updated":"2014-08-07 08:12:12.000000000","message":"yes, we add two additional params in filter query. Where first param is FilterIfMissing (if equal True row will be skipped if the column is not found) and second param is LatestVersionOnly ( If true, the row will be returned if only the latest version of the column value matches.) Actually from the very beginning we have all tables in HBase with default max-versions\u003d3, now only alarm_tables and alarm_history_tables have default versions all other table have versions\u003d1, so we can dell this param almost everywhere from the query.","commit_id":"6dd6fc937298ad9727015064adcf2204a10587dc"}]}
