41b5e6a | Jenkins for Software Heritage | 31 October 2022, 09:10:06 UTC | Updated backport on buster-swh from debian/1.7.2-1_swh1 (unstable-swh) | 31 October 2022, 09:10:06 UTC |
e06db73 | Jenkins for Software Heritage | 31 October 2022, 09:10:06 UTC | Merge tag 'debian/1.7.2-1_swh1' into debian/buster-swh | 31 October 2022, 09:10:06 UTC |
ac3b2b8 | Jenkins for Software Heritage | 31 October 2022, 09:01:33 UTC | Updated debian changelog for version 1.7.2 | 31 October 2022, 09:01:33 UTC |
09379d8 | Jenkins for Software Heritage | 31 October 2022, 09:01:32 UTC | Update upstream source from tag 'debian/upstream/1.7.2' Update to upstream version '1.7.2' with Debian dir dacc5f180032675dbb661873d7a2b30a3f07b33f | 31 October 2022, 09:01:32 UTC |
3f35a0a | Jenkins for Software Heritage | 31 October 2022, 09:01:30 UTC | New upstream version 1.7.2 | 31 October 2022, 09:01:30 UTC |
82ad28b | Valentin Lorentz | 23 October 2022, 15:39:30 UTC | Fix documentation build It was broken by 0e8da810ac962b79dda18d9cfe9f3c7ea4f9de52 because the conditional import prevents sphinx from detecting where the class is imported from. Additionally, this attribute should not be on the interface, because proxies do not have it, but they are expected to have that interface. | 23 October 2022, 15:39:56 UTC |
0e8da81 | David Douard | 18 October 2022, 13:43:17 UTC | tests: only flush() the kafka journal writer once per test instead of flushing it n times per test. Since the call to kafka Producer.flush() takes about 1s, reducing the number of calls to this method significantly reduce the execution time of the tests. This required a small refactoring of the JournalBackfiller class to make the journal writer live out of the scope of the run() so the test can access the journal writer instance and call the flush() method. Requires swh-journal >= 1.2.0 | 21 October 2022, 15:24:50 UTC |
fe0eaee | David Douard | 21 October 2022, 12:09:07 UTC | Make the replayer not crash on kafka messages that fail to be converted as model objects for example, there are a few kafka directory messages in the current production kafka cluster which entries contain the same name twice, preventing the Directory model object from being created at all, which makes the replayer crash. This change makes the replayer able to handle such cases. When the model object creation fails with a ValueError, the error is reported in the (redis) error reporter, but the replaying process continue. Since there is no model object, the error is reported with a crafted error key of the form "{object_type}:{object_id}" if an object id is present in the data structure, or "{object_type}:uuid:{uuid4}" if such an id is not even present. For the record, the standard error key in redis for a model object is it's swhid (if any). | 21 October 2022, 14:43:16 UTC |
242e37a | David Douard | 21 October 2022, 12:05:23 UTC | Add a comment that should have been "kept" from 850a7553b | 21 October 2022, 14:43:16 UTC |
784f730 | Antoine Lambert | 19 October 2022, 13:06:20 UTC | Fix typos detected by codespell | 19 October 2022, 13:07:21 UTC |
68d78cb | Jenkins for Software Heritage | 19 October 2022, 13:05:31 UTC | Updated backport on buster-swh from debian/1.7.1-1_swh1 (unstable-swh) | 19 October 2022, 13:05:31 UTC |
6b1c9c4 | Jenkins for Software Heritage | 19 October 2022, 13:05:30 UTC | Merge tag 'debian/1.7.1-1_swh1' into debian/buster-swh | 19 October 2022, 13:05:30 UTC |
2b68f26 | Jenkins for Software Heritage | 19 October 2022, 12:55:26 UTC | Updated debian changelog for version 1.7.1 | 19 October 2022, 12:55:26 UTC |
735340c | Jenkins for Software Heritage | 19 October 2022, 12:55:26 UTC | Update upstream source from tag 'debian/upstream/1.7.1' Update to upstream version '1.7.1' with Debian dir f05f0e9091b40ea57a67d50d05421042fd01878e | 19 October 2022, 12:55:26 UTC |
086d974 | Jenkins for Software Heritage | 19 October 2022, 12:55:24 UTC | New upstream version 1.7.1 | 19 October 2022, 12:55:24 UTC |
3c08d9f | Antoine Lambert | 19 October 2022, 12:10:15 UTC | test_retry: Use proper way to mock sleep of retryable storage methods Previous implementation was not mocking sleep of retryable storage methods as the RetryingProxyStorage setup the retry features when it is instantiated. So modify fixture to ensure sleep functions are mocked and return the mocks in a dict indexed by storage method names. This fixes debian buster package build for swh-storage. | 19 October 2022, 12:10:32 UTC |
c1c2dbf | David Douard | 18 October 2022, 16:21:02 UTC | pre-commit, tox: Bump pre-commit, codespell, black and flake8 - pre-commit from 4.1.0 to 4.3.0, - codespell from 2.2.1 to 2.2.2, - black from 22.3.0 to 22.10.0 and - flake8 from 4.0.1 to 5.0.4. Also freeze flake8 dependencies. Also change flake8's repo config to github (the gitlab mirror being outdated). | 18 October 2022, 16:53:39 UTC |
17d9ad2 | Antoine Lambert | 17 October 2022, 15:43:10 UTC | docs: Add info about CPAN extrinsic metadata format Related to T2833 | 17 October 2022, 17:03:30 UTC |
7dc4438 | Jenkins for Software Heritage | 10 October 2022, 12:05:01 UTC | Updated debian changelog for version 1.7.0 | 10 October 2022, 12:05:01 UTC |
bbd7b5b | Jenkins for Software Heritage | 10 October 2022, 12:05:00 UTC | Update upstream source from tag 'debian/upstream/1.7.0' Update to upstream version '1.7.0' with Debian dir 81b2401295e3498ed142bd16cdfa97d2cb619643 | 10 October 2022, 12:05:00 UTC |
e8896bd | Jenkins for Software Heritage | 10 October 2022, 12:04:58 UTC | New upstream version 1.7.0 | 10 October 2022, 12:04:58 UTC |
657d31f | Valentin Lorentz | 29 September 2022, 07:47:39 UTC | postgresql: Remove merge join with origin_visit in origin_visit_get_latest I noticed that `origin_visit_get_latest` spends a lot of time doing index scans on `origin_visit_pkey`: ``` swh=> explain analyze SELECT * FROM origin_visit ov INNER JOIN origin o ON o.id = ov.origin INNER JOIN origin_visit_status ovs USING (origin, visit) WHERE ov.origin = (SELECT id FROM origin o WHERE o.url = 'https://pypi.org/project/simpleado/') AND ovs.snapshot is not null AND ovs.status = 'full' ORDER BY ov.visit DESC, ovs.date DESC LIMIT 1; QUERY PLAN -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Limit (cost=10.14..29.33 rows=1 width=171) (actual time=1432.475..1432.479 rows=1 loops=1) InitPlan 1 (returns $0) -> Index Scan using origin_url_idx on origin o_1 (cost=0.56..8.57 rows=1 width=8) (actual time=0.077..0.079 rows=1 loops=1) Index Cond: (url = 'https://pypi.org/project/simpleado/'::text) -> Merge Join (cost=1.56..2208.37 rows=115 width=171) (actual time=1432.473..1432.476 rows=1 loops=1) Merge Cond: (ovs.visit = ov.visit) -> Nested Loop (cost=1.00..1615.69 rows=93 width=143) (actual time=298.705..298.707 rows=1 loops=1) -> Index Scan Backward using origin_visit_status_pkey on origin_visit_status ovs (cost=0.57..1606.07 rows=93 width=85) (actual time=298.658..298.658 rows=1 loops=1) Index Cond: (origin = $0) Filter: ((snapshot IS NOT NULL) AND (status = 'full'::origin_visit_state)) Rows Removed by Filter: 198 -> Materialize (cost=0.43..8.46 rows=1 width=58) (actual time=0.042..0.043 rows=1 loops=1) -> Index Scan using origin_pkey on origin o (cost=0.43..8.45 rows=1 width=58) (actual time=0.038..0.038 rows=1 loops=1) Index Cond: (id = $0) -> Index Scan Backward using origin_visit_pkey on origin_visit ov (cost=0.56..590.92 rows=150 width=28) (actual time=30.120..1133.650 rows=100 loops=1) Index Cond: (origin = $0) Planning Time: 0.577 ms Execution Time: 1432.532 ms (18 lignes) ``` As far as I understand, this is because we do not have a FK to tell the planner that every row in `origin_visit_status` does have a corresponding row in `origin_visit`, so it checks every row from `origin_visit_status` in this loop. Therefore, I rewrote the query to use a `LEFT JOIN`, so it will spare this check. First, here is the original query: ``` swh=> explain SELECT * FROM origin_visit ov INNER JOIN origin_visit_status ovs USING (origin, visit) WHERE ov.origin = (SELECT id FROM origin o WHERE o.url = 'https://pypi.org/project/simpleado/') AND ovs.snapshot is not null AND ovs.status = 'full' ORDER BY ov.visit DESC, ovs.date DESC LIMIT 1; QUERY PLAN ---------------------------------------------------------------------------------------------------------------------------------- Limit (cost=9.71..28.82 rows=1 width=113) InitPlan 1 (returns $0) -> Index Scan using origin_url_idx on origin o (cost=0.56..8.57 rows=1 width=8) Index Cond: (url = 'https://pypi.org/project/simpleado/'::text) -> Merge Join (cost=1.13..2198.75 rows=115 width=113) Merge Cond: (ovs.visit = ov.visit) -> Index Scan Backward using origin_visit_status_pkey on origin_visit_status ovs (cost=0.57..1606.07 rows=93 width=85) Index Cond: (origin = $0) Filter: ((snapshot IS NOT NULL) AND (status = 'full'::origin_visit_state)) -> Index Scan Backward using origin_visit_pkey on origin_visit ov (cost=0.56..590.92 rows=150 width=28) Index Cond: (origin = $0) (11 lignes) ``` Change columns to filter directly on the "materialized" fields in ovs instead of those on those in ov (no actual change yet): ``` swh=> explain SELECT * FROM origin_visit ov INNER JOIN origin_visit_status ovs USING (origin, visit) WHERE ovs.origin = (SELECT id FROM origin o WHERE o.url = 'https://pypi.org/project/simpleado/') AND ovs.snapshot is not null AND ovs.status = 'full' ORDER BY ovs.visit DESC, ovs.date DESC LIMIT 1; QUERY PLAN ---------------------------------------------------------------------------------------------------------------------------------- Limit (cost=9.71..28.82 rows=1 width=113) InitPlan 1 (returns $0) -> Index Scan using origin_url_idx on origin o (cost=0.56..8.57 rows=1 width=8) Index Cond: (url = 'https://pypi.org/project/simpleado/'::text) -> Merge Join (cost=1.13..2198.75 rows=115 width=113) Merge Cond: (ovs.visit = ov.visit) -> Index Scan Backward using origin_visit_status_pkey on origin_visit_status ovs (cost=0.57..1606.07 rows=93 width=85) Index Cond: (origin = $0) Filter: ((snapshot IS NOT NULL) AND (status = 'full'::origin_visit_state)) -> Index Scan Backward using origin_visit_pkey on origin_visit ov (cost=0.56..590.92 rows=150 width=28) Index Cond: (origin = $0) (11 lignes) ``` Then, reorder tables (obviously no change either): ``` swh=> explain SELECT * FROM origin_visit_status ovs INNER JOIN origin_visit ov USING (origin, visit) WHERE ovs.origin = (SELECT id FROM origin o WHERE o.url = 'https://pypi.org/project/simpleado/') AND ovs.snapshot is not null AND ovs.status = 'full' ORDER BY ovs.visit DESC, ovs.date DESC LIMIT 1; QUERY PLAN ---------------------------------------------------------------------------------------------------------------------------------- Limit (cost=9.71..28.82 rows=1 width=113) InitPlan 1 (returns $0) -> Index Scan using origin_url_idx on origin o (cost=0.56..8.57 rows=1 width=8) Index Cond: (url = 'https://pypi.org/project/simpleado/'::text) -> Merge Join (cost=1.13..2198.75 rows=115 width=113) Merge Cond: (ovs.visit = ov.visit) -> Index Scan Backward using origin_visit_status_pkey on origin_visit_status ovs (cost=0.57..1606.07 rows=93 width=85) Index Cond: (origin = $0) Filter: ((snapshot IS NOT NULL) AND (status = 'full'::origin_visit_state)) -> Index Scan Backward using origin_visit_pkey on origin_visit ov (cost=0.56..590.92 rows=150 width=28) Index Cond: (origin = $0) (11 lignes) ``` Finally, replace `INNER JOIN` with `LEFT JOIN`: ``` swh=> explain SELECT * FROM origin_visit_status ovs LEFT JOIN origin_visit ov USING (origin, visit) WHERE ovs.origin = (SELECT id FROM origin o WHERE o.url = 'https://pypi.org/project/simpleado/') AND ovs.snapshot is not null AND ovs.status = 'full' ORDER BY ovs.visit DESC, ovs.date DESC LIMIT 1; QUERY PLAN ---------------------------------------------------------------------------------------------------------------------------------- Limit (cost=9.71..35.47 rows=1 width=113) InitPlan 1 (returns $0) -> Index Scan using origin_url_idx on origin o (cost=0.56..8.57 rows=1 width=8) Index Cond: (url = 'https://pypi.org/project/simpleado/'::text) -> Nested Loop Left Join (cost=1.13..2396.79 rows=93 width=113) -> Index Scan Backward using origin_visit_status_pkey on origin_visit_status ovs (cost=0.57..1606.07 rows=93 width=85) Index Cond: (origin = $0) Filter: ((snapshot IS NOT NULL) AND (status = 'full'::origin_visit_state)) -> Index Scan using origin_visit_pkey on origin_visit ov (cost=0.56..8.59 rows=1 width=28) Index Cond: ((origin = ovs.origin) AND (origin = $0) AND (visit = ovs.visit)) (10 lignes) ``` This would also work with a subquery just to get the value of `ov.date` and removing the actual join to `ov` entirely, but it was more annoying to implement because the function reuses `self.origin_visit_select_cols` as column list. All these EXPLAIN queries were run on staging. | 29 September 2022, 11:22:57 UTC |
44616af | Valentin Lorentz | 29 September 2022, 08:15:36 UTC | conftest: Replace multiprocessing hack when pytest-cov >= 4 is installed The hack crashes on >= 4 because 'pytest_cov.embed.multiprocessing_start' is not in the hook list anymore. https://pytest-cov.readthedocs.io/en/latest/changelog.html | 29 September 2022, 10:53:41 UTC |
87d3f0d | Valentin Lorentz | 28 September 2022, 11:27:05 UTC | retry: Do not retry on SystemExit exceptions It prevents process shutdown (unless the user presses Ctrl-C several times in a row) | 28 September 2022, 11:27:05 UTC |
7da7067 | Valentin Lorentz | 27 September 2022, 14:13:51 UTC | docs: Update archive stats | 27 September 2022, 14:13:51 UTC |
26995d4 | Valentin Lorentz | 27 September 2022, 07:15:56 UTC | Handle errors raised by fromisoformat. | 27 September 2022, 13:10:33 UTC |
1281ee7 | Nicolas Dandrimont | 13 September 2022, 13:52:34 UTC | Add date-based index to origin_visit This will help queries retrieving origin_visits by date by avoiding having to scan all visits for the origin. | 13 September 2022, 14:10:10 UTC |
0786ab1 | Nicolas Dandrimont | 13 September 2022, 13:51:57 UTC | SQL upgrade scripts don't need to bump dbversion anymore | 13 September 2022, 13:55:19 UTC |
aa735cb | Valentin Lorentz | 31 August 2022, 12:57:58 UTC | docs: Document metadata formats for Gogs and Gitea | 31 August 2022, 12:57:58 UTC |
d038240 | Antoine Lambert | 30 August 2022, 12:35:31 UTC | postgresql: Fix SQL query for origin_find_visit_by_date method In that query, the interval alias was set for the visit column instead of the date difference computation which could lead to wrong visit being returned due to invalid results ordering. | 30 August 2022, 12:36:35 UTC |
57e5431 | Valentin Lorentz | 29 August 2022, 12:24:56 UTC | Raise StorageArgumentException on ProgramLimitExceeded So it is no logged on the server side, and so clients do not retry | 29 August 2022, 12:24:56 UTC |
b5836ba | Valentin Lorentz | 18 August 2022, 08:29:29 UTC | origin_visit_add: Fix crash when adding multiple visits to the same origin simultaneously This works by adding a RW lock on the row of the latest visit, which should block other transactions until the insertion is committed; so other transactions will generate a different (larger) visit id This commit also slightly rewrites how the max visit id is computed, as we need to actually select a row to lock it, instead of using the `max()` aggregate function. | 22 August 2022, 09:22:50 UTC |
77c7088 | Jenkins for Software Heritage | 16 August 2022, 12:46:24 UTC | Updated backport on buster-swh from debian/1.6.0-1_swh1 (unstable-swh) | 16 August 2022, 12:46:24 UTC |
036ce3e | Jenkins for Software Heritage | 16 August 2022, 12:46:23 UTC | Merge tag 'debian/1.6.0-1_swh1' into debian/buster-swh | 16 August 2022, 12:46:23 UTC |
5a40829 | Jenkins for Software Heritage | 16 August 2022, 12:36:51 UTC | Updated debian changelog for version 1.6.0 | 16 August 2022, 12:36:51 UTC |
b916657 | Jenkins for Software Heritage | 16 August 2022, 12:36:50 UTC | Update upstream source from tag 'debian/upstream/1.6.0' Update to upstream version '1.6.0' with Debian dir 86c67609298670467429d7d09f9eb0e562cfeb39 | 16 August 2022, 12:36:50 UTC |
34ba15b | Jenkins for Software Heritage | 16 August 2022, 12:36:49 UTC | New upstream version 1.6.0 | 16 August 2022, 12:36:49 UTC |
5335244 | Valentin Lorentz | 09 August 2022, 13:42:03 UTC | retry: Add constant 10s wait when retrying transient exceptions They are typically caused by server shutdown and other temporary failures that may take more time than the typical 0-3s delay used by the retry proxy. This should keep noisy exceptions like AdminShutdown out of the Sentry dashboards. | 09 August 2022, 13:42:03 UTC |
7c7a721 | Valentin Lorentz | 09 August 2022, 13:38:15 UTC | Convert psycopg2 errors to TransientRemoteException instead of RemoteException On the wire, this is done by making the server return a 503 error instead of 500, which the RPC client generated by swh-core interprets to change the exception class. | 09 August 2022, 13:38:15 UTC |
b4f289c | Valentin Lorentz | 08 August 2022, 18:42:54 UTC | Add anchor extrinsic-metadata-original-artifacts-json It needs to be linked from swh/lister/crates/__init__.py | 08 August 2022, 18:42:54 UTC |
de4a842 | Jenkins for Software Heritage | 05 August 2022, 12:27:52 UTC | Updated backport on buster-swh from debian/1.5.1-1_swh1 (unstable-swh) | 05 August 2022, 12:27:52 UTC |
08cc3cd | Jenkins for Software Heritage | 05 August 2022, 12:27:51 UTC | Merge tag 'debian/1.5.1-1_swh1' into debian/buster-swh | 05 August 2022, 12:27:51 UTC |
4e53af0 | Jenkins for Software Heritage | 05 August 2022, 12:17:23 UTC | Updated debian changelog for version 1.5.1 | 05 August 2022, 12:17:23 UTC |
5b0437e | Jenkins for Software Heritage | 05 August 2022, 12:17:22 UTC | Update upstream source from tag 'debian/upstream/1.5.1' Update to upstream version '1.5.1' with Debian dir aecb33b9607d268dc35fe135a46a97eab940b3e5 | 05 August 2022, 12:17:22 UTC |
6dba4b5 | Jenkins for Software Heritage | 05 August 2022, 12:17:20 UTC | New upstream version 1.5.1 | 05 August 2022, 12:17:20 UTC |
280ecc3 | Valentin Lorentz | 05 August 2022, 10:10:15 UTC | cassandra: Fix flakiness of test_directory_add_atomic[concurrent] | 05 August 2022, 10:24:10 UTC |
68b93a6 | Valentin Lorentz | 05 August 2022, 09:27:08 UTC | Fix crash of test_*_arbitrary when given objects with the same id | 05 August 2022, 09:39:42 UTC |
9b9eb28 | Valentin Lorentz | 05 August 2022, 09:20:33 UTC | cassandra: Make origin_visit_status_get_random's interval consistent with postgresql The postgresql implementation uses '3 months', which is closer to 13 weeks than to 12 weeks. | 05 August 2022, 09:20:33 UTC |
56f69e5 | Valentin Lorentz | 05 August 2022, 09:18:46 UTC | Fix flakiness of test_origin_visit_status_get_random_nothing_found start is increased from 13 to 14, because 13 weeks is 91 days, ie. 30+31+30; so it is sometimes smaller than 3 months. This was only hit rarely because the number of visits was small, so this commit also increases the number of visits to make the test more likely to fail if it should actually fail. | 05 August 2022, 09:18:46 UTC |
cb92e90 | Jenkins for Software Heritage | 05 August 2022, 08:55:08 UTC | Updated backport on buster-swh from debian/1.5.0-1_swh1 (unstable-swh) | 05 August 2022, 08:55:08 UTC |
48b6668 | Jenkins for Software Heritage | 05 August 2022, 08:55:07 UTC | Merge tag 'debian/1.5.0-1_swh1' into debian/buster-swh | 05 August 2022, 08:55:07 UTC |
7d18537 | Jenkins for Software Heritage | 05 August 2022, 08:44:42 UTC | Updated debian changelog for version 1.5.0 | 05 August 2022, 08:44:42 UTC |
eae94e6 | Jenkins for Software Heritage | 05 August 2022, 08:44:41 UTC | Update upstream source from tag 'debian/upstream/1.5.0' Update to upstream version '1.5.0' with Debian dir 34ae119254de09bf2789c8e454ecae8cb67a614d | 05 August 2022, 08:44:41 UTC |
ea2f9f4 | Jenkins for Software Heritage | 05 August 2022, 08:44:39 UTC | New upstream version 1.5.0 | 05 August 2022, 08:44:39 UTC |
4825f40 | Valentin Lorentz | 05 August 2022, 08:08:01 UTC | Fix flakiness in test_directory_add_get_arbitrary By ignoring other attributes when raw_manifest is not None; just like we already do in test_revision_add_get_arbitrary and test_release_add_get_arbitrary. | 05 August 2022, 08:08:01 UTC |
fc89059 | Valentin Lorentz | 04 August 2022, 14:02:47 UTC | Stop logging and sending postgresql timeouts to Sentry They are very noisy, and clients are expected to retry a few times before re-raising the exception on their side. | 04 August 2022, 14:02:47 UTC |
1e7ede1 | Valentin Lorentz | 04 August 2022, 11:53:29 UTC | Stop using `USE <keyspace>` with prepared statements This caused the following warning: ``` WARNING cassandra.protocol:libevreactor.py:361 Server warning: `USE <keyspace>` with prepared statements is considered to be an anti-pattern due to ambiguity in non-qualified table names. Please consider removing instances of `Session#setKeyspace(<keyspace>)`, `Session#execute("USE <keyspace>")` and `cluster.newSession(<keyspace>)` from your code, and always use fully qualified table names (e.g. <keyspace>.<table>). ``` This also prepends 'test' to the name of keyspaces used in tests, so they are guaranteed to start with an letter (starting with digits cause syntax errors in most statements). | 04 August 2022, 11:53:29 UTC |
0aff461 | Valentin Lorentz | 04 August 2022, 11:51:16 UTC | cassandra: Simplify SELECT statement formatting | 04 August 2022, 11:51:16 UTC |
2205fa6 | Valentin Lorentz | 04 August 2022, 09:55:28 UTC | Add test_directory_add_raw_manifest__different_entries This reproduces what I think is the issue found in https://jenkins.softwareheritage.org/job/debian/job/packages/job/DSTO/job/gbp-buildpackage/423/consoleFull This does not fix the issue as it is a consequence of the design, but documents this problematic behavior. | 04 August 2022, 09:55:40 UTC |
633c08e | Jenkins for Software Heritage | 04 August 2022, 08:23:22 UTC | Updated backport on buster-swh from debian/1.4.2-1_swh1 (unstable-swh) | 04 August 2022, 08:23:22 UTC |
c1ef03a | Jenkins for Software Heritage | 04 August 2022, 08:23:21 UTC | Merge tag 'debian/1.4.2-1_swh1' into debian/buster-swh | 04 August 2022, 08:23:21 UTC |
11fde18 | Jenkins for Software Heritage | 04 August 2022, 08:13:26 UTC | Updated debian changelog for version 1.4.2 | 04 August 2022, 08:13:26 UTC |
95fc846 | Jenkins for Software Heritage | 04 August 2022, 08:13:24 UTC | Update upstream source from tag 'debian/upstream/1.4.2' Update to upstream version '1.4.2' with Debian dir 9e4f8fb309e3513a2cc36f0dd6a80fb264910e05 | 04 August 2022, 08:13:24 UTC |
fad99cc | Jenkins for Software Heritage | 04 August 2022, 08:13:22 UTC | New upstream version 1.4.2 | 04 August 2022, 08:13:22 UTC |
fbe3803 | Antoine Lambert | 13 July 2022, 14:44:13 UTC | postgresql: Increase some timeouts to get origin visits Even if missing index to speedup origin visit queries has been added to replica database, the configured timeouts for origin_visit_get_with_statuses and origin_visit_find_by_date were still too low to avoid query timeouts in production. After performing some tests locally, bumping them to 2000ms makes the timeouts go away. Related to T4386 | 13 July 2022, 14:44:35 UTC |
cfc8679 | Valentin Lorentz | 06 July 2022, 11:37:00 UTC | backfill: Add support for directories with duplicated entries This uses Directory.from_possibly_duplicated_entries() to mangle entry names instead of crashing. | 12 July 2022, 12:26:13 UTC |
d6db4e4 | David Douard | 08 July 2022, 11:57:44 UTC | cli: move an import statement in the cli command | 08 July 2022, 11:57:44 UTC |
e0825ac | David Douard | 01 July 2022, 15:46:48 UTC | do not always auto-create an OriginVisitStatus object in origin_visit_add() when the OriginVisit object given as argument to be inserted already have its visit id set (which is usually the case in a replayer-like session), it makes no sense to auto-add the first OriginVisitStatus objects related to this visit; this behavior is expected only when the origin_visit_add() is called from a loading session. Adapt tests accordingly -- several tests did depend on the auto-add behavior of the origin_visit_add method for OriginVisit objects which visit_id is given in the test dataset. | 06 July 2022, 15:28:47 UTC |
47caf04 | David Douard | 01 July 2022, 12:56:47 UTC | Add a Storage.flavor property to the postgresql backend and add tests for 'mirror' and 'read_replica' flavors. | 01 July 2022, 13:03:43 UTC |
a00650e | David Douard | 01 July 2022, 12:50:28 UTC | Update pytest_plugin for swh.core 2.10 | 01 July 2022, 13:03:41 UTC |
3567976 | Jenkins for Software Heritage | 03 June 2022, 15:40:41 UTC | Updated backport on buster-swh from debian/1.4.1-1_swh1 (unstable-swh) | 03 June 2022, 15:40:41 UTC |
6c840c8 | Jenkins for Software Heritage | 03 June 2022, 15:40:40 UTC | Merge tag 'debian/1.4.1-1_swh1' into debian/buster-swh | 03 June 2022, 15:40:40 UTC |
9d8f0d8 | Jenkins for Software Heritage | 03 June 2022, 15:25:20 UTC | Updated debian changelog for version 1.4.1 | 03 June 2022, 15:25:20 UTC |
cf5448f | Jenkins for Software Heritage | 03 June 2022, 15:25:19 UTC | Update upstream source from tag 'debian/upstream/1.4.1' Update to upstream version '1.4.1' with Debian dir dbb991421736a20fe750987037213b265bfc0620 | 03 June 2022, 15:25:19 UTC |
5b366ae | Jenkins for Software Heritage | 03 June 2022, 15:25:17 UTC | New upstream version 1.4.1 | 03 June 2022, 15:25:17 UTC |
c19f53f | Antoine R. Dumont (@ardumont) | 03 June 2022, 09:35:32 UTC | Set current_version attribute to postgresql datastore This also simplifies the db collaborator code reusing core.db functions to check the code version and the actual db version matches. Related to T4305 | 03 June 2022, 13:40:56 UTC |
e64d64e | David Douard | 31 May 2022, 10:37:04 UTC | pytest_plugin: use the stock pytest_postgresql postgresql factory instead of swh-core's postgresql_fact one, since we actually do not use its custom features any more in swh-storage. | 31 May 2022, 16:41:53 UTC |
a936cfd | David Douard | 31 May 2022, 11:35:36 UTC | Add missing __init__.py in proxies/ | 31 May 2022, 11:35:36 UTC |
cb12394 | Valentin Lorentz | 10 May 2022, 12:05:02 UTC | docs: Describe metadata formats more precisely, and mention github and gitlab's | 10 May 2022, 12:05:12 UTC |
27d3c8a | Pratyush Desai | 09 May 2022, 10:14:18 UTC | add strict asyncio_mode in pytest.ini | 09 May 2022, 10:14:18 UTC |
273538c | Jenkins for Software Heritage | 03 May 2022, 10:09:00 UTC | Updated backport on buster-swh from debian/1.4.0-1_swh1 (unstable-swh) | 03 May 2022, 10:09:00 UTC |
46332af | Jenkins for Software Heritage | 03 May 2022, 10:08:59 UTC | Merge tag 'debian/1.4.0-1_swh1' into debian/buster-swh | 03 May 2022, 10:08:59 UTC |
002897e | Jenkins for Software Heritage | 03 May 2022, 09:55:07 UTC | Updated debian changelog for version 1.4.0 | 03 May 2022, 09:55:07 UTC |
2c4770f | Jenkins for Software Heritage | 03 May 2022, 09:55:06 UTC | Update upstream source from tag 'debian/upstream/1.4.0' Update to upstream version '1.4.0' with Debian dir 73644a39fe481a5df44d85383ea7932ad94b8b0e | 03 May 2022, 09:55:06 UTC |
d0af35e | Jenkins for Software Heritage | 03 May 2022, 09:55:04 UTC | New upstream version 1.4.0 | 03 May 2022, 09:55:04 UTC |
9562953 | Valentin Lorentz | 02 May 2022, 10:18:27 UTC | Add function storage.algos.directory.directory_get It will be used i swh-storage to fetch a complete directory object, ie. with the raw_manifest and all branches. | 02 May 2022, 10:26:23 UTC |
fb55141 | Antoine R. Dumont (@ardumont) | 28 April 2022, 10:23:22 UTC | client: Migrate to _post method call to stop deprecation warnings | 28 April 2022, 10:23:22 UTC |
a942679 | Valentin Lorentz | 26 April 2022, 11:06:09 UTC | Bump mypy to v0.942 | 26 April 2022, 11:06:14 UTC |
62cf989 | Jenkins for Software Heritage | 25 April 2022, 12:48:49 UTC | Updated backport on buster-swh from debian/1.3.2-1_swh1 (unstable-swh) | 25 April 2022, 12:48:49 UTC |
5ad117d | Jenkins for Software Heritage | 25 April 2022, 12:48:48 UTC | Merge tag 'debian/1.3.2-1_swh1' into debian/buster-swh | 25 April 2022, 12:48:48 UTC |
d4183fb | Jenkins for Software Heritage | 25 April 2022, 12:33:52 UTC | Updated debian changelog for version 1.3.2 | 25 April 2022, 12:33:52 UTC |
9daf7bc | Jenkins for Software Heritage | 25 April 2022, 12:33:51 UTC | Update upstream source from tag 'debian/upstream/1.3.2' Update to upstream version '1.3.2' with Debian dir 4800aced1470880655cac85fcaa18ec010184687 | 25 April 2022, 12:33:51 UTC |
2c45e26 | Jenkins for Software Heritage | 25 April 2022, 12:33:50 UTC | New upstream version 1.3.2 | 25 April 2022, 12:33:50 UTC |
e6e658e | Antoine Lambert | 21 April 2022, 11:39:50 UTC | pre-commit: Remove codespell commit-msg hook That hook can be frustrating as it can discard a long commit message if it finds a typo in it so better removing it. | 21 April 2022, 11:39:50 UTC |
f136559 | David Douard | 14 April 2022, 10:13:00 UTC | User logger everywhere in tenacious.py | 14 April 2022, 10:13:58 UTC |
bbb4fc1 | Nicolas Dandrimont | 13 April 2022, 13:37:57 UTC | retry: re-raise original exception instead of a RetryError This will make the sentry reports more usable. If the exception changes across calls, the earlier exceptions are still logged and available as breadcrumbs. | 13 April 2022, 13:37:57 UTC |
72c2b91 | Jenkins for Software Heritage | 12 April 2022, 13:02:20 UTC | Updated backport on buster-swh from debian/1.3.1-1_swh1 (unstable-swh) | 12 April 2022, 13:02:20 UTC |
20cbf17 | Jenkins for Software Heritage | 12 April 2022, 13:02:19 UTC | Merge tag 'debian/1.3.1-1_swh1' into debian/buster-swh | 12 April 2022, 13:02:19 UTC |
f66d1e5 | Jenkins for Software Heritage | 12 April 2022, 12:48:04 UTC | Updated debian changelog for version 1.3.1 | 12 April 2022, 12:48:04 UTC |
ac7bd15 | Jenkins for Software Heritage | 12 April 2022, 12:48:03 UTC | Update upstream source from tag 'debian/upstream/1.3.1' Update to upstream version '1.3.1' with Debian dir 396826333823bf05c82e05c3784d0cea79d93835 | 12 April 2022, 12:48:03 UTC |