-
Notifications
You must be signed in to change notification settings - Fork 14
EF Core Optimization
MARS stands for Multiple Active Result Set. In large queries that have several legs, each joined to the same driving table the number of returned rows grows exponentially. To mitigate this we split the query along the driving table legs and dispatch multiple select statements simultaneously, materializing into a single result set.
To control the behavior of this splitting we have a pair of environment variables you can set
set to any value other than 0, this will enable multiple active result sets. Set to 0 by default disabling this feature.
cost weighted number of tables that can be joined to the driving table before being split. Legs that join to other legs have a 10x cost associated with them. Default value is 2 and will work well for most use cases.
-
Tutorial 2: Building a Service from Scratch
- Creating a Basic Solution
- Enabling OData Support
- Configuring Self Hosting
- Entity Collection Endpoints
- API Documentation
- Single Entity Endpoints
- OData Query Support
- Alternate Key Endpoints
- Expanding Relations
- Postman Tests
- Supporting CRUD Operations
- Adding a Primary Key Factory
- Adding Create Endpoints
- Adding Upsert Endpoints
- Adding Patch Endpoints
- Adding Delete Endpoints
-
Harmony Core Code Generator
-
OData Aware Tools
-
Advanced Topics
- CLI Tool Customization
- Adapters
- API Versioning
- Authentication
- Authorization
- Collection Counts
- Customization File
- Custom Field Types
- Custom File Specs
- Custom Properties
- Customizing Generated Code
- Deploying to Linux
- Dynamic Call Protocol
- Environment Variables
- Field Security
- File I/O
- Improving AppSettings Processing
- Logging
- Optimistic Concurrency
- Multi-Tenancy
- Publishing in IIS
- Repeatable Unit Tests
- Stored Procedure Routing
- Suppressing OData Metadata
- Traditional Bridge
- Unit Testing
- EF Core Optimization
- Updating a Harmony Core Solution
- Updating to 3.1.90
- Creating a new Release
-
Background Information