Is the omission of new->auth_token and new->cache_directory in the __wti_tiered_bucket_config error path intentional?

    • Type: Task
    • Resolution: Unresolved
    • Priority: Minor - P4
    • None
    • Affects Version/s: None
    • Component/s: Tiered Storage
    • None
    • Environment:
      GCC 13, Ubuntu 24.04, Valgrind
    • Storage Engines - Server Integration
    • 104.455
    • None
    • 1

      During analyzing of the tiered storage configuration path, I observed that in the function
      __wti_tiered_bucket_config (inside src/tiered/tiered_config.c), four heap strings are sequentially allocated.

      If ss_customize_file_system fails (e.g. invalid bucket path, bad credentials) or another error is hit before the struct is fully registered, the code jumps to the err: label and I noticed that new->auth_token and new->cache_directory are not freed in the err: cleanup block.

      My question is;
      Is there a specific design reason or lifecycle guarantee for auth_token and cache_directory that requires them to persist or be cleaned up through a different path on initialization failure? Or was this an omission in the error path, and should they be freed alongside new->bucket and new->bucket_prefix?

            Assignee:
            Unassigned
            Reporter:
            Tuna KARABACAK
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: