You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by ly...@apache.org on 2022/05/11 20:36:04 UTC
[tinkerpop] branch 3.6-dev updated (0d3211514d -> ffab0f434c)
This is an automated email from the ASF dual-hosted git repository.
lyndonb pushed a change to branch 3.6-dev
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
from 0d3211514d Merge branch '3.5-dev' into 3.6-dev
add a106fd5e67 AN-1103 configurable websocket compression
add ad9fa199b9 AN-1102 allow to set buffers size
add fe7f6703ed Merge pull request #77 from lyndonbauto/valentyn/AN-1103-ws-conn-config
add aa55146157 Minor code clean-up (#78)
add 67db228f6a improve integration tests (#80)
add 26d6dee919 fixed comment for Iterate() (#81)
add 9723c7cce3 DataType should not be exported (#84)
add 76e51ca38d update doc for development topic (#83)
add 4f020998cc WIthOptions support and testing (#91)
add 1eb1db26e0 update connection timeout
add a0163dbe16 Connection pool improvements (#87)
add 0f9e368bdf Make one public (One) (#85)
add 117d301437 Clarify error message (#93)
add 16cd652ab0 update README (#88)
add bd44c56cd5 readme troubleshooting (#95)
add e7c5f4adcf Session spawnable only from driverRemoteConnections and Session mirrors Parent DRC settings (#90)
add 1b0bf4aa4c AN-992-Performance Testing (#86)
add 306c51bae9 Documentation update (#94)
add d166a1d15d added examples to intro section (#96)
add b2b536f747 Update performanceSuite.go (#97)
add 4be6c0f9f8 Removing outdated TODO from README (#98)
add 5f5fdc96cc update dependencies (#99)
add 985d9d6077 Java PerformanceTest code (#89)
add c8c1cdea5d Fix minor doc errors and missing namespace
add b3d378b7ad Add Codecov for Tinkerpop/Gremlin-Go (#101)
add ae0897c96a Update Performance Suite (#102)
add 16deadc451 Java Performance Testing
add 0e225c5e79 Addressed Milestone 6 code review comments
add 2eee3f4398 Merge pull request #1639 from lyndonbauto/gremlin-go-ms6
new ffab0f434c Merge branch '3.5-dev' into 3.6-dev
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../codecov.yml | 4 +-
.github/workflows/build-test.yml | 5 +
.../dev/developer/development-environment.asciidoc | 17 +
docs/src/dev/developer/release.asciidoc | 3 +
docs/src/reference/gremlin-applications.asciidoc | 16 +-
docs/src/reference/gremlin-variants.asciidoc | 299 ++++++++++++-
docs/src/reference/intro.asciidoc | 22 +-
docs/static/images/gremlin-go.png | Bin 0 -> 35389 bytes
.../tinkerpop/gremlin/util/PerformanceTest.java | 252 +++++++++++
gremlin-go/Dockerfile | 21 +-
gremlin-go/README.md | 309 ++++++--------
gremlin-go/docker-compose.yml | 4 +-
.../docker}/generate-all.groovy | 15 +-
.../docker/gremlin-server-integration-secure.yaml | 1 +
gremlin-go/docker/gremlin-server-integration.yaml | 1 +
gremlin-go/driver/client.go | 62 ++-
gremlin-go/driver/client_test.go | 2 +-
gremlin-go/driver/connection.go | 5 +-
gremlin-go/driver/connectionPool.go | 164 ++++---
gremlin-go/driver/connectionPool_test.go | 28 --
gremlin-go/driver/connection_test.go | 153 ++++---
gremlin-go/driver/driverRemoteConnection.go | 128 +++---
gremlin-go/driver/error_codes.go | 5 +
gremlin-go/driver/gorillaTransporter.go | 14 +-
gremlin-go/driver/graphBinary.go | 292 ++++++-------
gremlin-go/driver/graphBinary_test.go | 8 +-
gremlin-go/driver/graphTraversalSource.go | 2 +-
gremlin-go/driver/logger.go | 7 +-
gremlin-go/driver/performance/performanceSuite.go | 470 +++++++++++++++++++++
gremlin-go/driver/protocol.go | 24 +-
gremlin-go/driver/resources/error-messages/en.json | 5 +-
.../driver/resources/logger-messages/en.json | 11 +-
gremlin-go/driver/resultSet.go | 7 +-
gremlin-go/driver/resultSet_test.go | 10 +-
gremlin-go/driver/serializer.go | 7 +-
gremlin-go/driver/strategies.go | 8 +-
gremlin-go/driver/traversal.go | 37 +-
gremlin-go/driver/traversal_test.go | 152 +++++++
.../transporterFactory.go => example/example.go} | 43 +-
gremlin-go/example/go.mod | 29 ++
gremlin-go/{ => example}/go.sum | 20 +-
gremlin-go/go.mod | 4 +-
gremlin-go/go.sum | 13 +-
43 files changed, 1991 insertions(+), 688 deletions(-)
copy gremlin-server/src/test/resources/org/apache/tinkerpop/gremlin/server/custom-gremlin-server.yaml => .github/codecov.yml (96%)
create mode 100644 docs/static/images/gremlin-go.png
create mode 100644 gremlin-driver/src/test/java/org/apache/tinkerpop/gremlin/util/PerformanceTest.java
copy {gremlin-server/src/test/scripts => gremlin-go/docker}/generate-all.groovy (88%)
create mode 100644 gremlin-go/driver/performance/performanceSuite.go
copy gremlin-go/{driver/transporterFactory.go => example/example.go} (52%)
create mode 100644 gremlin-go/example/go.mod
copy gremlin-go/{ => example}/go.sum (94%)
[tinkerpop] 01/01: Merge branch '3.5-dev' into 3.6-dev
Posted by ly...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
lyndonb pushed a commit to branch 3.6-dev
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit ffab0f434c515f4f427872a1bfac2f279a000e78
Merge: 0d3211514d 2eee3f4398
Author: Lyndon Bauto <ly...@bitquilltech.com>
AuthorDate: Wed May 11 13:34:22 2022 -0700
Merge branch '3.5-dev' into 3.6-dev
.github/codecov.yml | 19 +
.github/workflows/build-test.yml | 5 +
.../dev/developer/development-environment.asciidoc | 17 +
docs/src/dev/developer/release.asciidoc | 3 +
docs/src/reference/gremlin-applications.asciidoc | 16 +-
docs/src/reference/gremlin-variants.asciidoc | 299 ++++++++++++-
docs/src/reference/intro.asciidoc | 22 +-
docs/static/images/gremlin-go.png | Bin 0 -> 35389 bytes
.../tinkerpop/gremlin/util/PerformanceTest.java | 252 +++++++++++
gremlin-go/Dockerfile | 21 +-
gremlin-go/README.md | 309 ++++++--------
gremlin-go/docker-compose.yml | 4 +-
gremlin-go/docker/generate-all.groovy | 79 ++++
.../docker/gremlin-server-integration-secure.yaml | 1 +
gremlin-go/docker/gremlin-server-integration.yaml | 1 +
gremlin-go/driver/client.go | 62 ++-
gremlin-go/driver/client_test.go | 2 +-
gremlin-go/driver/connection.go | 5 +-
gremlin-go/driver/connectionPool.go | 164 ++++---
gremlin-go/driver/connectionPool_test.go | 28 --
gremlin-go/driver/connection_test.go | 153 ++++---
gremlin-go/driver/driverRemoteConnection.go | 128 +++---
gremlin-go/driver/error_codes.go | 5 +
gremlin-go/driver/gorillaTransporter.go | 14 +-
gremlin-go/driver/graphBinary.go | 292 ++++++-------
gremlin-go/driver/graphBinary_test.go | 8 +-
gremlin-go/driver/graphTraversalSource.go | 2 +-
gremlin-go/driver/logger.go | 7 +-
gremlin-go/driver/performance/performanceSuite.go | 470 +++++++++++++++++++++
gremlin-go/driver/protocol.go | 24 +-
gremlin-go/driver/resources/error-messages/en.json | 5 +-
.../driver/resources/logger-messages/en.json | 11 +-
gremlin-go/driver/resultSet.go | 7 +-
gremlin-go/driver/resultSet_test.go | 10 +-
gremlin-go/driver/serializer.go | 7 +-
gremlin-go/driver/strategies.go | 8 +-
gremlin-go/driver/traversal.go | 37 +-
gremlin-go/driver/traversal_test.go | 152 +++++++
gremlin-go/example/example.go | 52 +++
gremlin-go/example/go.mod | 29 ++
gremlin-go/{ => example}/go.sum | 20 +-
gremlin-go/go.mod | 4 +-
gremlin-go/go.sum | 13 +-
43 files changed, 2107 insertions(+), 660 deletions(-)
diff --cc .github/workflows/build-test.yml
index 5d85cec234,5befe4519f..78abde8340
--- a/.github/workflows/build-test.yml
+++ b/.github/workflows/build-test.yml
@@@ -202,31 -202,36 +202,36 @@@ jobs
run: |
mvn clean install -pl -:gremlin-javascript,-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests -q -DskipTests -Dci
mvn verify -pl :neo4j-gremlin -DincludeNeo4j
- go:
- name: go
- timeout-minutes: 20
- needs: smoke
- runs-on: ubuntu-latest
- steps:
- - name: Checkout
- uses: actions/checkout@v3
-
- - name: Setup Go
- uses: actions/setup-go@v3
- with:
- go-version: '1.17'
-
- - name: Generate Gremlin Server Base Image
- working-directory: .
- run: |
- mvn clean install -pl :gremlin-server -DskipTests -DskipIntegrationTests=true -am && mvn install -Pdocker-images -pl :gremlin-server
-
- - name: Execute Go tests
- working-directory: ./gremlin-go
- run: |
- docker-compose up --exit-code-from gremlin-go-integration-tests
- docker-compose down
-
- - name: Upload to Codecov
- uses: codecov/codecov-action@v2
- with:
- working-directory: ./gremlin-go
-
- - name: Go-Vet
- working-directory: ./gremlin-go
- run: go vet ./...
+ #go:
+ # name: go
+ # timeout-minutes: 20
+ # needs: smoke
+ # runs-on: ubuntu-latest
+ # steps:
+ # - name: Checkout
+ # uses: actions/checkout@v3
+ #
+ # - name: Setup Go
+ # uses: actions/setup-go@v3
+ # with:
+ # go-version: '1.17'
+ #
+ # - name: Generate Gremlin Server Base Image
+ # working-directory: .
+ # run: |
+ # mvn clean install -pl :gremlin-server -DskipTests -DskipIntegrationTests=true -am && mvn install -Pdocker-images -pl :gremlin-server
+ #
+ # - name: Execute Go tests
+ # working-directory: ./gremlin-go
+ # run: |
+ # docker-compose up --exit-code-from gremlin-go-integration-tests
+ # docker-compose down
+ #
++ # - name: Upload to Codecov
++ # uses: codecov/codecov-action@v2
++ # with:
++ # working-directory: ./gremlin-go
++ #
+ # - name: Go-Vet
+ # working-directory: ./gremlin-go
+ # run: go vet ./...
diff --cc docs/src/dev/developer/development-environment.asciidoc
index 5eabaf2286,b2312b43ba..b18dbec756
--- a/docs/src/dev/developer/development-environment.asciidoc
+++ b/docs/src/dev/developer/development-environment.asciidoc
@@@ -293,10 -246,25 +293,27 @@@ easily serve the generated website loca
TIP: For those who do not have a full Maven environment, please see <<docker-integration,this section>> for how Docker
can be used to help run tests.
+TIP: Consider installing link:https://github.com/nvm-sh/nvm[nvm-sh] as a convenient way to manage node versions.
+
See the <<release-environment,Release Environment>> section for more information on release manager configurations.
+ [[go-environment]]
+ === Go Environment
+
+ The build optionally requires link:https://go.dev/dl/[Go] (>=1.17) to work with the `gremlin-go` module. If Go is not installed, TinkerPop will still build with Maven, but Go projects will be skipped.
+
+ `gremlin-go` can be built the command line with:
+
+ [source,text]
+ go build
+
+ Docker allows you to test the driver without installing any dependencies. The following command can be used to run docker:
+
+ [source,text]
+ docker-compose up --exit-code-from gremlin-go-integration-tests
+
+ See the <<release-environment,Release Environment>> section for more information on release manager configurations.
+
[[docker-environment]]
=== Docker Environment
diff --cc docs/src/dev/developer/release.asciidoc
index b01643350e,7c46c33093..9d49a6d9a7
--- a/docs/src/dev/developer/release.asciidoc
+++ b/docs/src/dev/developer/release.asciidoc
@@@ -241,8 -240,10 +241,10 @@@ for generating javadoc
.. `mvn clean install -DskipTests -Dnuget`
.. `mvn deploy -pl gremlin-python -DskipTests -Dpypi`
.. `mvn deploy -pl :gremlin-dotnet-source -DskipTests -Dnuget`
-.. `mvn deploy -pl gremlin-javascript -DskipTests -Dnpm`
-.. `mvn deploy -pl gremlint -DskipTests -Dnpm`
-.. `git tag gremlin-go/v3.5.4`
+.. `mvn deploy -pl gremlin-javascript -DskipTests -Dnpm` - prefer direct deploy with `npm publish --otp <otp>` from `gremlin-javscript/src/main/javascript/gremlin-javascript/`
+.. `mvn deploy -pl gremlint -DskipTests -Dnpm` - prefer direct deploy with `npm publish --otp <otp>` from `gremlint/`
++.. `git tag gremlin-go/v3.6.1`
+ .. `git push --tags`
. Review the GLV releases
.. link:https://pypi.org/project/gremlinpython/[gremlin-python - PyPi]
.. link:https://www.nuget.org/packages/Gremlin.Net/[Gremlin.Net - nuget]
diff --cc gremlin-go/README.md
index 427c8f0f11,5694cd09fd..9c5be34d0c
--- a/gremlin-go/README.md
+++ b/gremlin-go/README.md
@@@ -117,8 -70,11 +70,11 @@@ require
```
As well as a populated `go.sum` file.
- This following example should run, provided that it is configured to point to a compatible `gremlin-server`. In this example, a simple local server is running on port 8182, and this will print`[2]` as an output. If no server is available, this code can still be executed to print an error as output.
+ *if there are no usages for gremlingo found, it will remove the require from go.mod and not import dependencies.*
+
+ ## Simple usage
-Here is a simple example of using Gremlin-Go as an import in a sample project's `main.go` file.
++Here is a simple example of using Gremlin-Go as an import in a sample project's `main.go` file.
```go
package main
@@@ -158,6 -154,42 +154,42 @@@ Note: The exact import name as well as
See [Gremlin-Go Design Overview](design.MD)
+ ## Building Directly
+
+ To build the driver you must install `go`. The following command can be used to build the driver:
+ `go build <path to source code>`
+
+ ## Code Styling and Linting
+ Before generating a pull request, you should manually run the following to ensure correct code styling and fix any issues indicated by the linters.
+
+ ## Formatting files with Gofmt
-To ensure clean and readable code [Gofmt][gofmt] is used.
++To ensure clean and readable code [Gofmt][gofmt] is used.
+
+ Navigate to file path in a terminal window and run:
+
-`go fmt`
++`go fmt`
+
+ Gofmt will recursively check for and format `.go` files.
+
+ Note: If your IDE of choice is [GoLand][goland], code can be automatically formatted with Gofmt on file save. Instructions on how to enable this feature can be found [here][fmtsave].
+
+ ## Using the Linter and staticcheck
+ Run [go vet][gvet] and [staticcheck][scheck] and correct any errors.
+
+ [go vet][gvet] is installed when you install go, and can be run with:
+
- `go vet <path to source code>`
++`go vet <path to source code>`
+
+ Please review the [staticcheck documentation][scheck docs] for more details on installing [staticcheck][scheck]. It can be run with:
+
+ `staticcheck <path to source code>`
+
+ ## Testing with Docker
+
+ Docker allows you to test the driver without installing any dependencies. The following command can be used to run docker:
+
+ `docker-compose up --exit-code-from integration-tests`
+
# Go Gremlin Language Variant
[Apache TinkerPop™][tk] is a graph computing framework for both graph databases (OLTP) and graph analytic systems
@@@ -166,7 -198,7 +198,7 @@@ data-flow language that enables users t
property graph.
Gremlin-Go implements Gremlin within the Go language and can be used on any Go runtime greater than v1.17. One
--important difference between Go and Java is that the functions are capitalized, as is required to export functions is Go.
++important difference between Go and Java is that the functions are capitalized, as is required to export functions is Go.
Gremlin-Go is designed to connect to a "server" that is hosting a TinkerPop-enabled graph system. That "server"
could be [Gremlin Server][gs] or a [remote Gremlin provider][rgp] that exposes protocols by which Gremlin-Go
@@@ -299,7 -282,7 +282,7 @@@ if err != nil
}
```
### Find Vertices
--Getting the property value associated with the added vertex. We currently only support `ToList()` for submitting the remote traversal. Support for `Next()` will be implemented in the subsequent milestones.
++Getting the property value associated with the added vertex. We currently only support `ToList()` for submitting the remote traversal. Support for `Next()` will be implemented in the subsequent milestones.
```go
result, err := g.V().HasLabel("gremlin").Values("language").ToList()
// Handle error
@@@ -314,16 -297,12 +297,12 @@@ for _, r := range result
```
### Update Vertex
--Updating vertex by adding another property to it.
++Updating vertex by adding another property to it.
```go
- _, promise, err :=g.AddV("gremlin").Property("language", "go").Iterate()
- // Handle error
- if err != nil {
- fmt.Println(err)
- return
- }
+ promise := g.AddV("gremlin").Property("language", "go").Iterate()
// Wait for all steps to finish execution and check for error.
- if <-promise != nil {
+ err := <-promise
+ if err != nil {
fmt.Println(err)
return
}
diff --cc gremlin-go/driver/graphBinary.go
index d801e9ced9,f70630b7a3..a43b8c0557
--- a/gremlin-go/driver/graphBinary.go
+++ b/gremlin-go/driver/graphBinary.go
@@@ -32,57 -32,56 +32,57 @@@ import
// Version 1.0
- // DataType graphBinary types.
- type DataType uint8
+ // dataType graphBinary types.
+ type dataType uint8
- // DataType defined as constants.
+ // dataType defined as constants.
const (
- IntType DataType = 0x01
- LongType DataType = 0x02
- StringType DataType = 0x03
- DateType DataType = 0x04
- TimestampType DataType = 0x05
- DoubleType DataType = 0x07
- FloatType DataType = 0x08
- ListType DataType = 0x09
- MapType DataType = 0x0a
- SetType DataType = 0x0b
- UUIDType DataType = 0x0c
- EdgeType DataType = 0x0d
- PathType DataType = 0x0e
- PropertyType DataType = 0x0f
- VertexType DataType = 0x11
- VertexPropertyType DataType = 0x12
- BarrierType DataType = 0x13
- BindingType DataType = 0x14
- CardinalityType DataType = 0x16
- BytecodeType DataType = 0x15
- ColumnType DataType = 0x17
- DirectionType DataType = 0x18
- OperatorType DataType = 0x19
- OrderType DataType = 0x1a
- PickType DataType = 0x1b
- PopType DataType = 0x1c
- LambdaType DataType = 0x1d
- PType DataType = 0x1e
- ScopeType DataType = 0x1f
- TType DataType = 0x20
- TraverserType DataType = 0x21
- BigIntegerType DataType = 0x23
- ByteType DataType = 0x24
- ShortType DataType = 0x26
- BooleanType DataType = 0x27
- TextPType DataType = 0x28
- TraversalStrategyType DataType = 0x29
- BulkSetType DataType = 0x2a
- MergeType DataType = 0x2e
- DurationType DataType = 0x81
- NullType DataType = 0xFE
+ intType dataType = 0x01
+ longType dataType = 0x02
+ stringType dataType = 0x03
+ dateType dataType = 0x04
+ timestampType dataType = 0x05
+ doubleType dataType = 0x07
+ floatType dataType = 0x08
+ listType dataType = 0x09
+ mapType dataType = 0x0a
+ setType dataType = 0x0b
+ uuidType dataType = 0x0c
+ edgeType dataType = 0x0d
+ pathType dataType = 0x0e
+ propertyType dataType = 0x0f
+ vertexType dataType = 0x11
+ vertexPropertyType dataType = 0x12
+ barrierType dataType = 0x13
+ bindingType dataType = 0x14
+ cardinalityType dataType = 0x16
+ bytecodeType dataType = 0x15
+ columnType dataType = 0x17
+ directionType dataType = 0x18
+ operatorType dataType = 0x19
+ orderType dataType = 0x1a
+ pickType dataType = 0x1b
+ popType dataType = 0x1c
+ lambdaType dataType = 0x1d
+ pType dataType = 0x1e
+ scopeType dataType = 0x1f
+ tType dataType = 0x20
+ traverserType dataType = 0x21
+ bigIntegerType dataType = 0x23
+ byteType dataType = 0x24
+ shortType dataType = 0x26
+ booleanType dataType = 0x27
+ textPType dataType = 0x28
+ traversalStrategyType dataType = 0x29
+ bulkSetType dataType = 0x2a
++ mergeType dataType = 0x2e
+ durationType dataType = 0x81
+ nullType dataType = 0xFE
)
- var nullBytes = []byte{NullType.getCodeByte(), 0x01}
+ var nullBytes = []byte{nullType.getCodeByte(), 0x01}
- func (dataType DataType) getCodeByte() byte {
+ func (dataType dataType) getCodeByte() byte {
return byte(dataType)
}
@@@ -984,53 -983,51 +984,53 @@@ func (serializer *graphBinaryTypeSerial
return buffer.Bytes(), err
}, logHandler: serializer.logHandler}, nil
case *Vertex:
- return &graphBinaryTypeSerializer{dataType: VertexType, writer: vertexWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: vertexType, writer: vertexWriter, logHandler: serializer.logHandler}, nil
case *Edge:
- return &graphBinaryTypeSerializer{dataType: EdgeType, writer: edgeWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: edgeType, writer: edgeWriter, logHandler: serializer.logHandler}, nil
case *Property:
- return &graphBinaryTypeSerializer{dataType: PropertyType, writer: propertyWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: propertyType, writer: propertyWriter, logHandler: serializer.logHandler}, nil
case *VertexProperty:
- return &graphBinaryTypeSerializer{dataType: VertexPropertyType, writer: vertexPropertyWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: vertexPropertyType, writer: vertexPropertyWriter, logHandler: serializer.logHandler}, nil
case *Lambda:
- return &graphBinaryTypeSerializer{dataType: LambdaType, writer: lambdaWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: lambdaType, writer: lambdaWriter, logHandler: serializer.logHandler}, nil
case *traversalStrategy:
- return &graphBinaryTypeSerializer{dataType: TraversalStrategyType, writer: traversalStrategyWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: traversalStrategyType, writer: traversalStrategyWriter, logHandler: serializer.logHandler}, nil
case *Path:
- return &graphBinaryTypeSerializer{dataType: PathType, writer: pathWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: pathType, writer: pathWriter, logHandler: serializer.logHandler}, nil
case Set:
- return &graphBinaryTypeSerializer{dataType: SetType, writer: setWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: setType, writer: setWriter, logHandler: serializer.logHandler}, nil
case time.Time:
- return &graphBinaryTypeSerializer{dataType: DateType, writer: timeWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: dateType, writer: timeWriter, logHandler: serializer.logHandler}, nil
case time.Duration:
- return &graphBinaryTypeSerializer{dataType: DurationType, writer: durationWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: durationType, writer: durationWriter, logHandler: serializer.logHandler}, nil
case Cardinality:
- return &graphBinaryTypeSerializer{dataType: CardinalityType, writer: enumWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: cardinalityType, writer: enumWriter, logHandler: serializer.logHandler}, nil
case Column:
- return &graphBinaryTypeSerializer{dataType: ColumnType, writer: enumWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: columnType, writer: enumWriter, logHandler: serializer.logHandler}, nil
case Direction:
- return &graphBinaryTypeSerializer{dataType: DirectionType, writer: enumWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: directionType, writer: enumWriter, logHandler: serializer.logHandler}, nil
case Operator:
- return &graphBinaryTypeSerializer{dataType: OperatorType, writer: enumWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: operatorType, writer: enumWriter, logHandler: serializer.logHandler}, nil
case Order:
- return &graphBinaryTypeSerializer{dataType: OrderType, writer: enumWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: orderType, writer: enumWriter, logHandler: serializer.logHandler}, nil
case Pick:
- return &graphBinaryTypeSerializer{dataType: PickType, writer: enumWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: pickType, writer: enumWriter, logHandler: serializer.logHandler}, nil
case Pop:
- return &graphBinaryTypeSerializer{dataType: PopType, writer: enumWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: popType, writer: enumWriter, logHandler: serializer.logHandler}, nil
case T:
- return &graphBinaryTypeSerializer{dataType: TType, writer: enumWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: tType, writer: enumWriter, logHandler: serializer.logHandler}, nil
case Barrier:
- return &graphBinaryTypeSerializer{dataType: BarrierType, writer: enumWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: barrierType, writer: enumWriter, logHandler: serializer.logHandler}, nil
case Scope:
- return &graphBinaryTypeSerializer{dataType: ScopeType, writer: enumWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: scopeType, writer: enumWriter, logHandler: serializer.logHandler}, nil
+ case Merge:
- return &graphBinaryTypeSerializer{dataType: MergeType, writer: enumWriter, logHandler: serializer.logHandler}, nil
++ return &graphBinaryTypeSerializer{dataType: mergeType, writer: enumWriter, logHandler: serializer.logHandler}, nil
case p, Predicate:
- return &graphBinaryTypeSerializer{dataType: PType, writer: pWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: pType, writer: pWriter, logHandler: serializer.logHandler}, nil
case textP, TextPredicate:
- return &graphBinaryTypeSerializer{dataType: TextPType, writer: textPWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: textPType, writer: textPWriter, logHandler: serializer.logHandler}, nil
case *Binding, Binding:
- return &graphBinaryTypeSerializer{dataType: BindingType, writer: bindingWriter, logHandler: serializer.logHandler}, nil
+ return &graphBinaryTypeSerializer{dataType: bindingType, writer: bindingWriter, logHandler: serializer.logHandler}, nil
default:
switch reflect.TypeOf(val).Kind() {
case reflect.Map:
diff --cc gremlin-go/driver/serializer.go
index c51fc7f6e5,4bdebe2604..8b40a355e3
--- a/gremlin-go/driver/serializer.go
+++ b/gremlin-go/driver/serializer.go
@@@ -192,8 -191,8 +191,8 @@@ func readMap(buffer *bytes.Buffer, gs *
err = binary.Read(buffer, binary.BigEndian, &keyType)
if err != nil {
return nil, err
- } else if keyType != StringType {
+ } else if keyType != stringType {
- return nil, newError(err0703ReadMapNonStringKeyError)
+ return nil, newError(err0703ReadMapNonStringKeyError, keyType)
}
var nullable byte
err = binary.Read(buffer, binary.BigEndian, &nullable)