SAB
SAB

Reputation: 175

connecting to cosmos db graph api from gremlin console: "exception=Keys must be scalars"

I'm trying to connect to cosmos db through the gremlin console 3.3.4, following this the remote_secure.yaml is as follows:

hosts: [*****.gremlin.cosmosdb.azure.com]
port: 443
username: /dbs/sample-database/colls/sample-collection
password: ******
connectionPool: {
  enableSsl: true}
{ className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0, config: { serializeResultToString: true }}:

but when I run :remote connect tinkerpop.server conf/remote-secure.yaml

I get the following error

==>Error during 'connect' - Can't construct a java object 
for tag:yaml.org,2002:org.apache.tinkerpop.gremlin.driver.Settings;
exception=Keys must be scalars but found: 
<org.yaml.snakeyaml.nodes.MappingNode (tag=tag:yaml.org,2002:map,
values={ key=<org.yaml.snakeyaml.nodes.ScalarNode (tag=tag:yaml.org,2002:str, value=className)>; 
value=<NodeTuple 
keyNode=<org.yaml.snakeyaml.nodes.ScalarNode (tag=tag:yaml.org,2002:str, 
value=className)>; valueNode=<org.yaml.snakeyaml.nodes.ScalarNode 
(tag=tag:yaml.org,2002:str, 
value=org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0)
>> }{ key=<org.yaml.snakeyaml.nodes.ScalarNode 
(tag=tag:yaml.org,2002:str, value=config)>; value=828088650 })>
in 'reader', line 27, column 1:
hosts: [*****.gremlin.cosm ...

Any ideas what I am doing wrong?

Upvotes: 0

Views: 568

Answers (1)

stephen mallette
stephen mallette

Reputation: 46216

Looks like your configuration is mangled. You are missing the serializer key on that last line:

hosts: [*****.gremlin.cosmosdb.azure.com]
port: 443
username: /dbs/sample-database/colls/sample-collection
password: ******
connectionPool: {
  enableSsl: true}
serializer: { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0, config: { serializeResultToString: true }}

Upvotes: 1

Related Questions