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

    lifecycle/rottenDenotes an issue or PR that has aged beyond stale and will be auto-closed.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions