Skip to content

iceberg table properties are saved in table metadata's properties field #2064

Open
@kevinjqliu

Description

@kevinjqliu

Apache Iceberg version

None

Please describe the bug 🐞

Context #2013 (comment)

Because Table.properties returns the table metadata's properties field

@property
def properties(self) -> Dict[str, str]:
"""Properties of the table."""
return self.metadata.properties

adding/removing the table properties is modifying the table metadata's properties field.

This is not the recommended usage of the table metadata's properties field

properties	A string to string map of table properties. This is used to control settings that affect reading and writing and is not intended to be used for arbitrary metadata. For example, commit.retry.num-retries is used to control the number of commit retries.

Catalogs should handle figuring out where to properly save the table's properties. For example, Hive catalog should save the table's properties in the hive table parameters.

Willingness to contribute

  • I can contribute a fix for this bug independently
  • I would be willing to contribute a fix for this bug with guidance from the Iceberg community
  • I cannot contribute a fix for this bug at this time

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions