Go
The following connectors are available:
- Tarantool-supported go-tarantool
- Community-supported viciious/go-tarantool
- Community-supported FZambia/tarantool.
Last update: January 2023
tarantool/go-tarantool | viciious/go-tarantool | FZambia/tarantool | |
---|---|---|---|
License | BSD 2-Clause | MIT | BSD 2-Clause |
Last update | 2023 | 2022 | 2022 |
Documentation | README with examples and up-to-date GoDoc | README with examples, code comments | README with examples |
Testing / CI / CD | GitHub Actions | Travis CI | GitHub Actions |
GitHub Stars | 147 | 45 | 14 |
Static analysis | golangci-lint, luacheck | golint | golangci-lint |
Packaging | go get | go get | go get |
Code coverage | Yes | No | No |
msgpack driver | vmihailenco/msgpack/v2 or vmihailenco/msgpack/v5 | tinylib/msgp | vmihailenco/msgpack/v5 |
Async work | Yes | Yes | Yes |
Schema reload | Yes (manual pull) | Yes (manual pull) | Yes (manual pull) |
Space / index names | Yes | Yes | Yes |
Tuples as structures | Yes (structure and marshall functions must be predefined in Go code) | No | Yes (structure and marshall functions must be predefined in Go code) |
Access tuple fields by names | Only if marshalled to structure | No | Only if marshalled to structure |
SQL support | Yes | No (#18, closed) | No |
Interactive transactions | Yes | No | No |
Varbinary support | Yes (with in-built language tools) | Yes (with in-built language tools) | Yes (decodes to string by default, see #6) |
UUID support | Yes | No | No |
Decimal support | Yes | No | No |
EXT_ERROR support | Yes | No | No |
Datetime support | Yes | No | No |
box.session.push() responses | Yes | No (#21) | Yes |
Session settings | Yes | No | No |
Graceful shutdown | Yes | No | No |
IPROTO_ID (feature discovering) | Yes | No | No |
tarantool/crud support | No | No | No |
Connection pool | Yes (round-robin failover, no balancing) | No | No |
Transparent reconnecting | Yes (see comments in #129) | No (handle reconnects explicitly, refer to #11) | Yes (see comments in #7) |
Transparent request retrying | No | No | No |
Watchers | Yes | No | No |
Pagination | Yes | No | No |
Language features | context | context | context |
Miscellaneous | Supports tarantool/queue API | Can mimic a Tarantool instance (also as replica). Provides instrumentation for reading snapshot and xlog files via snapio module. Implements unpacking of query structs if you want to implement your own iproto proxy | API is experimental and breaking changes may happen |