High frequency error. 20k+/hour reported @ 1% canary. The error tracking doesn't make much sense to me : ( Can someone take a look.
Error: Cannot read property 'resolve' of undefined
at getRealChildNodes (https://raw.githubusercontent.com/ampproject/amphtml/1529458017017/src/base-element.js:769:2)
at https://raw.githubusercontent.com/ampproject/amphtml/1529458017017/src/element-stub.js:44:2
at https://raw.githubusercontent.com/ampproject/amphtml/1529458017017/src/service/resources-impl.js:990:28
at mutate (https://raw.githubusercontent.com/ampproject/amphtml/1529458017017/src/service/resources-impl.js:1020:14)
at https://raw.githubusercontent.com/ampproject/amphtml/1529458017017/src/service/resources-impl.js:555:30
at https://raw.githubusercontent.com/ampproject/amphtml/1529458017017/src/service/resources-impl.js:1200:20
at undefined (https://raw.githubusercontent.com/ampproject/amphtml/1529458017017/src/service/history-impl.js:591:22)
at onVisibilityChanged (https://raw.githubusercontent.com/ampproject/amphtml/1529458017017/src/service/resources-impl.js:251:4)
at https://raw.githubusercontent.com/ampproject/amphtml/1529458017017/src/service/history-impl.js:646:23
at https://raw.githubusercontent.com/ampproject/amphtml/1529458017017/src/service/url-replacements-impl.js:690:39
go/amp-error/CLCt-5Cr_MnxYw
go/amp-error/CNODn--Qs-rZzgE
Looks like another bogus deobfuscated stack.
zh@https://cdn.ampproject.org/rtv/001529458017017/v0.js:211:437
renderOutsideViewport@https://cdn.ampproject.org/rtv/001529458017017/v0.js:213:394
lk@https://cdn.ampproject.org/rtv/001529458017017/v0.js:356:393
Xj@https://cdn.ampproject.org/rtv/001529458017017/v0.js:357:71
ik@https://cdn.ampproject.org/rtv/001529458017017/v0.js:350:444
h@https://cdn.ampproject.org/rtv/001529458017017/v0.js:360:306
setState@https://cdn.ampproject.org/rtv/001529458017017/v0.js:323:495
doPass@https://cdn.ampproject.org/rtv/001529458017017/v0.js:344:45
https://cdn.ampproject.org/rtv/001529458017017/v0.js:326:1224
vc@https://cdn.ampproject.org/rtv/001529458017017/v0.js:134:573
fg@https://cdn.ampproject.org/rtv/001529458017017/v0.js:134:254
https://cdn.ampproject.org/rtv/001529458017017/v0.js:375:759
Looks like this.withViewportDeferreds_[viewportInt] is undefined.
It's the typecast: parseInt(keys[i], 10). Must be getting a float somewhere.
https://github.com/ampproject/amphtml/commit/a689b65162f27fc419fad66b192a5f2d70070aa0#diff-9379e12fba31cf69d032da3c00ba0c8eR700
/cc @keithwrightbos
@jridgewell I tried with parseInt(1.25, 10) on chrome , and that worked for me. returned 1
Yup, here the key is "1.25". After the parseInt, we try to do obj[1].resolve(), but the key was 1.25.
the returned value from parseInt(1.25, 10) is 1, I think it's obj[1] that doesn't exist.
That鈥檚 what I just said. 馃槣
Fixed by #16238.
I am still seeing this error after cherrypick. The error rate has decreased a lot though.
go/amp-error/CNODn--Qs-rZzgE
Getting roughly 50 per hour, dropping to P1. Have a fix in the works.