Valentin Lorentz
4da1291876
URL: Lazily deserialize records from the end in @last
...
Before this commit, the plugin first fetched a list of all
(deserialized) records in a list, then reversed the list, and iterated
on the reverse list.
This proved to be slow, with most of the time being spent in
`dbi.DB._newRecord` (which essentially deserializes one list of CSV).
After this commit, the list is reversed first, then the plugin iterates
on its generator, which calls `_newRecord` on records as they are
requested.
This means that when there are many URLs in the database, `@last` does
not need to waste time deserializing most records, when the result is
near the end (and if the result is the first record, then it does
exactly as much work as before).
2022-10-30 20:46:35 +01:00
..
2022-02-06 00:14:47 +01:00
2022-07-09 14:15:57 -07:00
2022-07-09 14:15:57 -07:00
2022-02-06 00:14:47 +01:00
2022-07-20 17:53:09 +02:00
2022-04-16 12:05:43 +02:00
2022-06-17 16:44:12 +02:00
2022-07-13 21:02:28 +02:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-09-07 12:31:22 +02:00
2022-08-06 15:09:10 +02:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-07-30 21:23:10 +02:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-07-20 17:53:09 +02:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-10-06 09:49:42 +02:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-09-18 20:06:34 +02:00
2022-08-16 00:23:33 +02:00
2022-02-16 21:27:28 +01:00
2022-07-13 08:56:30 +02:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-07-06 22:07:37 +02:00
2022-02-06 00:14:47 +01:00
2022-06-23 22:31:17 +02:00
2022-09-18 19:25:48 +02:00
2022-02-06 00:14:47 +01:00
2022-10-20 18:35:58 +02:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-10-20 18:35:58 +02:00
2022-02-06 00:14:47 +01:00
2022-10-28 22:41:43 +02:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-10-20 18:35:58 +02:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-10-06 08:31:22 +02:00
2022-02-06 00:14:47 +01:00
2022-08-06 15:08:51 +02:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-02-06 00:14:47 +01:00
2022-10-30 20:46:35 +01:00
2022-10-13 21:46:50 +02:00
2022-02-06 00:14:47 +01:00
2022-10-28 14:18:52 +02:00
2021-09-14 20:30:47 +02:00
2014-03-22 12:22:54 +02:00