)]}'
{"oslo_db/sqlalchemy/utils.py":[{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"49f4a1108a1596917f0eb521ca678b1ec73e44fe","unresolved":false,"context_lines":[{"line_number":135,"context_line":""},{"line_number":136,"context_line":"# copy from glance/db/sqlalchemy/api.py"},{"line_number":137,"context_line":"def paginate_query(query, model, limit, sort_keys, marker\u003dNone,"},{"line_number":138,"context_line":"                   sort_dir\u003dNone, sort_dirs\u003dNone, offset\u003dNone):"},{"line_number":139,"context_line":"    \"\"\"Returns a query with sorting / pagination criteria added."},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"    Pagination works by requiring a unique sort_key, specified by sort_keys."}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_a03a1ae5","line":138,"updated":"2016-12-06 09:56:09.000000000","message":"I\u0027m not sure I\u0027m following. If the marker effectively denotes an offset as it is (being the last item on the previous page), why do we need this?","commit_id":"c2aea46c385cba5d10b32522c6988c22edf5958d"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"38d3f90144feda9fa82dd24ff6ac5a7fcc861b7b","unresolved":false,"context_lines":[{"line_number":135,"context_line":""},{"line_number":136,"context_line":"# copy from glance/db/sqlalchemy/api.py"},{"line_number":137,"context_line":"def paginate_query(query, model, limit, sort_keys, marker\u003dNone,"},{"line_number":138,"context_line":"                   sort_dir\u003dNone, sort_dirs\u003dNone, offset\u003dNone):"},{"line_number":139,"context_line":"    \"\"\"Returns a query with sorting / pagination criteria added."},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"    Pagination works by requiring a unique sort_key, specified by sort_keys."}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_c70ba57b","line":138,"in_reply_to":"3a71b18c_33557fc5","updated":"2016-12-06 12:40:23.000000000","message":"Ah, I see, thanks for clarification! Does not that kill the very purpose of passing a marker to improve performance (so that we do not have to iterate over $offset rows first)?","commit_id":"c2aea46c385cba5d10b32522c6988c22edf5958d"},{"author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"change_message_id":"995bb03e851bf843cbf3f90724adb99d58f234fd","unresolved":false,"context_lines":[{"line_number":135,"context_line":""},{"line_number":136,"context_line":"# copy from glance/db/sqlalchemy/api.py"},{"line_number":137,"context_line":"def paginate_query(query, model, limit, sort_keys, marker\u003dNone,"},{"line_number":138,"context_line":"                   sort_dir\u003dNone, sort_dirs\u003dNone, offset\u003dNone):"},{"line_number":139,"context_line":"    \"\"\"Returns a query with sorting / pagination criteria added."},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"    Pagination works by requiring a unique sort_key, specified by sort_keys."}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_33557fc5","line":138,"in_reply_to":"3a71b18c_a03a1ae5","updated":"2016-12-06 10:54:45.000000000","message":"A guys aske why oslo.db doesn\u0027t support offset for query. I talked with him today,I agree limit and marker can handle pagination. offset can provide skip some pages, get specific page without iterating previous pages.","commit_id":"c2aea46c385cba5d10b32522c6988c22edf5958d"},{"author":{"_account_id":6849,"name":"Roman Podoliaka","email":"roman.podoliaka@gmail.com","username":"rpodolyaka"},"change_message_id":"e04bd9a8a738d1346b77167f8f0d0d0e0e66dbe9","unresolved":false,"context_lines":[{"line_number":135,"context_line":""},{"line_number":136,"context_line":"# copy from glance/db/sqlalchemy/api.py"},{"line_number":137,"context_line":"def paginate_query(query, model, limit, sort_keys, marker\u003dNone,"},{"line_number":138,"context_line":"                   sort_dir\u003dNone, sort_dirs\u003dNone, offset\u003dNone):"},{"line_number":139,"context_line":"    \"\"\"Returns a query with sorting / pagination criteria added."},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"    Pagination works by requiring a unique sort_key, specified by sort_keys."}],"source_content_type":"text/x-python","patch_set":2,"id":"3a71b18c_877c4ded","line":138,"in_reply_to":"3a71b18c_c70ba57b","updated":"2016-12-06 12:40:46.000000000","message":"I.e. that would be an alternative \"strategy\" for pagination","commit_id":"c2aea46c385cba5d10b32522c6988c22edf5958d"}]}
