def METHOD_NAME(snap_only, pg_repo_local):
    pg_repo_local.run_sql("INSERT INTO fruits VALUES (3, 'mayonnaise')")
    pg_repo_local.run_sql("COMMENT ON COLUMN fruits.name IS 'Name of the fruit'")
    head = pg_repo_local.head
    head_1 = pg_repo_local.commit(snap_only=snap_only)
    pg_repo_local.run_sql("DELETE FROM fruits WHERE name = 'apple'")
    head_2 = pg_repo_local.commit(snap_only=snap_only)
    assert pg_repo_local.head == head_2
    # 4 images (last one is the empty 00000... image -- should try to avoid having that 0 image at all
    # in the future)
    assert head_2.get_log()[:3] == [head_2, head_1, head]
    # Test that the column comment is correctly reproduced on checkout.
    head.checkout()
    assert pg_repo_local.run_sql("SELECT * FROM fruits") == [(1, "apple"), (2, "orange")]
    assert (
        pg_repo_local.run_sql(
            "SELECT col_description('fruits'::regclass, 2)", return_shape=ResultShape.ONE_ONE
        )
        is None
    )
    head_1.checkout()
    assert pg_repo_local.run_sql("SELECT * FROM fruits") == [
        (1, "apple"),
        (2, "orange"),
        (3, "mayonnaise"),
    ]
    assert (
        pg_repo_local.run_sql(
            "SELECT col_description('fruits'::regclass, 2)", return_shape=ResultShape.ONE_ONE
        )
        == "Name of the fruit"
    )
    head_2.checkout()
    assert pg_repo_local.run_sql("SELECT * FROM fruits") == [(2, "orange"), (3, "mayonnaise")]
    assert (
        pg_repo_local.run_sql(
            "SELECT col_description('fruits'::regclass, 2)", return_shape=ResultShape.ONE_ONE
        )
        == "Name of the fruit"
    )