Skip to content

Conversation

@Danielle9897
Copy link
Member

@Danielle9897 Danielle9897 commented Dec 18, 2025

Related issue:
https://issues.hibernatingrhinos.com/issue/RDoc-3497/Remote-attachments-add-documentation


These are the existing relevant C# articles to review:

Overview:
docs/document-extensions/attachments/content/_overview-csharp.mdx
Configure remote:
docs/document-extensions/attachments/content/_configure-remote-attachments-csharp.mdx
Store local:
docs/document-extensions/attachments/store-attachments/content/_store-attachments-local-csharp.mdx
Store remote:
docs/document-extensions/attachments/store-attachments/content/_store-attachments-remote-csharp.mdx
Bulk insert:
docs/document-extensions/attachments/store-attachments/content/_bulk-insert-csharp.mdx
Get attachments:
docs/document-extensions/attachments/content/_get-attachments-csharp.mdx
Delete attachments:
docs/document-extensions/attachments/content/_delete-attachment-csharp.mdx
Copy/move/rename:
docs/document-extensions/attachments/content/_copy-move-rename-csharp.mdx
Indexing attachments:
docs/document-extensions/attachments/content/_indexing-attachments-csharp.mdx
Attachments and other features
docs/document-extensions/attachments/attachments-and-other-features.mdx


Content for the other languages (Java, PHP, Python, Node.js) was not updated - no code review is currently needed on those files.
Articles for these languages should be handled separately in dedicated PRs.
This is summarized in the table “Status of article coverage per client language” in the issue description in:
https://issues.hibernatingrhinos.com/issue/RDoc-3497/Remote-attachments-add-documentation

@Danielle9897 Danielle9897 requested a review from garayx December 18, 2025 07:28
// Display current settings
if (configuration != null)
{
Console.WriteLine(
Copy link

Choose a reason for hiding this comment

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

isn't its better to use comments then having Console.WriteLines, usually the code examples are meant to be copy pasted by the reader

Copy link
Member Author

Choose a reason for hiding this comment

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

fixed


* **Can the upload process be canceled?**
Once an upload to the remote destination begins, it cannot be canceled.
As a workaround, you can temporarily disable the database. This will stop the upload if it is still in progress.
Copy link

Choose a reason for hiding this comment

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

I dont think we want to recommend disabling the database, maybe we can write: temporary disable the Remote Attachments Configuration ?

Copy link
Member Author

Choose a reason for hiding this comment

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

fixed


* **Can a remote attachment be pulled back into local storage?**
There is no built-in mechanism to reverse the upload. To "un-remote" an attachment,
you'll need to manually retrieve it from the remote storage and store it again in the database.
Copy link

Choose a reason for hiding this comment

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

Suggested change
you'll need to manually retrieve it from the remote storage and store it again in the database.
you'll need to write client code to manually retrieve it from the remote storage and store it again in the database.

Copy link
Member Author

Choose a reason for hiding this comment

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

fixed


* **What happens if the upload fails?**
If the upload attempt fails (e.g., due to a network issue or misconfiguration),
the background task will try again during the next scheduled scan.
Copy link

Choose a reason for hiding this comment

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

however if we fail to upload the Attachments more then 3 times , we will rise an alert and remove it from upload queue.

Copy link
Member Author

Choose a reason for hiding this comment

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

done

* During import/restore, the metadata is loaded from the dump into the database, the content is expected to remain accessible in its original remote location.
* **Remote destination configuration** for import & restore:
If remote attachments are included, the same remote storage destinations must be configured in the target database.
This is your responsibility, RavenDB does not automatically transfer remote destination configurations as part of these operations.
Copy link

Choose a reason for hiding this comment

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

We do backup the Remote Attachments Configuration and it gets restored. So RavenDB does not automatically transfer remote destination configurations is not right.

Copy link
Member Author

Choose a reason for hiding this comment

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

fixed

* During export/backup, only the metadata is written to the dump, the binary content remains in remote storage.
* During import/restore, the metadata is loaded from the dump into the database, the content is expected to remain accessible in its original remote location.
* **Remote destination configuration** for import & restore:
If remote attachments are included, the same remote storage destinations must be configured in the target database.
Copy link

Choose a reason for hiding this comment

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

Suggested change
If remote attachments are included, the same remote storage destinations must be configured in the target database.
If remote attachments are included, the remote storage destinations must be configured in the target database.

The identifier of destinations must be the same, but the actual blob storage might be different, but it must contain all of the blobs for remote attachments

Copy link
Member Author

Choose a reason for hiding this comment

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

fixed

@Danielle9897 Danielle9897 requested a review from garayx December 22, 2025 10:52
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.

2 participants