Bug 1778882
Summary: | 'oc adm release extract' uses low-sensitivity match-and-replace and silently ignores partial writes | ||
---|---|---|---|
Product: | OpenShift Container Platform | Reporter: | W. Trevor King <wking> |
Component: | oc | Assignee: | W. Trevor King <wking> |
Status: | CLOSED WONTFIX | QA Contact: | zhou ying <yinzhou> |
Severity: | medium | Docs Contact: | |
Priority: | unspecified | ||
Version: | 4.3.0 | CC: | aos-bugs, jokerman, maszulik, mfojtik, yinzhou |
Target Milestone: | --- | ||
Target Release: | 4.3.z | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | 1775875 | Environment: | |
Last Closed: | 2020-06-18 10:29:27 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | 1775875 | ||
Bug Blocks: |
Description
W. Trevor King
2019-12-02 17:48:18 UTC
Compared with old oc client and latest oc client, can't see the larger buffer size: [root@dhcp-140-138 ~]# ./oc-old version -oyaml clientVersion: buildDate: "2019-09-02T15:22:22Z" compiler: gc gitCommit: 9ff96feb1aea1217938e2f1aeaf0be091cc59728 gitTreeState: clean gitVersion: openshift-clients-4.2.0-201909020729 goVersion: go1.12.8 major: "" minor: "" platform: linux/amd64 strace -fo trace-old ./oc-old adm release extract --command=oc quay.io/openshift-release-dev/ocp-release-nightly@sha256:82863b275ab64ea830eb719bfd4d5d7166bdaa0c15890a57f4bd717f369d768b [root@dhcp-140-138 ~]# oc version -o yaml clientVersion: buildDate: "2019-12-06T11:24:15Z" compiler: gc gitCommit: 3fa38ed2761a75d4c648acfc8ac14df930219ed5 gitTreeState: clean gitVersion: v4.3.0 goVersion: go1.12.12 major: "" minor: "" platform: linux/amd64 [root@dhcp-140-138 ~]# strace -fo strace-old ./oc-old adm release extract --command=oc quay.io/openshift-release-dev/ocp-release-nightly@sha256:82863b275ab64ea830eb719bfd4d5d7166bdaa0c15890a57f4bd717f369d768b [root@dhcp-140-138 ~]# strace -fo strace-new oc adm release extract --command=oc quay.io/openshift-release-dev/ocp-release-nightly@sha256:82863b275ab64ea830eb719bfd4d5d7166bdaa0c15890a57f4bd717f369d768b [root@dhcp-140-138 ~]# grep write strace-old |tail -n 20 7234 write(9, "'kubectl cp' will fail.\\n\"\n\"\\n\"\n"..., 16384) = 16384 7234 write(9, "ame or stdin\"\nmsgstr \"Apply a co"..., 16384) = 16384 7234 write(9, "ntainer that the service should "..., 16384 <unfinished ...> 7234 <... write resumed> ) = 16384 7234 write(8, "\27\3\3\0%\0\0\0\0\0\0\4\377\36\30\35\275\301(\4\239\3410'\353e\353\246\377\324\225"..., 42 <unfinished ...> 7234 <... write resumed> ) = 42 7234 write(9, "kg/kubectl/cmd/create_secret.go:"..., 16384) = 16384 7234 write(9, "\n\"\\t\\t# Create a service for a r"..., 16384 <unfinished ...> 7234 <... write resumed> ) = 16384 7234 write(9, "tkubectl cluster-info\"\n\n# https:"..., 16384 <unfinished ...> 7234 <... write resumed> ) = 16384 7234 write(9, "ge=image:v2\\n\"\n\"\\n\"\n\"\\t\\t# Abort"..., 16384) = 16384 7234 write(9, "ocesses running on different mac"..., 16384 <unfinished ...> 7234 <... write resumed> ) = 16384 7234 write(9, "b/HEAD/docs/api-reference/v1/def"..., 16384) = 16384 7234 write(9, "cmd/create_quota.go:61\nmsgid \"\"\n"..., 16384 <unfinished ...> 7234 <... write resumed> ) = 16384 7234 write(9, "\"\"\n\"If non-empty, set the sessio"..., 16384) = 16384 7234 write(9, "quests depending on the server c"..., 7832 <unfinished ...> 7234 <... write resumed> ) = 7832 [root@dhcp-140-138 ~]# grep write strace-new |tail -n 20 7252 write(10, "nt 20 lines of output in pod ngi"..., 16384) = 16384 7252 write(10, "est version.\\n\"\n\"\\n\"\n\"\\t\\tThe de"..., 16384 <unfinished ...> 7252 <... write resumed> ) = 16384 7252 write(10, "ed and working on \"\n\"the server."..., 16384) = 16384 7252 write(10, "'kubectl cp' will fail.\\n\"\n\"\\n\"\n"..., 16384) = 16384 7252 write(10, "ame or stdin\"\nmsgstr \"Apply a co"..., 16384) = 16384 7252 write(10, "ntainer that the service should "..., 16384) = 16384 7252 write(10, "kg/kubectl/cmd/create_secret.go:"..., 16384) = 16384 7252 write(10, "\n\"\\t\\t# Create a service for a r"..., 16384 <unfinished ...> 7252 <... write resumed> ) = 16384 7252 write(10, "tkubectl cluster-info\"\n\n# https:"..., 16384) = 16384 7252 write(10, "ge=image:v2\\n\"\n\"\\n\"\n\"\\t\\t# Abort"..., 16384) = 16384 7252 write(10, "ocesses running on different mac"..., 16384 <unfinished ...> 7252 <... write resumed> ) = 16384 7252 write(10, "b/HEAD/docs/api-reference/v1/def"..., 16384) = 16384 7252 write(10, "cmd/create_quota.go:61\nmsgid \"\"\n"..., 16384 <unfinished ...> 7252 <... write resumed> ) = 16384 7252 write(10, "\"\"\n\"If non-empty, set the sessio"..., 16384) = 16384 7252 write(10, "quests depending on the server c"..., 7832 <unfinished ...> 7252 <... write resumed> ) = 7832 Given it's code freeze today, I'm moving this to .z I doubt we'll be backporting this fix to 4.3, given it's still being discussed if the solution is complete in master. |