Releases: typedb/typedb-protocol
TypeDB Protocol 2.2.0
Documentation: http://docs.vaticle.com/docs/client-api/java
Distribution
For Java through Maven
Available through https://repo.vaticle.com
<repositories>
<repository>
<id>repo.vaticle.com</id>
<url>https://repo.vaticle.com/repository/maven/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupid>com.vaticle.typedb</groupid>
<artifactid>typedb-protocol</artifactid>
<version>2.2.0</version>
</dependency>
</dependencies>New Features
Bugs Fixed
Code Refactors
Other Improvements
- Use yarn instead of npm to install JS dependencies
We replacednpm installin our Bazel build system withyarnto align with our other NodeJS projects.
TypeDB Protocol 2.1.2
Documentation: http://docs.vaticle.com/docs/client-api/java
Distribution
For Java through Maven
Available through https://repo.vaticle.com
<repositories>
<repository>
<id>repo.vaticle.com</id>
<url>https://repo.vaticle.com/repository/maven/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupid>com.vaticle.typedb</groupid>
<artifactid>typedb-protocol</artifactid>
<version>2.1.2</version>
</dependency>
</dependencies>New Features
Bugs Fixed
Code Refactors
Other Improvements
TypeDB Protocol 2.1.1
Documentation: http://docs.vaticle.com/docs/client-api/java
Distribution
For Java through Maven
Available through https://repo.vaticle.com
<repositories>
<repository>
<id>repo.vaticle.com</id>
<url>https://repo.vaticle.com/repository/maven/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupid>com.vaticle.typedb</groupid>
<artifactid>typedb-protocol</artifactid>
<version>2.1.1</version>
</dependency>
</dependencies>New Features
- Added user management protocol for TypeDB Cluster
We have added the user management protocol for TypeDB Cluster. It will allow TypeDB clients to perform user management operations such as adding and deleting a user.
Bugs Fixed
Code Refactors
Other Improvements
TypeDB Protocol 2.1.0
Documentation: http://docs.vaticle.com/docs/client-api/java
Distribution
For Java through Maven
Available through https://repo.vaticle.com
<repositories>
<repository>
<id>repo.vaticle.com</id>
<url>https://repo.vaticle.com/repository/maven/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupid>com.vaticle.typedb</groupid>
<artifactid>typedb-protocol</artifactid>
<version>2.1.0</version>
</dependency>
</dependencies>New Features
Bugs Fixed
Code Refactors
Other Improvements
Protocol 2.0.1
Documentation: http://dev.grakn.ai/docs/client-api/java
Distribution
For Java through Maven
Available through https://repo.grakn.ai
<repositories>
<repository>
<id>repo.grakn.ai</id>
<url>https://repo.grakn.ai/repository/maven/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-session</artifactid>
<version>2.0.1</version>
</dependency>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-keyspace</artifactid>
<version>2.0.1</version>
</dependency>
</dependencies>New Features
- Store request IDs as bytes; add 'inferred' to Thing
Previously the fieldreq_idof a transaction request was stored as a string, which is an inefficient representation of a UUID. We've changed it to bytes.
Also, we deletedIsInferredand added theinferredflag toThing, allowing clients to check if a Thing is inferred without an additional network roundtrip.
Bugs Fixed
Code Refactors
Other Improvements
Protocol 2.0.0
Documentation: http://dev.grakn.ai/docs/client-api/java
Distribution
For Java through Maven
Available through https://repo.grakn.ai
<repositories>
<repository>
<id>repo.grakn.ai</id>
<url>https://repo.grakn.ai/repository/maven/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-session</artifactid>
<version>2.0.0</version>
</dependency>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-keyspace</artifactid>
<version>2.0.0</version>
</dependency>
</dependencies>New Features
-
Implement Explanations in RPC
We add Explanations, and the explain() query endpoint to the protocol. This enables all clients to retrieve all available explanations for a particular explainable concept map. -
Introduced transaction request batching
When sending large amounts of requests from the client to server, it is possible to reach GRPC's maximum throughput of messages per second, on large scale systems. For example, a client with 32 cores, can have 1000 concurrent transactions sending requests to the server. This will easily go beyond what GRPC can handle, and thus becomes the bottleneck in the system. That client will not be sending as many requests it wants per second, and the server may still be able to handle more requests to handle. We have now overcome this problem, by allowing the transaction stream (the predominant GRPC service) to "batch" the transaction requests into one GRPC message to send to the server, within a given time window. In the client-side implementations, we have chosen the time window to be 1 millisecond - small enough to not cause any noticeable performance degradation on individual requests, but big enough to "batch" all requests within that time window into one message and multiply the throughput.
Additionally, we also refined the messages to control iterators -continueanddone- to be replaced withTransaction.Iterate.ReqandTransaction.Iterate.Res, and we movedlatency_millisintoTransaction.Open.Req.
Bugs Fixed
Code Refactors
Other Improvements
Protocol 2.0.0-alpha-12
Documentation: http://dev.grakn.ai/docs/client-api/java
Distribution
For Java through Maven
Available through https://repo.grakn.ai
<repositories>
<repository>
<id>repo.grakn.ai</id>
<url>https://repo.grakn.ai/repository/maven/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-session</artifactid>
<version>2.0.0-alpha-12</version>
</dependency>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-keyspace</artifactid>
<version>2.0.0-alpha-12</version>
</dependency>
</dependencies>New Features
- Add 'type' field to Thing
TheThingmessage now contains a new field,type, which holds the concept type. As a result of this change,value_typeis now redundant (equivalent totype.value_type) andencodingcan be inferred fromtype.encoding, so both fields have been deleted.
Bugs Fixed
Code Refactors
Other Improvements
Protocol 2.0.0-alpha-11
Documentation: http://dev.grakn.ai/docs/client-api/java
Distribution
For Java through Maven
Available through https://repo.grakn.ai
<repositories>
<repository>
<id>repo.grakn.ai</id>
<url>https://repo.grakn.ai/repository/maven/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-session</artifactid>
<version>2.0.0-alpha-11</version>
</dependency>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-keyspace</artifactid>
<version>2.0.0-alpha-11</version>
</dependency>
</dependencies>New Features
- Add parallel option to Options
To allow clients to disable parallel execution, we add theparallel_optto `Options.
Bugs Fixed
Code Refactors
Other Improvements
Protocol 2.0.0-alpha-10
Documentation: http://dev.grakn.ai/docs/client-api/java
Distribution
For Java through Maven
Available through https://repo.grakn.ai
<repositories>
<repository>
<id>repo.grakn.ai</id>
<url>https://repo.grakn.ai/repository/maven/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-session</artifactid>
<version>2.0.0-alpha-10</version>
</dependency>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-keyspace</artifactid>
<version>2.0.0-alpha-10</version>
</dependency>
</dependencies>New Features
-
Use self-hosted Bazel cache
Speed up CI by using self-hosted remote Bazel cache -
Add inference logging option
Add an option that allows users to turn on or off resolution tracing for reasoner. -
Add methods to get and list Cluster databases
We added new service methods to Cluster that retrieve Cluster databases, including their replica info. Although this was possible before withdatabase_replicas, this method was not well aligned with what Core does. Using the termsgetandallallows us to establish a more Core-like API.
Bugs Fixed
Code Refactors
Other Improvements
Protocol 2.0.0-alpha-9
Documentation: http://dev.grakn.ai/docs/client-api/java
Distribution
For Java through Maven
Available through https://repo.grakn.ai
<repositories>
<repository>
<id>repo.grakn.ai</id>
<url>https://repo.grakn.ai/repository/maven/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-session</artifactid>
<version>2.0.0-alpha-9</version>
</dependency>
<dependency>
<groupid>io.grakn.protocol</groupid>
<artifactid>grakn-keyspace</artifactid>
<version>2.0.0-alpha-9</version>
</dependency>
</dependencies>