RDoc-4065 + RDoc-4074 Developer access: Overview + Access via RavenDB.Client - #2607
RDoc-4065 + RDoc-4074 Developer access: Overview + Access via RavenDB.Client#2607Danielle9897 wants to merge 4 commits into
Conversation
| * Changes made directly in RavenDB are not written back to the source database. | ||
|
|
||
| `RavenDB.Client` connects to RavenDB through `https://db.<domain>` without passing through the Quill web application. | ||
| For details about this connection path and its TLS handling, see [Direct database access](../../quill/security-and-architecture/network-architecture.mdx#direct-database-access). |
|
|
||
| With `RavenDB.Client`, your application accesses the **mirrored data in RavenDB**, not the source relational database: | ||
|
|
||
| * The source database remains the system of record. |
There was a problem hiding this comment.
I had to search what it means, can we use a different wording? Source of truth would probably be better, though I may have a personal bias towards it
| For a standard Quill domain, RavenDB presents a publicly trusted wildcard server certificate, | ||
| so the application needs no additional server-certificate trust configuration. | ||
| Client certificates are registered separately by thumbprint, | ||
| so renewing the Quill server certificate does not invalidate them. |
There was a problem hiding this comment.
removed the extra line breaks
| Each app in the response includes both `slug` and `database`. | ||
| Set `DocumentStore.Database` to the value of `database`; do not derive it from the app's display name. | ||
|
|
||
| For more information about authenticating this Quill API request, see [Operator Authentication](../../quill/security-and-architecture/operator-authentication.mdx). |
| <Panel heading="Understand the mirrored document structure"> | ||
|
|
||
| The source relational schema is not mirrored one-to-one as a separate RavenDB collection for every table. | ||
| The CDC mapping defined for the app determines: |
There was a problem hiding this comment.
There is no prior introduction what CDC is, so I wouldn't mention it this way
There was a problem hiding this comment.
=>
The way Quill maps data from the source relational database to RavenDB determines:
| ```text | ||
| Products/1 | ||
| ``` |
There was a problem hiding this comment.
I'd rather just inline it in the sentence
| The following .NET 9 or later example loads the `.pfx`, connects to the app's RavenDB database, | ||
| and queries the mapped `Products` collection: | ||
|
|
||
| ```csharp |
There was a problem hiding this comment.
Maybe we should consider samples in all supported languages?
There was a problem hiding this comment.
sure, can do that in a separate issue once we're good with the initial Quill documentation batch.
|
|
||
| <Panel heading="Inspect the CDC task"> | ||
|
|
||
| Quill creates a CDC Sink task in each app database to keep its mapped documents synchronized with the source relational database. |
There was a problem hiding this comment.
We should at least link the CDC task documentation here
There was a problem hiding this comment.
@Lwiel
The only way I could make this link navigate from the Quill documentation to the RavenDB documentation was to use: [CDC Sink task](/7.2/server/ongoing-tasks/cdc-sink/overview)
However, this hardcodes the RavenDB version.
Is there a version-independent way to link to this page from the Quill documentation?
There was a problem hiding this comment.
What about https://docs.ravendb.net/server/ongoing-tasks/cdc-sink/overview?
There was a problem hiding this comment.
will use this - it works - thanks
| <br/> | ||
|
|
||
| Configure `DisableTopologyUpdates` before calling `Initialize()`. | ||
| For more information, see [The `a` hostname](../../quill/networking-and-dns.mdx#the-a-hostname). |
|
|
||
| If the Quill host moves to another IP address, update all Quill DNS records so that `db.<domain>`, `a.<domain>`, | ||
| and the other Quill hostnames resolve to the new address. | ||
| See [Moving your Quill to a new IP](../../quill/networking-and-dns.mdx#moving-your-quill-to-a-new-ip). |
| Most collections containing these internal documents begin with `@`, but not all of them do. | ||
| For example, the `WidgetThemeDefaults` collection contains Quill's `widget-theme-defaults/config` document and has no `@` prefix. |
There was a problem hiding this comment.
That's something I'll change, we have to be consistent with this
There was a problem hiding this comment.
Changed in this PR - ravendb/ravendb#23502
Now all internal documents are either in configuration database, or in the per-app database collections prefixed with @
fbeb361 to
1bbcc61
Compare

Issue links
https://issues.hibernatingrhinos.com/issue/RDoc-4065/Quill-documentation-Access-the-mirrored-database-with-RavenDB.Client
https://issues.hibernatingrhinos.com/issue/RDoc-4074/Quill-documentation-Developer-access-overview
Additional description
Explain the two ways to work with data mirrored by a Quill app.
Document how an external application can query or process a Quill app's mirrored data directly in RavenDB,
without passing through a Quill agent, an LLM, a channel, or the Quill API.
Type of change
/templatesor readme)Changes in docs URLs
/scripts/redirects.jsonfile, setDocuments MovedPR label)Changes in UX/UI