jiebi/CodeConvo huggingface dataset:
Change:
return nodeNames } <ins> func sortedNodeExternalIDs(nodes []*api.Node) []string { nodeExternalIDs := []string{} for _, node := range nodes { nodeExternalIDs = append(nodeExternalIDs, node.Spec.ExternalID) } sort.Strings(nodeExternalIDs) return nodeExternalIDs } </ins> func contains(node *api.Node, nodes []*api.Node) bool { for i := 0; i < len(nodes); i++ { if node.Name == nodes[i].Name {

Discussion:
I see the following in the kube-controller-manager log: - This is happening to me on HEAD and is the reason why pod status is always showing unknown even when they are scheduled and running.
This is with the vagrant cloud provider. It looks like the delta between the new and old minion is the Node.Spec.ExternalID is being set on the incoming minion but is not set in the originally created minion.
I am not sure how this is not affecting other cloud providers. It looks to me that NodeController populated the node ExternalID here: It looks like the Kubelet provided value is missing the ExternalID
Actually, I am now confused on what the NodeController may or may not be doing here that is causing the status to not get updated.
It looks like the client is passing an ExternalID on the incoming request, but the original value that is in etcd does not have an ExternalID set. Not sure what changed that would have caused this issue to appear.
I think this causes problems: The memory is re-used in a for-loop by Go so referring to a pointer value in a map here will cause problems I think.
Ok, the referenced line is the problem. Sending a PR.
Well, I go back on that now. A simple way to reproduce this is to delete all the minions in your cluster, and verify the node controller is able to add them back. For me, this is causing the node controller to add them back in an unknown status, and then all updates to the node fail. The update fails because the node controller is not setting an ExternalID on the original object.
I am looking into this now. cc/ too
Related issue opened while debugging this:
Debugged through here: I can via manual fmt see that the object has an ExternalID set prior to the call Create. When I look at etcd, I end up with this persisted: Note: it is missing an ExternalID somehow ;-)
Ok, I think I see the issue Nodes returned from here: Do not have an ExternalID Which can make Nodes created from here: End up without an External ID. Having two different nodeClient.Create() paths in this code is confusing. Also we are doing bad things in maps holding pointers to memory allocated in for-loop. We need to fix that ;-)
Yeah, this is bug we should fix. Thanks for looking into this.

If you already have a potential fix, please feel free to grab the issue from me.
I think I have a PR that should fix. Testing that now. Will cc you on the PR.
Thanks for fixing - it did end up affecting AWS as well (AWS isn't in a fully working state just yet, particularly with node discovery).
Change:
- --cache-size=1000 - --no-resolv - --server=127.0.0.1#10053 <ins> - --log-facility=- </ins> ports: - containerPort: 53 name: dns

Discussion:
<!-- Thanks for filing an issue! Before hitting the button, please answer these questions.--Is this a request for help? (If yes, you should use our troubleshooting guide and community support channels, see ): No What keywords did you search in Kubernetes issues before filing this one? (If you have found any duplicates, you should instead reply there.): dnsmasq log Is this a BUG REPORT or FEATURE REQUEST? (choose one): FEATURE REQUEST <!-- If this is a BUG REPORT, please: Fill in as much of the template below as you can. If you leave out information, we can't help you as well. If this is a FEATURE REQUEST, please: Describe in detail the feature/behavior/change you'd like to see. In both cases, be ready for followup questions, and please respond in a timely manner. If we can't reproduce a bug or think a feature already exists, we might close your issue. If we're wrong, PLEASE feel free to reopen it and explain why. --Kubernetes version (use ): 4 Environment: Cloud provider or hardware configuration: bare-metal OS (e.g. from /etc/os-release): CoreOS 1068.8.0 Kernel (e.g. ): Linux $REDACTED 4.6.3-coreos SMP Mon Jul 18 06:10:39 UTC 2016 x86_64 Intel(R) Xeon(R) CPU E5530 @ 2.40GHz GenuineIntel GNU/Linux Install tools: bootcfg and ignition Others: What happened: started kube-dns according to this example: did not show anything. What you expected to happen: should have shown log messages. There should have been at least a start-up message and it should possibly also log DNS requests, as does the container. How to reproduce it (as minimally and precisely as possible): Take the example and create a resource controller from it. Anything else do we need to know: For my DHCP/TFTP dnsmasq pod these command line switches have the desired effect:
Change:
--admission-control="${ADMISSION_CONTROL}"  --insecure-bind-address="${API_HOST}"  --insecure-port="${API_PORT}"  <ins> --advertise-address="${API_HOST}"  </ins> --etcd-servers="http://127.0.0.1:4001"  --service-cluster-ip-range="10.0.0.0/24"  --cors-allowed-origins="${API_CORS_ALLOWED_ORIGINS}" >"${APISERVER_LOG}" 2>&1 &

Discussion:
On my laptop running Fedora 23, this script consistently fails when networking is disabled. To reproduce: Actual results: Logs: Expected results: The apiserver launches and announces on localhost.
Resolved in my case by
Change:
return false, nil } <ins> // Endpoints are single family but EndpointSlices can have dual stack addresses, // so we verify the number of addresses that matches the same family on both. addressType := discoveryv1.AddressTypeIPv4 if isIPv6Endpoint(endpoint) { addressType = discoveryv1.AddressTypeIPv6 } </ins> esList, err := c.DiscoveryV1().EndpointSlices(namespace).List(ctx, metav1.ListOptions{LabelSelector: fmt.Sprintf("%s=%s", discoveryv1.LabelServiceName, serviceName)}) if err != nil { Logf("Unexpected error trying to get EndpointSlices for %s : %v", serviceName, err)

Discussion:
All the dual stack jobs ! ,%20ipvs,%20dual,%20master All dual stacks tests Since I modified this helper function to fix a flake ,%20ipvs,%20dual,%20master The function must consider only one IP family to verify the number of endpoints /assign /sig network /sig testing
This issue is currently awaiting triage. If a SIG or subproject determines this is a relevant issue, they will accept it by applying the label and provide further guidance. The label can be by org members by writing in a comment. <detailsInstructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
Change:
--project "${PROJECT}"  --network "${NETWORK}"  --source-ranges "10.0.0.0/8"  <del> --allow "tcp:1-65535" "udp:1-65535" "icmp" & </del> <ins> --allow "tcp:1-65535,udp:1-65535,icmp" & </ins> fi if ! gcloud compute firewall-rules describe --project "${PROJECT}" "${NETWORK}-default-ssh" &>/dev/null; then

Discussion:
This happens over and over. Scary messages. WARNING: Lists should be separated by commas, try "--allow=tcp,udp,icmp,esp,ah,sctp". If you intend to use udp, icmp, esp, ah, sctp for positional arguments, put them before the flag. WARNING: Lists should be separated by commas, try "--scopes=storage-ro,compute-rw". If you intend to use compute-rw for positional arguments, put them before the flag. WARNING: Lists should be separated by commas, try "--metadata-from-file=startup-script=/usr/local/google/home/thockin/src/kubernetes/hack/e2e-internal/../../cluster/../cluster/gce/../../cluster/../cluster/gce/configure-,kube-env=/tmp/kubernetes.MURmzX/master-kube-". If you intend to use kube-env=/tmp/kubernetes.MURmzX/master-kube- for positional arguments, put them before the flag. WARNING: Lists should be separated by commas, try "--disk=name=e2e-test-thockin-master-pd,device-name=master-pd,mode=rw,boot=no,auto-delete=no". If you intend to use device-name=master-pd, mode=rw, boot=no, auto-delete=no for positional arguments, put them before the flag.
That's a new one. gcloud started getting a little more anal here. Exciting. cc
They changed list argument syntax a while back, but the warnings are new. Time to update startup scripts I guess.
Change:
// indicator of which namespaces you have access to. rbacv1helpers.NewRule(Read...).Groups(legacyGroup).Resources("namespaces").RuleOrDie(), <ins> rbacv1helpers.NewRule(Read...).Groups(discoveryGroup).Resources("endpointslices").RuleOrDie(), </ins> rbacv1helpers.NewRule(Read...).Groups(appsGroup).Resources( "controllerrevisions", "statefulsets", "statefulsets/status", "statefulsets/scale",

Discussion:
Users are not able to view by default as part of the or roles like they are with Users with or roles should be able to view like they are with Have a user with permissions on a namespace. Try to run the command I asked about this in slack and was told that it was an oversight that it wasn't to the default roles. Kubernetes version (use ): 1.21 Cloud provider or hardware configuration: n/a OS (e.g: ): n/a Kernel (e.g. ): n/a Install tools: n/a Network plugin and version (if this is a network-related bug): n/a Others: n/a
This issue is currently awaiting triage. If a SIG or subproject determines this is a relevant issue, they will accept it by applying the label and provide further guidance. The label can be by org members by writing in a comment. <detailsInstructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
/sig security
/sig auth
Change:
var ( windowsBusyBoximage = imageutils.GetE2EImage(imageutils.Agnhost) <del> linuxBusyBoxImage   = "docker.io/library/nginx:1.15-alpine" </del> <ins> linuxBusyBoxImage   = imageutils.GetE2EImage(imageutils.Nginx) </ins> ) var _ = SIGDescribe("Hybrid cluster network", func() {

Discussion:
for the windows test Im seeing in some e2es im running on 1.22... We wouldnt have in our e2e tests hardcoded / Run with
/sig windows
/assign
/assign
/triage accepted
Change:
fs.BoolVar(&o.CleanupAndExit, "cleanup", o.CleanupAndExit, "If true cleanup iptables and ipvs rules and exit.") fs.BoolVar(&o.CleanupIPVS, "cleanup-ipvs", o.CleanupIPVS, "If true and --cleanup is specified, kube-proxy will also flush IPVS rules, in addition to normal cleanup.") <ins> fs.MarkDeprecated("cleanup-ipvs", "In a future release, running --cleanup will always flush IPVS rules") </ins> fs.Var(utilflag.IPVar{Val: &o.config.BindAddress}, "bind-address", "The IP address for the proxy server to serve on (set to `0.0.0.0` for all IPv4 interfaces and `::` for all IPv6 interfaces)") fs.Var(utilflag.IPVar{Val: &o.config.HealthzBindAddress}, "healthz-bind-address", "The IP address for the health check server to serve on (set to `0.0.0.0` for all IPv4 interfaces and `::` for all IPv6 interfaces)")

Discussion:
--cleanup-ipvs is a default-true flag. If set to false, will skip flushing IPVS rules. It has no impact to normal operation. "Partial cleanup" feels like a footgun, and I can't find a compelling reason why a user would want to run cleanup, but skip IPVS. I suspect this is a holdover from when autocleanup ran on-boot, before . To do this ticket: Deprecate the existing flag. You will find examples of deprecated flags in the 1.15 branch and behind.
asked to do this, assuming this is something we're actually okay to deprecate. /sig network /kind cleanup /priority backlog
CC would appretiate a sanity check on the admin implications. :)
I will take this. Correct me if I am wrong, we deprecate the flag but the IPVS flushing will happen by default in the background whenever the user runs the ?
the issue has already been "claimed", pending a sanity check. Deprecating the flag would entail always flushing IPVS on .
/triage unresolved Comment when the issue is assessed and confirmed. I am a bot run by vllry. ‍
Issues go stale after 90d of inactivity. Mark the issue as fresh with . Stale issues rot after an additional 30d of inactivity and eventually close. If this issue is safe to close now please do so with . Send feedback to sig-testing, kubernetes/test-infra and/or . /lifecycle stale
/remove-lifecycle stale
/good-first-issue
/assign is it ok to be deprecated now?
Um.. I have done it and just ask for a confirm to deprecate it. By the way, you shouldn't only delete the flag.
Great! No problems I'll follow this issue and check your Pull Request to learn more about this desprecation scenario :+1:
could you please rename the issue as
Change:
RegistryPullQPS:             5, HairpinMode:                 kubeletconfig.PromiscuousBridge, NodeLeaseDurationSeconds:    1, <del> CPUCFSQuotaPeriod:           metav1.Duration{Duration: 100 * time.Millisecond}, </del> <ins> CPUCFSQuotaPeriod:           metav1.Duration{Duration: 50 * time.Millisecond}, </ins> ReservedSystemCPUs:          "0-3", <ins> FeatureGates: map[string]bool{ "CustomCPUCFSQuotaPeriod": true, }, </ins> } const numErrsErrorCase2 = 1 if allErrors := ValidateKubeletConfiguration(errorCase2); len(allErrors.(utilerrors.Aggregate).Errors()) != numErrsErrorCase2 {

Discussion:
<!-- Please use this template while reporting a bug and provide as much info as possible. Not doing so may result in your bug not being addressed in a timely manner. Thanks! If the matter is security related, please disclose it privately via --See for more context. What happened: When you set and , you'd expect container cfs quota period to be . However, unless you also set in the feature flags, the quota value will be silently ignored. What you expected to happen: At least a warning be logged if the feature is not enabled but is set. How to reproduce it (as minimally and precisely as possible): Anything else we need to know?: Environment: Kubernetes version (use ): Cloud provider or hardware configuration: OS (e.g: ): Kernel (e.g. ): Install tools: Network plugin and version (if this is a network-related bug): Others:
/sig node /assign karan
The label(s) cannot be applied, because the repository doesn't have them <detailsIn response to : /sig node Instructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
Change:
import ( "fmt" "os" <ins> "runtime" </ins> "strconv" "strings" "testing"

Discussion:
Is this a BUG REPORT or FEATURE REQUEST?: /kind bug What happened: unit tests fail on osx. What you expected to happen: How to reproduce it (as minimally and precisely as possible): To see this unit test fail, you need to run go test on an osx machine. Environment: OS: macOS High Sierra v10.13.3
/sig storage /assign
Change:
q.cond.Signal() } <ins> // Len returns the current queue length, for informational purposes only. You // shouldn't e.g. gate a call to Add() or Get() on Len() being a particular // value, that can't be synchronized properly. func (q *Type) Len() int { q.cond.L.Lock() defer q.cond.L.Unlock() return len(q.queue) } </ins> // Get blocks until it can return an item to be processed. If shutdown = true, // the caller should end their goroutine. You must call Done with item when you // have finished processing it.

Discussion:
So we'll leak them and/or reuse them perhaps inappropriately. I imagine this could be pretty hard on kube-proxy after a while. Discovered while working on . was suggesting implementing a generic delete-when-parent-is-deleted mechanism, so I may not try to fix this 100% with my current work on .
Generic mechanism proposal was here:
I think it should be enough to check if endpoints match services once just after we initialize, right?
Yeah that should be enough to close this. Although the general mechanism would be nice, too.
Change:
nodeports.Name:           nodeports.New, nodepreferavoidpods.Name: nodepreferavoidpods.New, nodeaffinity.Name:        nodeaffinity.New, <ins> podtopologyspread.Name:   podtopologyspread.New, </ins> volumebinding.Name: func(_ *runtime.Unknown, _ framework.FrameworkHandle) (framework.Plugin, error) { return volumebinding.NewFromVolumeBinder(args.VolumeBinder), nil },

Discussion:
What would you like to be : Add a filter plugin that calls into EvenPodsSpread predicate, example Why is this needed: Part of /sig scheduling /help /priority important-soon
/assign
/remove-help
/retitle: [migration phase 1] EvenPodsSpread as filter plugin
/retitle [migration phase 1] EvenPodsSpread as filter plugin
/assign /unassign
May I take over this?
is going to take this over after the offline discussion, and he is familiar with EvenPodsSpread
IC, thanks a lot.
Change:
test/e2e/apimachinery/watch.go: "should be able to start watching from a specific resource version" test/e2e/apimachinery/watch.go: "should be able to restart watching from the last resource version observed by the previous watch" test/e2e/apimachinery/watch.go: "should observe an object deletion if it stops meeting the requirements of the selector" <ins> test/e2e/apimachinery/watch.go: "should receive events on concurrent watches in same order" </ins> test/e2e/apps/daemon_set.go: "should run and stop simple daemon" test/e2e/apps/daemon_set.go: "should run and stop complex daemon" test/e2e/apps/daemon_set.go: "should retry creating failed daemon pods"

Discussion:
We should add a watch test that: a watch a background thread, makes a bunch of random changes the RV from the first item received by the watch. each subsequent item X, open a new watch at the previous RV and verify that the first thing received matches X. Record X's RV for the next iteration. /sig api-machinery
cc
/assign cc
Issues go stale after 90d of inactivity. Mark the issue as fresh with . Stale issues rot after an additional 30d of inactivity and eventually close. If this issue is safe to close now please do so with . Send feedback to sig-testing, kubernetes/test-infra and/or . /lifecycle stale
/remove-lifecycle stale
/area conformance
Issues go stale after 90d of inactivity. Mark the issue as fresh with . Stale issues rot after an additional 30d of inactivity and eventually close. If this issue is safe to close now please do so with . Send feedback to sig-testing, kubernetes/test-infra and/or . /lifecycle stale
A test for this was via , we just need to promote it to be a conformance test
Change:
// An event happens. q.MoveAllToActiveOrBackoffQueue("deleted pod") <ins> q.lock.RLock() </ins> if _, ok, _ := q.podBackoffQ.Get(podInfo); !ok { t.Errorf("pod %v is not in the backoff queue", podID) } <ins> q.lock.RUnlock() </ins> // Check backoff duration. deadline := q.getBackoffTime(podInfo)

Discussion:
<!-- Please only use this template for submitting reports about flaky tests or jobs (pass or fail with no underlying change in code) in Kubernetes CI --Which jobs are flaking: pull-kubernetes-bazel-test Which test(s) are flaking: pkg/scheduler/internal/queue Testgrid link: Reason for failure: Anything else we need to know: /sig scheduling /assign
I just sent a pr for it according to the error message, but I'm not very sure if it will make things all right.
/assign
Change:
return status, true, nil } <del> func getPublicIPDomainNameLabel(service *v1.Service) string { </del> <ins> func getPublicIPDomainNameLabel(service *v1.Service) (string, bool) { </ins> if labelName, found := service.Annotations[ServiceAnnotationDNSLabelName]; found { <del> return labelName </del> <ins> return labelName, found </ins> } <del> return "" </del> <ins> return "", false </ins> } // EnsureLoadBalancer creates a new load balancer 'name', or updates the existing one. Returns the status of the balancer

Discussion:
<!-- Please use this template while reporting a bug and provide as much info as possible. Not doing so may result in your bug not being addressed in a timely manner. Thanks! If the matter is security related, please disclose it privately via --What happened: After issue is fixed. Cloud provider will automatically reconcile the Azure Public Ip DNS record same as the service annotation. As a result, user finds their DNS record will be deleted if the annotation is not set. Such a change is a block to users who have set the DNS record on their public IP without using this annotation when they upgrade the cluster. Besides, if the public ip is a user's own public ip, it is also not reasonable to delete the DNS record. What you expected to happen: We may need to change the reconcile logic. Maybe only delete the DNS record, when the annotation exists but empty value How to reproduce it (as minimally and precisely as possible): Manually add the DNS label to Azure Public IP resource via Portal Environment: Kubernetes version (use ): 1.15.7 Cloud provider or hardware configuration: Azure
The label(s) cannot be applied, because the repository doesn't have them <detailsIn response to : /sig Azure Instructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
/sig cloud-provider
/area provider/azure
The label(s) cannot be applied, because the repository doesn't have them <detailsIn response to : /sig Azure Instructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
/assign
The fix helm install helm-nginx-ingress stable/nginx-ingress  --namespace ingress-nginx-ns  --set controller.replicaCount=2  --set controller.nodeSelector."beta.kubernetes.io/os"=linux  --set controller.service.annotations."service.beta.kubernetes.io/azure-dns-label-name"=MY-AZURE-DNS  --set defaultBackend.nodeSelector."beta.kubernetes.io/os"=linux