Login to follow
MongoDB_Conector

MongoDB_Conector (ODC)

Stable version 0.1.14 (Compatible with ODC)
Uploaded on 17 September 2025 by Community Labs
MongoDB_Conector

MongoDB_Conector (ODC)

Details
Detailed Description

unofficial MongoDB Connector for OutSystems solves critical challenges when working with modern databases:


🔥 Key Features That Matter:
Full CRUD Operations - Create, read, update, delete documents using simple JSON inputs
Aggregation Framework - Run complex data pipelines (grouping, filtering, transformations) directly from ODC
Enterprise Security - TLS/SSL connections + configurable connection pooling
Performance Insights - Get collection stats, index details, and query explanations
ODC-Ready - 100% stateless architecture following OutSystems best practices


💡 Solving Problems:

  1. Saves 60+ Hours of building/maintaining basic MongoDB ops

  2. Eliminates Connection Headaches with built-in TLS and smart pooling

  3. Prevents Data Leaks through strict input validation and error masking

  4. Scales Seamlessly with pagination and optimized aggregation

Release notes 

# 📦 MongoDB Conector ODC – Changelog


## 2025-05-20


### 🚀 Adicionado

- Suporte completo a transações MongoDB com controle via `sessionId`.

- Nova estrutura de gerenciamento `MongoTransactionManager` com cache seguro de sessões.

- Expiração automática de sessões inativas após 5 minutos (TTL configurado internamente).

- Métodos auxiliares públicos:

- `GetOrCreateSession`

- `CommitTransaction`

- `AbortTransaction`


### ➕ Novas ações expostas no conector (`IMongoDB.cs`)

- `CommitTransaction(MongoConfig config, string sessionId)`

- `AbortTransaction(MongoConfig config, string sessionId)`


### ✨ Nova funcionalidade: Bulk Insert Documents

- Novo método `BulkInsertDocuments(MongoConfig config, string documentsJson, int batchSize, string? sessionId = null)`

- Suporte a grandes volumes com divisão em lotes (`batchSize`)

- Validação robusta de JSON

- Suporte a transações via `sessionId`

- Tratamento de exceções detalhado com `MongoBulkWriteException`

- Usa `InsertManyOptions { IsOrdered = false }` para continuar em caso de erro parcial


### ✏️ Alterações em métodos existentes

- Todos os métodos CRUD (`CreateDocument`, `UpdateDocument`, etc.) agora suportam parâmetro opcional `sessionId`.

- Uso condicional de transações com base em:

- `sessionId` fornecido

- `AutoCommitTransactions = false` no `MongoConfig`


### 🧠 Observações

- Se `sessionId` não for fornecido, a operação será comitada automaticamente.

- O controle real de transações ocorre apenas quando `sessionId` é usado.

- SessionId é retornado nas respostas (`MongoDBConectorResponse`) quando aplicável.


---