Skip to content

Releases: typedb/typedb-protocol

TypeDB Protocol 2.2.0

15 Jul 17:09
2f95aa6

Choose a tag to compare

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 replaced npm install in our Bazel build system with yarn to align with our other NodeJS projects.

TypeDB Protocol 2.1.2

09 Jun 13:16

Choose a tag to compare

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

04 Jun 19:48

Choose a tag to compare

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

20 May 10:18

Choose a tag to compare

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

13 Apr 18:02
03d581a

Choose a tag to compare

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 field req_id of a transaction request was stored as a string, which is an inefficient representation of a UUID. We've changed it to bytes.
    Also, we deleted IsInferred and added the inferred flag to Thing, allowing clients to check if a Thing is inferred without an additional network roundtrip.

Bugs Fixed

Code Refactors

Other Improvements

Protocol 2.0.0

31 Mar 11:31

Choose a tag to compare

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 - continue and done - to be replaced with Transaction.Iterate.Req and Transaction.Iterate.Res, and we moved latency_millis into Transaction.Open.Req.

Bugs Fixed

Code Refactors

Other Improvements

Protocol 2.0.0-alpha-12

05 Mar 20:45
aa53efa

Choose a tag to compare

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
    The Thing message now contains a new field, type, which holds the concept type. As a result of this change, value_type is now redundant (equivalent to type.value_type) and encoding can be inferred from type.encoding, so both fields have been deleted.

Bugs Fixed

Code Refactors

Other Improvements

Protocol 2.0.0-alpha-11

03 Mar 17:13
a9a6d23

Choose a tag to compare

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 the parallel_opt to `Options.

Bugs Fixed

Code Refactors

Other Improvements

Protocol 2.0.0-alpha-10

23 Feb 16:44
6c47e44

Choose a tag to compare

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 with database_replicas, this method was not well aligned with what Core does. Using the terms get and all allows us to establish a more Core-like API.

Bugs Fixed

Code Refactors

Other Improvements

Protocol 2.0.0-alpha-9

14 Feb 13:59
a3b1f02

Choose a tag to compare

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>

New Features

Bugs Fixed

Code Refactors

Other Improvements