Skip to content

docs: document gRPC result-bounding server settings (#4823)#412

Merged
robfrank merged 1 commit into
mainfrom
docs/grpc-result-bounding-settings
Jun 30, 2026
Merged

docs: document gRPC result-bounding server settings (#4823)#412
robfrank merged 1 commit into
mainfrom
docs/grpc-result-bounding-settings

Conversation

@robfrank

Copy link
Copy Markdown
Contributor

Summary

Documents the three SERVER-scoped gRPC DoS-protection settings introduced in ArcadeData/arcadedb#4823 (bound gRPC result materialization and worker busy-wait).

Added to the SERVER table in src/main/asciidoc/reference/settings.adoc:

Setting Type Default Purpose
server.grpcQueryMaxResultRows Integer 100000 Hard ceiling on rows the unary ExecuteQuery materializes; exceeding fails with RESOURCE_EXHAUSTED
server.grpcStreamMaxMaterializedRows Integer 1000000 Max rows StreamQuery MATERIALIZE_ALL buffers before emitting; exceeding fails with RESOURCE_EXHAUSTED
server.grpcStreamWriteTimeoutMs Long 60000 Max time a StreamQuery worker waits for transport readiness before aborting

These are registered GlobalConfiguration SERVER settings (server.grpc*), distinct from the plugin-level grpc.* keys, so they belong in the SERVER settings table rather than the gRPC plugin section.

Also:

  • Added a cross-reference from the gRPC plugin settings section pointing to these bounding knobs.
  • Added the missing [[setting-server]] anchor the cross-reference targets.

All marked _(Available since v26.7.1)_ (current dev version is 26.7.1-SNAPSHOT).

Validation

python3 docs-validator.py passes — filenames, anchors, and cross-references all valid.

🤖 Generated with Claude Code

Add the three SERVER-scoped gRPC DoS-protection settings introduced in
ArcadeData/arcadedb#4823 to the settings reference:

- server.grpcQueryMaxResultRows (default 100000)
- server.grpcStreamMaxMaterializedRows (default 1000000)
- server.grpcStreamWriteTimeoutMs (default 60000)

Also add a cross-reference from the gRPC plugin settings section and the
missing [[setting-server]] anchor it points to.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mergify

mergify Bot commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

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

Copy link
Copy Markdown

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 updates the documentation in settings.adoc to introduce three new server settings: server.grpcQueryMaxResultRows, server.grpcStreamMaxMaterializedRows, and server.grpcStreamWriteTimeoutMs. These settings are designed to bound result materialization and protect against limitless or slow clients pinning worker threads and exhausting heap. There are no review comments, and I have no feedback to provide.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

@robfrank robfrank merged commit 8d812be into main Jun 30, 2026
3 of 4 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.

1 participant