ostree/src
Colin Walters c2baa6d10b repo: Optimize memory use of `ostree_repo_list_objects()`
I was looking at https://github.com/ostreedev/ostree/pull/2632
and confused at the usage of
`GVariant *value = g_variant_new ("(b@as)", TRUE, g_variant_new_strv (NULL, 0));`
which looked strange - why the empty strv?

It turns out that this is a historical legacy of the time when
ostree had pack files.  And nothing actually cares about the values
of these variants; we should have an API that returns a proper set,
and not a hash.

But...since all of these things have exactly the same value, instead
of allocating lots of redundant copies on the heap, just have
them all hold a refcount on a shared value.

This cuts the heap usage from 20MB to 13MB on a test FCOS repository
build.
2022-06-07 20:35:37 -04:00
..
boot Add an `ostree-boot-complete.service` to propagate staging failures 2022-04-26 13:02:46 -04:00
libostree repo: Optimize memory use of `ostree_repo_list_objects()` 2022-06-07 20:35:37 -04:00
libotutil glib: bump glib requirement to 2.66 and port to GUri 2022-03-12 04:44:18 +01:00
ostree Rename ostree-cmdprivate to drop out of introspection 2022-06-02 17:13:17 -04:00
rofiles-fuse rofiles-fuse: Build using FUSE 3 if possible, falling back to FUSE 2 2022-01-04 09:41:38 +00:00
switchroot Rename ostree-cmdprivate to drop out of introspection 2022-06-02 17:13:17 -04:00