jiebi/CodeConvo huggingface dataset:
Change:
is defined here but never used. As this is an unexported method it doesn't affect anyone, just a small point of confusion for the reader. /sig api-machinery /kind bug
/triage accepted
The label cannot be applied. Only GitHub organization members can add the label. <detailsIn response to : /triage accepted </details
/triage accepted removing triage since the PR seem to be fixing the issue /assign Please close when merged! thank you

Discussion:
clock clock.Clock } <del> func (recorder *recorderImpl) generateEvent(object runtime.Object, annotations map[string]string, timestamp metav1.Time, eventtype, reason, message string) { </del> <ins> func (recorder *recorderImpl) generateEvent(object runtime.Object, annotations map[string]string, eventtype, reason, message string) { </ins> ref, err := ref.GetReference(recorder.scheme, object) if err != nil { klog.Errorf("Could not construct reference to: '%#v' due to: '%v'. Will not report event: '%v' '%v' '%v'", object, err, eventtype, reason, message)

} func (recorder *recorderImpl) Event(object runtime.Object, eventtype, reason, message string) { <del> recorder.generateEvent(object, nil, metav1.Now(), eventtype, reason, message) </del> <ins> recorder.generateEvent(object, nil, eventtype, reason, message) </ins> } func (recorder *recorderImpl) Eventf(object runtime.Object, eventtype, reason, messageFmt string, args ...interface{}) {

} func (recorder *recorderImpl) AnnotatedEventf(object runtime.Object, annotations map[string]string, eventtype, reason, messageFmt string, args ...interface{}) { <del> recorder.generateEvent(object, annotations, metav1.Now(), eventtype, reason, fmt.Sprintf(messageFmt, args...)) </del> <ins> recorder.generateEvent(object, annotations, eventtype, reason, fmt.Sprintf(messageFmt, args...)) </ins> } func (recorder *recorderImpl) makeEvent(ref *v1.ObjectReference, annotations map[string]string, eventtype, reason, message string) *v1.Event {
Change:
<!-- 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: Run integration test , for the case which needs PV or PVC, got the error which info us that PVC is not found, Furtherly, this will lead a inconsistent PV / PVC status, and fail the whole testcase. What you expected to happen: Run successfully. How to reproduce it (as minimally and precisely as possible): Anything else we need to know?: The error message is thrown here, 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 scheduling /sig testing
/assign
/triage accepted

Discussion:
pv.Status.Phase = v1.VolumeBound // bind pvc to "pv-$i" <del> // pvc.Spec.VolumeName = pv.Name </del> pvc.Status.Phase = v1.ClaimBound } else { pv.Status.Phase = v1.VolumeAvailable } <del> if err := CreatePersistentVolumeWithRetries(client, pv); err != nil { </del> <ins> // Create PVC first as it's referenced by the PV when the `bindVolume` is true. if err := CreatePersistentVolumeClaimWithRetries(client, namespace, pvc); err != nil { </ins> lock.Lock() defer lock.Unlock() <del> createError = fmt.Errorf("error creating PV: %s", err) </del> <ins> createError = fmt.Errorf("error creating PVC: %s", err) </ins> return } // We need to update statuses separately, as creating pv/pvc resets status to the default one. <del> if _, err := client.CoreV1().PersistentVolumes().UpdateStatus(context.TODO(), pv, metav1.UpdateOptions{}); err != nil { </del> <ins> if _, err := client.CoreV1().PersistentVolumeClaims(namespace).UpdateStatus(context.TODO(), pvc, metav1.UpdateOptions{}); err != nil { </ins> lock.Lock() defer lock.Unlock() <del> createError = fmt.Errorf("error updating PV status: %s", err) </del> <ins> createError = fmt.Errorf("error updating PVC status: %s", err) </ins> return } <del> if err := CreatePersistentVolumeClaimWithRetries(client, namespace, pvc); err != nil { </del> <ins> if err := CreatePersistentVolumeWithRetries(client, pv); err != nil { </ins> lock.Lock() defer lock.Unlock() <del> createError = fmt.Errorf("error creating PVC: %s", err) </del> <ins> createError = fmt.Errorf("error creating PV: %s", err) </ins> return } <del> if _, err := client.CoreV1().PersistentVolumeClaims(namespace).UpdateStatus(context.TODO(), pvc, metav1.UpdateOptions{}); err != nil { </del> <ins> // We need to update statuses separately, as creating pv/pvc resets status to the default one. if _, err := client.CoreV1().PersistentVolumes().UpdateStatus(context.TODO(), pv, metav1.UpdateOptions{}); err != nil { </ins> lock.Lock() defer lock.Unlock() <del> createError = fmt.Errorf("error updating PVC status: %s", err) </del> <ins> createError = fmt.Errorf("error updating PV status: %s", err) </ins> return }
Change:
What happened: OpenStack Train with StorageClass the volume attachment succeeds to the node but the kubelet fails to find the attached volume. When a pod attempts to use the volume it becomes stuck in state . Investigation in OpenStack shows the volume is attached to the node. Further, we confirmed the volume is attached to the node, appears as and with a symbolic links as and . Further investigation has determined that the underlying issue is that the volume detection truncates the volume ID at 20 characters while the OpenStack volume ID is 36 characters. Comparing to running on OpenStack 13, we find the symbolic link at is truncated at 20 characters and everything works, but in OpenStack Train this symbolic link is not truncated. We tracked this back through the configuration in : And then used to confirm on OpenStack 13 this value is truncated: But on OpenStack Train it is not:
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 storage /assign

Discussion:
func (os *OpenStack) GetDevicePathBySerialID(volumeID string) string { // Build a list of candidate device paths. // Certain Nova drivers will set the disk serial ID, including the Cinder volume id. <ins> // Newer OpenStacks may not truncate the volumeID to 20 chars. </ins> candidateDeviceNodes := []string{ // KVM fmt.Sprintf("virtio-%s", volumeID[:20]), <ins> fmt.Sprintf("virtio-%s", volumeID), </ins> // KVM virtio-scsi fmt.Sprintf("scsi-0QEMU_QEMU_HARDDISK_%s", volumeID[:20]), <ins> fmt.Sprintf("scsi-0QEMU_QEMU_HARDDISK_%s", volumeID), </ins> // ESXi fmt.Sprintf("wwn-0x%s", strings.Replace(volumeID, "-", "", -1)), }
Change:
What happened: After set --volume-stats-agg-period=0 in kubelet args, the kubelet logs still shows What you expected to happen: it should be disabled How to reproduce it (as minimally and precisely as possible): add --volume-stats-agg-period=0 to your kubulet config change du to a bin which will sleep more than 4s. Anything else we need to know?: None Environment: Kubernetes version (use ): 1.18 Cloud provider or hardware configuration: vspher OS (e.g: ): centos Kernel (e.g. ): Install tools: DCE daocloud platform Network plugin and version (if this is a network-related bug): parcel( calico and vlan) Others:
/sig node /assign
The second below is not as the comments: I set it to -1s, kubelet log showsVolume stats collection disabled. during startup. I set it to '0', kubelet log doesn't showsVolume stats collection disabled. during startup. (Not disabled) I set it to '1s', kubelet log doesn't showsVolume stats collection disabled. during startup. I don't set it, kubelet log doesn't showsVolume stats collection disabled. during startup.
/triage accepted
/area kubelet is waiting for review.

Discussion:
fs.DurationVar(&c.ImageMinimumGCAge.Duration, "minimum-image-ttl-duration", c.ImageMinimumGCAge.Duration, "Minimum age for an unused image before it is garbage collected.  Examples: '300ms', '10s' or '2h45m'.") fs.Int32Var(&c.ImageGCHighThresholdPercent, "image-gc-high-threshold", c.ImageGCHighThresholdPercent, "The percent of disk usage after which image garbage collection is always run. Values must be within the range [0, 100], To disable image garbage collection, set to 100. ") fs.Int32Var(&c.ImageGCLowThresholdPercent, "image-gc-low-threshold", c.ImageGCLowThresholdPercent, "The percent of disk usage before which image garbage collection is never run. Lowest disk usage to garbage collect to. Values must be within the range [0, 100] and should not be larger than that of --image-gc-high-threshold.") <del> fs.DurationVar(&c.VolumeStatsAggPeriod.Duration, "volume-stats-agg-period", c.VolumeStatsAggPeriod.Duration, "Specifies interval for kubelet to calculate and cache the volume disk usage for all pods and volumes.  To disable volume calculations, set to 0.") </del> <ins> fs.DurationVar(&c.VolumeStatsAggPeriod.Duration, "volume-stats-agg-period", c.VolumeStatsAggPeriod.Duration, "Specifies interval for kubelet to calculate and cache the volume disk usage for all pods and volumes.  To disable volume calculations, set to a negative number.") </ins> fs.Var(cliflag.NewMapStringBool(&c.FeatureGates), "feature-gates", "A set of key=value pairs that describe feature gates for alpha/experimental features. "+ "Options are:n"+strings.Join(utilfeature.DefaultFeatureGate.KnownFeatures(), "n")) fs.StringVar(&c.KubeletCgroups, "kubelet-cgroups", c.KubeletCgroups, "Optional absolute name of cgroups to create and run the Kubelet in.")
Change:
<!-- Please only use this template for submitting reports about continuously failing tests or jobs in Kubernetes CI --Which jobs are failing: Which test(s) are failing: Overall Since when has it been failing: Nov 20 between 8:41 PST and 12:43 PST (it's been "failing" before that as well, but now none of the tests are running at all) Testgrid link: Reason for failure: Looks like  failed (), so is not building the env properly Slack discussion: Anything else we need to know*: /sig cluster-lifecycle /area provider/gcp
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
fixed here:
/assign

Discussion:
Now we will turn up two replicas of that image.  They all serve on port 8080, mapped to internal port 80 $ cd kubernetes <del> $ cluster/cloudcfg.sh -p 8080:80 run $DOCKER_USER/data 2 dataController </del> <ins> $ cluster/kubecfg.sh -p 8080:80 run $DOCKER_USER/data 2 dataController </ins> ### Step Three: Turn up the UX for the demo In a different terminal: $ cd kubernetes <del> $ cluster/cloudcfg.sh -proxy -www examples/update-demo/local/ </del> <ins> $ cluster/kubecfg.sh -proxy -www examples/update-demo/local/ </ins> Now visit the the [demo website](http://localhost:8001/static/index.html).  You should see two light blue squares with pod IDs and ip addresses.

Now we will increase the number of replicas from two to four: $ cd kubernetes <del> $ cluster/cloudcfg.sh resize dataController 4 </del> <ins> $ cluster/kubecfg.sh resize dataController 4 </ins> If you go back to the [demo website](http://localhost:8001/static/index.html) you should eventually see four boxes, one for each pod.

We will now update the servers that are running out in your cluster. $ cd kubernetes <del> $ cluster/cloudcfg.sh -u=30s rollingupdate dataController </del> <ins> $ cluster/kubecfg.sh -u=30s rollingupdate dataController </ins> Watch the UX, it will update one pod every 30 seconds until all of the pods have the new color.
Change:
What is this issue addressing? Comment in require more useful logging message Requiered outcome: Improve log messages
/sig testing /triage accepted /assign
/cc

Discussion:
pod.Labels["test-pod-static"] == "true" && pod.Status.Phase == v1.PodRunning if !found { <del> framework.Logf("observed Pod %v in namespace %v in phase %v conditions %v", pod.ObjectMeta.Name, pod.ObjectMeta.Namespace, pod.Status.Phase, pod.Status.Conditions) </del> <ins> framework.Logf("observed Pod %v in namespace %v in phase %v with labels: %v & conditions %v", pod.ObjectMeta.Name, pod.ObjectMeta.Namespace, pod.Status.Phase, pod.Labels, pod.Status.Conditions) return false, nil </ins> } <ins> framework.Logf("Found Pod %v in namespace %v in phase %v with labels: %v & conditions %v", pod.ObjectMeta.Name, pod.ObjectMeta.Namespace, pod.Status.Phase, pod.Labels, pod.Status.Conditions) </ins> return found, nil } <ins> framework.Logf("Observed event: %+v", event.Object) </ins> return false, nil }) framework.ExpectNoError(err, "failed to see Pod %v in namespace %v running", testPod.ObjectMeta.Name, testNamespaceName)
Change:
second will cancel the first set, as a result, the is checking empty list which will always be true. this test should fail.
/sig testing
A set is immutable, and by definition cannot support two of the same key name. We should have to change the data structure for this to pass, no?
/assign After read , size check would be a way to solve this problem. I try to fix this in
/sig apimachinery /remove-sig testing sig testing owns the frameworks, infrastructure, etc. SIG api-machinery owns their unit tests / client-go
The label(s) cannot be applied, because the repository doesn't have them <detailsIn response to : /sig apimachinery /remove-sig testing 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 api-machinery
/triage accepted

Discussion:
expected["bert"] = sets.NewString("one", "two") expected["elmo"] = sets.NewString("tre") expected["oscar"] = sets.NewString("two") <del> expected["elmo"] = sets.NewString() // let's just make sure we don't get anything back in this case </del> <ins> expected["elmo1"] = sets.NewString() </ins> { for k, v := range expected { found := sets.String{}

for _, item := range indexResults { found.Insert(item.(*v1.Pod).Name) } <del> items := v.List() if !found.HasAll(items...) { t.Errorf("missing items, index %s, expected %v but found %v", k, items, found.List()) </del> <ins> if !found.Equal(v) { t.Errorf("missing items, index %s, expected %v but found %v", k, v.List(), found.List()) </ins> } } }
Change:
How to reproduce it (as minimally and precisely as possible): /var/lib/kubelet a symlink kubelet a block PVC + a pod that uses it. the pod. -The pod is forever. In kubelet logs: The reason is that shows: kubelet can't find there, because losetup shows real path . Environment: Kubernetes version (use ): 1.18 /sig storage /priority important-soon
/triage accepted

Discussion:
return "", errors.New(ErrDeviceNotFound) } <ins> realPath, err := filepath.EvalSymlinks(path) if err != nil { return "", fmt.Errorf("failed to evaluate path %s: %s", path, err) } </ins> // losetup -j {path} returns device in the format: // /dev/loop1: [0073]:148662 ({path}) // /dev/loop2: [0073]:148662 (/dev/sdX)

var matched string scanner := bufio.NewScanner(strings.NewReader(s)) for scanner.Scan() { <ins> // losetup output has symlinks expanded if strings.HasSuffix(scanner.Text(), "("+realPath+")") { matched = scanner.Text() break } // Just in case losetup changes, check for the original path too </ins> if strings.HasSuffix(scanner.Text(), "("+path+")") { matched = scanner.Text() break
Change:
At line 3775 in (), the last column is "AGE", all uppercase, while the other columns are sentence case. Is this intentional or an oversight?
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 cli
If this is a mistake I will open a PR to fix it.
/cc
/triage accepted
The label(s) cannot be applied, because the repository doesn't have them <detailsIn response to : /triage excepted 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
/triage accepted
The label cannot be applied. Only GitHub organization members can add the label. <detailsIn response to : /triage accepted 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
yes ,should be Age

Discussion:
func describeNodeResource(nodeNonTerminatedPodsList *corev1.PodList, node *corev1.Node, w PrefixWriter) { w.Write(LEVEL_0, "Non-terminated Pods:t(%d in total)n", len(nodeNonTerminatedPodsList.Items)) <del> w.Write(LEVEL_1, "NamespacetNamettCPU RequeststCPU LimitstMemory RequeststMemory LimitstAGEn") </del> <ins> w.Write(LEVEL_1, "NamespacetNamettCPU RequeststCPU LimitstMemory RequeststMemory LimitstAgen") </ins> w.Write(LEVEL_1, "---------t----tt------------t----------t---------------t-------------t---n") allocatable := node.Status.Capacity if len(node.Status.Allocatable) > 0 {
Change:
<!-- 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: What you expected to happen: no panicking How to reproduce it (as minimally and precisely as possible): use azure or OIDC auth plugin with a or without a Anything else we need to know?: a similar OIDC panic issue is registered here
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 auth

Discussion:
Persist(map[string]string) error } <ins> type noopPersister struct{} func (n *noopPersister) Persist(_ map[string]string) error { // no operation persister return nil } </ins> // All registered auth provider plugins. var pluginsLock sync.Mutex var plugins = make(map[string]Factory)

if !ok { return nil, fmt.Errorf("no Auth Provider found for name %q", apc.Name) } <ins> if persister == nil { persister = &noopPersister{} } </ins> return p(clusterAddress, apc.Config, persister) }

} <ins> func Test_WhenNilPersister_NoOpPersisterIsAssigned(t *testing.T) { if err := RegisterAuthProviderPlugin("anyPlugin", pluginPersistProvider); err != nil { t.Errorf("unexpected error: failed to register 'anyPlugin': %v", err) } cfg := &clientcmdapi.AuthProviderConfig{ Name:   "anyPlugin", Config: nil, } plugin, err := GetAuthProvider("127.0.0.1", cfg, nil) if err != nil { t.Errorf("unexpected error: failed to get 'anyPlugin': %v", err) } anyPlugin := plugin.(*pluginPersist) if _, ok := anyPlugin.persister.(*noopPersister); !ok { t.Errorf("expected to be No Operation persister") } } </ins> // emptyTransport provides an empty http.Response with an initialized header // to allow wrapping RoundTrippers to set header values. type emptyTransport struct{}
Change:
What would you like to be : For , the method of the object should accept a user supplied context which is then used by the client to update the status of the node before cordon/uncordoning the node. Why is this needed: Currently uses a local copy of the drain/cordon code from the codebase. Instead of maintaining a local copy, we would like to incorporate the functionality using upstream imports from . In the CAPI codebase, we pass a object to all the controller Reconcile routines and sub-routines. We would like to keep this same behavior even when we move to importing the drain code from I noticed that the code at does not use a passed context but instead uses a placeholder context for the patch/update calls. Instead, we can modify the method to accept a custom context passed over from the drain helper.
/sig cli
/triage accepted /priority backlog

Discussion:
// JSON, or if either patch or update calls fail; it will also return a second error // whenever creating a patch has failed func (c *CordonHelper) PatchOrReplace(clientset kubernetes.Interface, serverDryRun bool) (error, error) { <ins> return c.PatchOrReplaceWithContext(context.TODO(), clientset, serverDryRun) } // PatchOrReplaceWithContext provides the option to pass a custom context while updating // the node status func (c *CordonHelper) PatchOrReplaceWithContext(clientCtx context.Context, clientset kubernetes.Interface, serverDryRun bool) (error, error) { </ins> client := clientset.CoreV1().Nodes() oldData, err := json.Marshal(c.node)

if serverDryRun { patchOptions.DryRun = []string{metav1.DryRunAll} } <del> _, err = client.Patch(context.TODO(), c.node.Name, types.StrategicMergePatchType, patchBytes, patchOptions) </del> <ins> _, err = client.Patch(clientCtx, c.node.Name, types.StrategicMergePatchType, patchBytes, patchOptions) </ins> } else { updateOptions := metav1.UpdateOptions{} if serverDryRun { updateOptions.DryRun = []string{metav1.DryRunAll} } <del> _, err = client.Update(context.TODO(), c.node, updateOptions) </del> <ins> _, err = client.Update(clientCtx, c.node, updateOptions) </ins> } return err, patchErr }

return nil } <del> err, patchErr := c.PatchOrReplace(drainer.Client, false) </del> <ins> err, patchErr := c.PatchOrReplaceWithContext(drainer.Ctx, drainer.Client, false) </ins> if err != nil { if patchErr != nil { return fmt.Errorf("cordon error: %s; merge patch error: %s", err.Error(), patchErr.Error())