- Dec 16, 2024
-
-
vlorentz authored
-
- Dec 11, 2024
-
-
vlorentz authored
- Nov 27, 2024
-
-
Antoine Lambert authored
This should speed up a bit tests execution on Jenkins. Use pytest option --dist=loadfile to group tests by their containing file in order to avoid spawning too many cassandra or postgres instances.
-
Antoine Lambert authored
Recent changes in swh-storage added the PartitionsManagementInterface but this interface is only implemented on real storage backends, not proxies. Any client code overriding the swh_storage_backend_config to return a storage pipeline (loaders for instance) ends up with error otherwise.
-
vlorentz authored
Through a `table_option` dict in the config, mapping table names to what to add to the `WITH` clause of the `CREATE TABLE` clause.
-
- Nov 26, 2024
-
-
vlorentz authored
This abstracts this interface from the PostgreSQL-specific implementation, allowing the object_references table to be sharded in Cassandra.
- Nov 08, 2024
-
-
vlorentz authored
- Nov 05, 2024
-
-
vlorentz authored
The storage returned by swh_storage() must be either the same as swh_storage_backend(), or be a chain of proxies to it. This allows tests to act on the backend using methods not available on proxies or the RPC
-
- Oct 31, 2024
-
-
David Douard authored
Check these 2 backends can be initialized with `swh db` commands using both the backend syntax (<package>:<cls>) and the full module name (eg. storage.proxies.masking). This requires swh.core 3.6.1 which includes a fix for these.
-
- Oct 30, 2024
-
-
David Douard authored
-
- Oct 11, 2024
-
-
David Douard authored
instead of specific masking_db and blocking_db. Keep support for these but mark them as deprecated.
-
David Douard authored
-
- Sep 25, 2024
-
-
Nicolas Dandrimont authored
Not all codepaths are tested with 3.9, but at least `__init__.py` should work.
-
- Aug 27, 2024
-
-
David Douard authored
-
David Douard authored
-
- Aug 09, 2024
-
-
David Douard authored
This tool can then be used by the sync script filling this db from the content of the displayname management app in the web app.
-
- Jul 22, 2024
-
-
Antoine Lambert authored
Fix broken tests due to the introduction of the ModelObjectType enum.
-
- Jul 08, 2024
-
-
Nicolas Dandrimont authored
Closes #4712
-
Antoine Lambert authored
For consistency with other *_get methods in this interface, set return type to list instead of iterable, plus it enables to use the __getitem__ method in client code without mypy errors.
-
- Jun 28, 2024
-
-
Antoine Lambert authored
Latest tenacity release adds some internal changes that broke the mocking of sleep calls in tests. Fix it by directly mocking time.sleep (was not working previously).
-
- Jun 06, 2024
-
-
Jérémy Bobbio (Lunar) authored
It is fairly easy to overlook calling `storage.flush()` after adding some objects just before the end of a process. In a direct configuration, everything will be fine but if a buffering proxy is configured, this means that the objects still in the buffers are going to be lost. Let’s add a warning if this is the case.
-
Nicolas Dandrimont authored
When deleting a snapshot, deletion removed the corresponding entries in the `snapshot_branch` table. These entries are shared between snapshots (e.g. all snapshots with a `HEAD` pointing to `refs/heads/main` share the same line in this table), and we don't keep a reverse index to efficiently remove orphan lines, so we just skip the removal altogether. Add a test to ensure that the corruption doesn't happen anymore.
-
- Jun 05, 2024
-
-
Jérémy Bobbio (Lunar) authored
These changes are needed to allow `swh alter remove` to remove RawExtrinsicMetadata and ExtID objects from the PostgreSQL and Cassandra implementation of the storage. As RawExtrinsicMetadata objects can be addressed using an ExtendendSWHID, they can now be removed using `object_delete()`. For ExtID, a new method `extid_delete_for_target()` has been added to `ObjectDeletionInterface`. It will remove any ExtID object targeting one of the object in the a list of SWHID given as an argument. Address swh-alter!11
-
Jérémy Bobbio (Lunar) authored
The cursor provided by the `@db_transaction` decorator was not being passed properly.
-
- Jun 04, 2024
-
-
Nicolas Dandrimont authored
To be able to use the `swh db` command line, the configurations need to have the following shape: <toplevel key>: cls: postgresql db: <postgresql DSN> The usage of `blocking_db` and `masking_db` instead of plain `db`, and lack of overridability in the swh db utilities, made schema migrations more annoying than necessary. The old configuration key still works but raises a Deprecation warning. The configuration of the proxies themselves is unchanged, as having a differently-named key for the proxy-specific database makes sense to avoid confusion.
-
- Jun 03, 2024
-
-
Nicolas Dandrimont authored
The prefix matching semantics rely on URL patterns not ending with a /. URLs ending in / will only be used for exact matches. Warn the operator of this situation.
-
Nicolas Dandrimont authored
Instead of doing some collation-dependent, somewhat brittle prefix matching in PostgreSQL, generate a list of checked prefixes and match them exactly in the database. This means we can do both exact and prefix matching in one go.
-
Antoine Lambert authored
If that parameter is provided, it enables to get the latest snapshot produced by a specific visit type. Related to swh/meta#5092.
-
- May 31, 2024
-
-
This is an alternative to modifying the `person` table, as that technique only worked on the PostgreSQL backend and not with Cassandra, as it does not have a `person` table (authors and committers are inlined in the revision and release tables). This does not come with cli tooling to manage the display name table entries for now.
-
- May 28, 2024
-
-
Pierre-Yves David authored
I am trying to use mypy to detect psycopg2 → spycopg3 difference and the noise is getting in the way.
-
Pierre-Yves David authored
This let us types various function mypy was warning about.
-
- May 17, 2024
-
-
Pierre-Yves David authored
mypy now understand that BaseModel object have a object_type.
-
Pierre-Yves David authored
- May 15, 2024
-
-
David Douard authored
This add a 'blocking_origin_log' table in the database where each filtering event is logged, be it a deny or an expliciy accept event.
-