Skip to content

Conversation

@robfrank
Copy link
Contributor

This pull request adds new documentation for the gRPC API to the Java vectors chapter. The main change is the inclusion of the java-api-grpc.adoc file, which provides reference material for using gRPC with Java vectors.

Documentation update:

  • Added include::java-api-grpc.adoc[] to src/main/asciidoc/api-reference/java/chapter.adoc, introducing gRPC API documentation for Java vectors.

@robfrank robfrank linked an issue Dec 10, 2025 that may be closed by this pull request
2 tasks
@gemini-code-assist
Copy link

Summary of Changes

Hello @robfrank, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly enhances the Java API reference by introducing a dedicated chapter for the gRPC API. It provides developers with detailed guidance on leveraging gRPC for high-performance remote database communication with ArcadeDB, covering setup, core functionalities, and best practices to ensure efficient and robust application development.

Highlights

  • New gRPC Java API Documentation: Comprehensive documentation for using ArcadeDB's gRPC-based Java library for remote database communication has been added, detailing its advantages and use cases.
  • Core Classes Explained: Detailed descriptions of the RemoteGrpcServer for server-level operations and RemoteGrpcDatabase for specific database interactions are provided, including their key features.
  • 10-Minute Tutorial: A step-by-step tutorial guides users through essential operations, including connecting to a gRPC server, creating database instances, schema management, executing queries, updating/inserting data, transaction handling, and error handling with practical Java code examples.
  • Performance Best Practices: The documentation includes a dedicated section on performance tips, such as connection pooling, batch operations, parameterized queries, and using sqlscript for optimal gRPC API usage.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds comprehensive documentation for the gRPC Java API. The structure is logical and covers essential aspects from setup to advanced usage. I've identified a few areas with inconsistencies and opportunities for improvement in the code examples to better promote best practices, particularly around resource management, consistent API usage, and code safety. My feedback aims to enhance the clarity and correctness of the provided examples.

Comment on lines 86 to 93
RemoteGrpcServer server = new RemoteGrpcServer(
"localhost", // Server hostname
50051, // gRPC port (default: 50051)
"root", // Username
"password", // Password
true, // Use TLS/SSL (false for development)
List.of() // Additional channel credentials (if needed)
);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The useTls parameter is set to true, but the inline comment (false for development) suggests the opposite. Furthermore, the "Complete Example" later in the document (line 568) uses false. To improve consistency and make it easier for users to run this initial example, consider changing true to false to align with the comment and the subsequent example.

RemoteGrpcServer server = new RemoteGrpcServer(
    "localhost",           // Server hostname
    50051,                 // gRPC port (default: 50051)
    "root",                // Username
    "password",            // Password
    false,                 // Use TLS/SSL (false for development)
    List.of()              // Additional channel credentials (if needed)
);

- Fix resource management: update thread safety example to use try-with-resources block instead of try-finally
- Fix Complete Example: add proper resource cleanup with nested try-with-resources for both server and database instances
- Fix useTls parameter: change true to false in initial example for development consistency with Complete Example
- Fix JSON INSERT: change from sqlscript to sql for single INSERT statement as per best practices
- Fix edge creation example: add hasNext() checks before calling next() to prevent NoSuchElementException
- Fix INSERT statement formatting: simplify string concatenation in Complete Example to single string literal

All changes align with Java best practices and improve code reliability.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
@mergify
Copy link
Contributor

mergify bot commented Dec 10, 2025

🧪 CI Insights

Here's what we observed from your CI run for dac79da.

🟢 All jobs passed!

But CI Insights is watching 👀

@robfrank robfrank merged commit 0f58a24 into main Dec 10, 2025
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add documentation fo gRPC

2 participants