Data entity export for lease analytics fails with timeout error in large tenant

We’re running into a critical issue with data entity exports for lease analytics in our large tenant environment. We manage over 50,000 active leases, and when we attempt to export the lease data entity for analytics purposes, the operation consistently fails with a timeout error.

The strange part is that this exact same export works perfectly fine in our smaller test tenant that has only about 2,000 leases. The timeout occurs after approximately 10 minutes, and we get an error message about the request exceeding the maximum execution time.

Here’s the error we’re seeing:


Error: Request timeout - execution exceeded 600 seconds
Entity: LeaseAnalyticsDataEntity
Records processed: ~15,000 of 50,000

Our reporting team needs this data export to run weekly for their analytics dashboards. Has anyone successfully exported large lease datasets, and what approaches worked?

Yes, the batch processing approach will handle your initial full export and ongoing incremental needs. Let me provide a comprehensive solution for your large tenant lease analytics export scenario.

Understanding the Timeout Issue You’re encountering the timeout because synchronous data entity exports through the UI are subject to the 600-second (10 minutes) execution limit. With 50,000+ leases, the data entity query, transformation, and file generation process exceeds this threshold. Your smaller test tenant works because 2,000 records process well within the limit.

Solution: Batch-Based Export Configuration

  1. Set Up Recurring Export Job Navigate to Workspaces > Data management > Export. Create a new export project:
  • Entity: LeaseAnalyticsDataEntity
  • Target format: CSV or Excel (CSV performs better for large datasets)
  • Enable ‘Recurring export’ option
  • Set schedule: Weekly during off-peak hours (e.g., Sunday 2 AM)
  1. Configure Batch Processing Parameters In the export project settings:
  • Batch processing: Yes
  • Batch group: Create a dedicated batch group for data exports
  • Thread count: 4-8 (depending on your environment capacity)
  • Records per batch: 5,000 (this breaks your 50k records into manageable chunks)
  1. Initial Full Export Strategy For your first full export of 50,000 leases:
  • Use the batch export method above, but run it as a one-time job
  • Monitor the batch job in System administration > Inquiries > Batch jobs
  • Expected completion time: 30-60 minutes (versus the 10-minute timeout)
  • Output location: Configure to Azure Blob storage or SFTP for direct analytics team access
  1. Ongoing Incremental Exports After the initial export, modify your recurring export:
  • Add filter: ModifiedDateTime > [Last export date]
  • This reduces weekly exports to typically 500-2,000 records (only changed leases)
  • Export completes in 2-5 minutes
  • Analytics team merges incremental data with their existing dataset
  1. Performance Optimization Since the export works in your smaller tenant, the entity itself is fine. For the large tenant:
  • Ensure indexes exist on LeaseAnalyticsDataEntity key fields
  • Review the entity’s query execution plan if timeouts persist even with batching
  • Consider removing unnecessary columns from the entity if your analytics don’t need all fields

Alternative: OData-Based Extraction If batch exports still present challenges, consider using OData API with pagination:

  • Your analytics tool can query LeaseAnalyticsDataEntity via OData endpoint
  • Use $skip and $top parameters to paginate (e.g., 1,000 records per request)
  • This approach gives your analytics team real-time access without exports

The batch processing method is the most reliable solution for your 50k lease scenario and will handle both the initial full export and ongoing incremental updates without timeout issues.


This draft is based on general Microsoft Dynamics 365 knowledge. It has not been verified against your specific version and environment. Practitioners: verify the steps and share your experience below.

The 600-second timeout is a standard limit for data entity operations. With 50k records, you’re hitting that wall. You need to either batch the export using filters or increase the timeout threshold in your data management framework settings. Can you filter by lease status or date ranges to break it into smaller chunks?

Tested this on a 75,000-lease tenant in D365 Finance 10.0.38 — switching the data entity export to batch processing eliminated the timeout and completed the full export in under 40 minutes.

We could potentially filter by lease start date or property location to break it up, but that would require multiple manual exports each week. Our analytics team prefers a single consolidated export. Is there a way to increase the timeout threshold safely without impacting other operations?

Increasing the timeout globally isn’t recommended as it can affect system stability. Instead, look at using the recurring data export feature with batch processing. Set up a recurring export job in Data management workspace that runs during off-peak hours. The batch framework handles large datasets much better than synchronous exports and doesn’t have the same timeout constraints. You can configure it to export to Azure Blob storage or an SFTP location for your analytics team to consume.

Another option is to use incremental exports instead of full exports. If you’re running this weekly, you only need the changes since the last export. Configure the data entity to include a ‘Modified date time’ field, then filter your export to only include records modified in the last 7 days. This drastically reduces the dataset size and avoids the timeout issue entirely.

The incremental approach sounds promising for ongoing exports, but we still need the initial full export to populate the analytics database. Would the batch processing method handle that initial 50k record export successfully?