Just started getting this error out of the blue. I know there's nothing wrong with my queries because everything was working fine yesterday and nothing has changed since.
Error: Encountered a sub-selection on the query, but the store doesn't have an object reference. This should never happen during normal use unless you have custom code that is directly manipulating the store; please file an issue.
I did try to resolve this by purging node_modules
, it worked for a while but then this resurfaced.
UPDATE
I'm on these versions -
{
"apollo-cache-inmemory": "1.2.1",
"apollo-client": "2.3.5",
"apollo-link-context": "1.0.8",
"apollo-link-error": "1.0.9",
"apollo-link-http": "1.5.4"
}
UPDATE 2
In case you want to see the stack trace (click)
E:/CODENAME/web/node_modules/apollo-cache-inmemory/lib/readFromStore.js:143
readStoreResolver
E:/CODENAME/web/node_modules/apollo-cache-inmemory/lib/readFromStore.js:41
executeField
E:/CODENAME/web/node_modules/graphql-anywhere/lib/graphql.js:70
(anonymous function)
E:/CODENAME/web/node_modules/graphql-anywhere/lib/graphql.js:27
executeSelectionSet
E:/CODENAME/web/node_modules/graphql-anywhere/lib/graphql.js:22
graphql
E:/CODENAME/web/node_modules/graphql-anywhere/lib/graphql.js:17
diffQueryAgainstStore
E:/CODENAME/web/node_modules/apollo-cache-inmemory/lib/readFromStore.js:132
InMemoryCache../node_modules/apollo-cache-inmemory/lib/inMemoryCache.js.InMemoryCache.diff
E:/CODENAME/web/node_modules/apollo-cache-inmemory/lib/inMemoryCache.js:107
QueryManager../node_modules/apollo-client/core/QueryManager.js.QueryManager.fetchQuery
E:/CODENAME/web/node_modules/apollo-client/core/QueryManager.js:192
QueryManager../node_modules/apollo-client/core/QueryManager.js.QueryManager.startQuery
E:/CODENAME/web/node_modules/apollo-client/core/QueryManager.js:643
ObservableQuery../node_modules/apollo-client/core/ObservableQuery.js.ObservableQuery.setUpQuery
E:/CODENAME/web/node_modules/apollo-client/core/ObservableQuery.js:403
ObservableQuery../node_modules/apollo-client/core/ObservableQuery.js.ObservableQuery.onSubscribe
E:/CODENAME/web/node_modules/apollo-client/core/ObservableQuery.js:372
(anonymous function)
E:/CODENAME/web/node_modules/apollo-client/core/ObservableQuery.js:37
new Subscription
E:/CODENAME/web/node_modules/zen-observable/lib/Observable.js:183
ObservableQuery.subscribe
E:/CODENAME/web/node_modules/zen-observable/lib/Observable.js:262
ProxyComponent.Query._this.startQuerySubscription
E:/CODENAME/web/node_modules/react-apollo/react-apollo.browser.umd.js:290
ProxyComponent../node_modules/react-apollo/react-apollo.browser.umd.js.Query.componentDidMount
E:/CODENAME/web/node_modules/react-apollo/react-apollo.browser.umd.js:377
ProxyComponent.<anonymous>
E:/CODENAME/web/node_modules/react-hot-loader/dist/react-hot-loader.development.js:530
commitLifeCycles
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:9784
commitAllLifeCycles
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:11455
HTMLUnknownElement.callCallback
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:100
Object.invokeGuardedCallbackDev
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:138
invokeGuardedCallback
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:187
commitRoot
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:11594
completeRoot
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:12502
performWorkOnRoot
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:12452
performWork
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:12370
performSyncWork
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:12347
requestWork
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:12247
scheduleWorkImpl
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:12122
scheduleWork
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:12082
Object.enqueueSetState
E:/CODENAME/web/node_modules/react-dom/cjs/react-dom.development.js:6644
ProxyComponent../node_modules/react/cjs/react.development.js.Component.setState
E:/CODENAME/web/node_modules/react/cjs/react.development.js:238
(anonymous function)
E:/CODENAME/web/node_modules/react-router/es/Router.js:103
(anonymous function)
E:/CODENAME/web/node_modules/react-router/es/createTransitionManager.js:228
(anonymous function)
E:/CODENAME/web/node_modules/react-router/es/createTransitionManager.js:83
done
E:/CODENAME/web/node_modules/react-router/es/AsyncUtils.js:74
(anonymous function)
E:/CODENAME/web/node_modules/react-router/es/AsyncUtils.js:80
Same for me, these are my top-level deps:
โโโ [email protected]
โโโฌ [email protected]
โ โโโ [email protected] deduped
โโโ [email protected]
โโโฌ [email protected]
โ โโโ [email protected] deduped
โ โโโ [email protected] deduped
โ โโโฌ [email protected]
โ โโโ [email protected] deduped
โโโ [email protected]
โโโฌ [email protected]
โ โโโ [email protected] deduped
โโโฌ [email protected]
โ โโโ [email protected] deduped
โ โโโฌ [email protected]
โ โโโ [email protected] deduped
โโโ [email protected]
I've encountered this error as well, ~and took a closer look at where the error is thrown. It does seem like a util that is being used in assertIdValue
is missing~
edit: Seems to only be chrome debugger not finding the util ๐ค
I think I just resolved this by upgrading all apollo-*
deps. I'm not sure if this is the solution because god knows what other problems this is going to create.
@krijoh92 No I think that's correct. See my stack trace in op.
I've also updated all apollo-*
deps, and it seems to be working (other than a small hickup with the Query
component I needed to fix)
Just a heads-up: You only need to upgrade apollo-cache-inmemory
.
Updating apollo-cache-inmemory
to the latest (or anything newer than 1.2.10 I believe) causes the following:
Uncaught ReferenceError: module is not defined
at eval (tuple.mjs?f76c:1)
at Module../node_modules/immutable-tuple/dist/tuple.mjs (vendor.cdf7cdc9.js:10455)
at __webpack_require__ (main.cdf7cdc9.js:788)
at fn (main.cdf7cdc9.js:151)
at eval (index.js?4251:4)
at Object../node_modules/optimism/lib/index.js (vendor.cdf7cdc9.js:14194)
at __webpack_require__ (main.cdf7cdc9.js:788)
at fn (main.cdf7cdc9.js:151)
at eval (optimism.js?40d9:1)
at Module../node_modules/apollo-cache-inmemory/lib/optimism.js (vendor.cdf7cdc9.js:1619)
I thought there was a related issue for that over in https://github.com/benjamn/optimism/issues but I can't seem to locate it.
Was able to fix this error but updating to "apollo-cache-inmemory": "1.3.8"
@bryancuster I was able to fix a similar issue by aliasing the tuple.js file instead of .mjs in my webpack config:
resolve {
alias {
'immutable-tuple': 'immutable-tuple/dist/tuple.js'
}
}
Probably not the ideal solution...
This is no longer an issue with modern versions of apollo-client
. Thanks!
Most helpful comment
@bryancuster I was able to fix a similar issue by aliasing the tuple.js file instead of .mjs in my webpack config:
Probably not the ideal solution...