Skip to content

Dev/test cycle when updating a Go file is untenably slow #2533

@mdbooth

Description

@mdbooth

I made a change to operator/v1alpha1/types_crdchecker.go and executed:

PROTO_OPTIONAL=1 /usr/bin/time make update-codegen-crds verify-codegen-crds API_GROUP_VERSIONS=operator.openshift.io/v1alpha1

This is after applying a version of #2530 which ensures that invocations of codegen only target a single group/version.

The output was:

135.50user 301.99system 14:03.37elapsed 51%CPU (0avgtext+0avgdata 469820maxresident)k
12200inputs+195520outputs (22major+17349270minor)pagefaults 0swaps

so 14 minutes. That's not quite as bad as reprinting your punch cards and waiting for time on the mainframe, but it's still not conducive to iterating on a problem you're trying to understand. This is a beefy workstation-spec laptop.

Please can we either make this much faster (a minute or less), or clearly document a more streamlined method of rapidly iterating on a verify failure in a single api.go?

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