Repository navigation
Binding a FullEntity to a GqlQuery fails #1485
Copy link
Copy link
Closed
Labels
api: datastoreIssues related to the Datastore API.Issues related to the Datastore API.priority: p2Moderately-important priority. Fix may not be included in next release.Moderately-important priority. Fix may not be included in next release.type: questionRequest for information or clarification. Not an issue.Request for information or clarification. Not an issue.
Description
The GqlQuery.Builder allows positional and named bindings for FullEntity values. However, when I try to use those methods, the query execution fails with the below exception. Is this supposed to work? Same error occurs when using StructuredQuery.PropertyFilter. Am I misunderstanding the purpose of these methods?
Exception in thread "main" com.google.cloud.datastore.DatastoreException: An entity value is not allowed
at com.google.cloud.datastore.spi.DefaultDatastoreRpc.translate(DefaultDatastoreRpc.java:110)
at com.google.cloud.datastore.spi.DefaultDatastoreRpc.translate(DefaultDatastoreRpc.java:96)
at com.google.cloud.datastore.spi.DefaultDatastoreRpc.runQuery(DefaultDatastoreRpc.java:164)
at com.google.cloud.datastore.DatastoreImpl$1.call(DatastoreImpl.java:93)
at com.google.cloud.datastore.DatastoreImpl$1.call(DatastoreImpl.java:89)
at com.google.cloud.RetryHelper.doRetry(RetryHelper.java:179)
at com.google.cloud.RetryHelper.runWithRetries(RetryHelper.java:244)
at com.google.cloud.datastore.DatastoreImpl.runQuery(DatastoreImpl.java:88)
at com.google.cloud.datastore.QueryResultsImpl.sendRequest(QueryResultsImpl.java:73)
at com.google.cloud.datastore.QueryResultsImpl.<init>(QueryResultsImpl.java:57)
at com.google.cloud.datastore.DatastoreImpl.run(DatastoreImpl.java:82)
at com.google.cloud.datastore.DatastoreImpl.run(DatastoreImpl.java:73)
Caused by: com.google.datastore.v1.client.DatastoreException: An entity value is not allowed, code=INVALID_ARGUMENT
at com.google.datastore.v1.client.RemoteRpc.makeException(RemoteRpc.java:126)
at com.google.datastore.v1.client.RemoteRpc.makeException(RemoteRpc.java:169)
at com.google.datastore.v1.client.RemoteRpc.call(RemoteRpc.java:89)
at com.google.datastore.v1.client.Datastore.runQuery(Datastore.java:108)
at com.google.cloud.datastore.spi.DefaultDatastoreRpc.runQuery(DefaultDatastoreRpc.java:162)
Sample Code
Datastore datastore = DatastoreOptions.getDefaultInstance().getService();
FullEntity<IncompleteKey> cellNumber = FullEntity.newBuilder().set("countryCode", "1").set("areaCode", "111").set("subscriberNumber", "2223333").build();
GqlQuery query = Query.newGqlQueryBuilder(Query.ResultType.ENTITY, "SELECT * FROM Contact WHERE cellNumber=@1").addBinding(cellNumber).build();
System.out.println(query);
QueryResults<Entity> results = datastore.run(query);
while (results.hasNext()) {
System.out.println(results.next());
}
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
api: datastoreIssues related to the Datastore API.Issues related to the Datastore API.priority: p2Moderately-important priority. Fix may not be included in next release.Moderately-important priority. Fix may not be included in next release.type: questionRequest for information or clarification. Not an issue.Request for information or clarification. Not an issue.
Activity
shinfan commentedon Feb 23, 2017
@lesv Can you determine if this is release blocking?
lesv commentedon Feb 23, 2017
@tswast Care to look? I need to lookup a bunch of stuff that you might know off the top of your head.
tswast commentedon Feb 23, 2017
@lesv I'm not familiar with this specific feature of Datastore, either. I've only built queries with scalar types.
279 remaining items
fix: enable longpaths support for windows test (#1485) (#951)
chore(main): release 0.124.9 (#952)
deps: update dependency org.ow2.asm:asm to v9.7.1 (#1485)
fix: enable longpaths support for windows test (#1485) (#951)
chore(main): release 0.124.9 (#952)
deps: update dependency org.ow2.asm:asm to v9.7.1 (#1485)
fix: enable longpaths support for windows test (#1485) (#1191)
deps: update dependency org.graalvm.buildtools:native-maven-plugin to…
chore(main): release 1.123.3 (#1482)
fix: enable longpaths support for windows test (#1485) (#1191)
deps: update dependency org.graalvm.buildtools:native-maven-plugin to…
chore(main): release 1.123.3 (#1482)
build: enable longpaths support for windows test (googleapis#1485) (g…
chore(deps): update dependency protobuf to v3.20.2 (googleapis#1659) (g…
feat: Support Cloud Bigtable Changestream (googleapis#1569)