VOS3000 CDR Query Date Range Maximum Interval Limit Configuration
๐ A single CDR query spanning 90 days on a high-traffic VOS3000 system can return tens of millions of records โ enough to overwhelm the database, exhaust client memory, and freeze the VOS3000 interface for minutes. The VOS3000 CDR query date range limit, controlled by SERVER_QUERY_CDR_MAX_DAY_INTERVAL, prevents this by capping the maximum number of days a user can query in a single CDR search. The default of 31 days is designed to balance operational needs against database performance โ but understanding how to work within and around this limit is essential for every VOS3000 operator. โฑ๏ธ
๐ง Whether you are a reseller who needs to pull quarterly reports or an administrator protecting your database from runaway queries, mastering the VOS3000 CDR query date range configuration is critical. This guide covers the parameter details from the official VOS3000 2.1.9.07 manual, practical workarounds for large-range queries, and how this limit works alongside other CDR access controls. ๐
๐ฌ Need help optimizing your VOS3000 CDR query performance? Contact our team at WhatsApp: +8801911119966 for expert database tuning and configuration support. ๐ก
Table of Contents
๐ What Is VOS3000 CDR Query Date Range Limit?
๐ The VOS3000 CDR query date range limit specifies the maximum number of days a user can include in a single CDR query. When a user attempts to search CDRs with a start and end date that spans more than the configured maximum, the query is rejected with an error message indicating the date range exceeds the allowed limit. ๐ซ
๐ก Why this limit exists:
- ๐ Database performance: Large date range queries scan millions of rows, consuming CPU, memory, and I/O resources on the database server
- ๐ฅ๏ธ Client stability: Returning millions of CDR records to the VOS3000 Client can cause memory exhaustion and application crashes
- โฑ๏ธ Query timeout prevention: Long-running queries may time out before completion, wasting resources without returning results
- ๐ก๏ธ Fair resource sharing: Prevents a single user from monopolizing database resources with an excessively broad query
- ๐ Operational continuity: Ensures the VOS3000 system remains responsive for real-time call processing even during heavy CDR analysis
โ๏ธ SERVER_QUERY_CDR_MAX_DAY_INTERVAL โ The Core Parameter
๐ SERVER_QUERY_CDR_MAX_DAY_INTERVAL defines the maximum number of days allowed in a CDR query’s date range. Any query with a date range exceeding this value is automatically rejected. ๐
| Attribute | Value |
|---|---|
| ๐ Parameter Name | SERVER_QUERY_CDR_MAX_DAY_INTERVAL |
| ๐ข Default Value | 31 |
| ๐ Unit | Days |
| ๐ Description | Maximum Interval for CDR Inquiry (Day) |
| ๐ Location | Operation management โ Softswitch management โ Additional settings โ Server parameter |
๐ง How the 31-day default works: When a user queries CDRs with a date range of, say, January 1 to February 15 (45 days), VOS3000 calculates the interval: 45 days. Since this exceeds the default SERVER_QUERY_CDR_MAX_DAY_INTERVAL of 31, the query is rejected and the user receives an error. The user must then narrow the search to a maximum of 31 days โ for example, January 1 to January 31.
๐ VOS3000 CDR Query Date Range Limit Examples
๐ Here are practical examples showing how the limit affects different query scenarios: ๐ก
| Query Date Range | Days Spanned | Default Limit (31) | Result |
|---|---|---|---|
| Apr 1 โ Apr 15 | 15 days | โ Within limit | Query executes normally |
| Apr 1 โ Apr 30 | 30 days | โ Within limit | Query executes normally |
| Apr 1 โ May 1 | 31 days | โ Exactly at limit | Query executes (31 โค 31) |
| Apr 1 โ May 2 | 32 days | โ Exceeds limit | Query rejected โ reduce date range |
| Jan 1 โ Mar 31 | 90 days | โ Exceeds limit | Query rejected โ use incremental approach |
๐ Workarounds for CDR Queries Exceeding the Date Range Limit
๐ When you need CDR data spanning more than 31 days, there are several approaches to work around the VOS3000 CDR query date range limit without increasing the parameter value and risking database performance: ๐ก
๐ Method 1: Incremental Queries (Chunk the Date Range)
๐ข Break your large date range into multiple queries, each within the 31-day limit. For example, to get 90 days of CDR data: ๐ก
๐ Incremental CDR Query Strategy (90-day range, 31-day limit): Query 1: Jan 1 โ Jan 31 (31 days) โ Query 2: Feb 1 โ Feb 28 (28 days) โ Query 3: Mar 1 โ Mar 31 (31 days) โ Total: 3 queries covering 90 days Merge results externally (Excel, Python, etc.)
๐ Advantage: No parameter changes needed; each query is database-friendly. Disadvantage: Requires manual effort to merge multiple result sets. For automated merging, use Python or a spreadsheet tool to combine the CSV exports.
๐ Method 2: CDR Text File Export
๐ Use the VOS3000 CDR text file system instead of the database query. When SS_CDR_RECORD_TO_FILE is enabled, all CDRs are written to pipe-delimited text files in the cdr directory. These files can be searched, filtered, and analyzed using any text processing tool without any date range restriction. ๐
| Aspect | Database Query | Text File Export |
|---|---|---|
| ๐ Date range limit | 31 days (configurable) | No limit โ read any files on disk |
| ๐ Search capability | Rich filtering (account, gateway, etc.) | Text processing (grep, awk, Python) |
| ๐ Speed | Fast for targeted queries | Slower for large file scans |
| ๐ง Setup required | None โ built into VOS3000 Client | Enable SS_CDR_RECORD_TO_FILE + rotation |
๐ก For detailed CDR text file setup instructions, see our CDR text file export guide and CDR file rotation guide. ๐
๐ก Method 3: Real-Time CDR Forwarding to External Analytics
๐ If you frequently need large-range CDR analysis, consider forwarding CDRs to an external analytics platform (Elasticsearch, Splunk, custom database) using SERVER_CDR_REAL_TIME_REPORT_SERVER. External platforms typically have no date range restrictions and offer more powerful search and visualization capabilities. For setup instructions, see our real-time CDR forwarding guide. ๐
โ๏ธ Method 4: Increase the Parameter Value (With Caution)
โ ๏ธ You can increase SERVER_QUERY_CDR_MAX_DAY_INTERVAL beyond 31 days if your database has sufficient resources. However, be aware of the implications: ๐ก
| Setting | Risk Level | Impact at 100 CPS | Recommendation |
|---|---|---|---|
| 31 days (default) | ๐ข Low | ~267M records max | โ Safe for most deployments |
| 60 days | ๐ก Medium | ~518M records max | โ ๏ธ Only with powerful database server |
| 90 days | ๐ High | ~778M records max | ๐จ Risk of query timeouts and client crashes |
| 365 days | ๐ด Very High | ~3.15B records max | โ Not recommended โ use external analytics instead |
๐ฅ๏ธ Step-by-Step VOS3000 CDR Query Date Range Configuration
๐ง Follow these steps to configure the CDR query date range limit: ๐
Step 1: Configure the Parameter ๐
- ๐ Log in to VOS3000 Client
- ๐ Navigate: Operation management โ Softswitch management โ Additional settings โ Server parameter
- ๐ Locate SERVER_QUERY_CDR_MAX_DAY_INTERVAL
- โ๏ธ Set the desired maximum day interval (default: 31)
- ๐พ Save and apply the configuration
Step 2: Verify the Limit โ
๐ After configuration, test the limit by attempting a CDR query that exceeds the configured maximum:
- ๐ Open the CDR query window in VOS3000 Client
- ๐ Set a date range that exceeds the configured limit
- โ Verify that the query is rejected with a date range error message
- ๐ Try a query within the limit and confirm it executes successfully
๐ Related CDR Query Size Parameters
๐ The VOS3000 CDR query date range limit works alongside several other query size parameters that together control database load: ๐ก
| Parameter | Default | Purpose |
|---|---|---|
| SERVER_QUERY_CDR_MAX_DAY_INTERVAL | 31 | Maximum days in CDR query date range |
| SERVER_QUERY_MAX_ONE_PAGE_SIZE | 200000 | Maximum records per page in results |
| SERVER_QUERY_MAX_SIZE | 30000000 | Total data query limit (items) |
| SERVER_QUERY_ONE_PAGE_SIZE | 10000 | Default records per page |
| SERVER_QUERY_NON_PAGABLE_MAX_LINES | 100000 | Non-pagable table max lines per page (1000โ200000) |
๐ก Practical example: At 100 CPS, a 31-day query could return approximately 267 million records โ well above the SERVER_QUERY_MAX_SIZE of 30 million items. This means that even with a 31-day date range, the actual query results may be truncated by the total query size limit. The combination of date range and result size limits provides defense in depth against database overload. ๐ก๏ธ
๐ก๏ธ Common VOS3000 CDR Query Date Range Problems and Solutions
โ Problem 1: Reseller Needs Quarterly CDR Report
๐ Symptom: A reseller needs to generate a quarterly CDR report (90 days) but the query is rejected.
โ Solutions:
- ๐ Use incremental queries: three 31-day queries covering the quarter
- ๐ Export CDR text files and process them externally with Python or Excel
- ๐ก Set up real-time CDR forwarding to an external analytics platform
- โ๏ธ Temporarily increase the limit for the specific query (then reduce it back)
โ Problem 2: CDR Query Returns Incomplete Results
๐ Symptom: A 31-day CDR query returns fewer records than expected.
๐ก Cause: The total result count exceeds SERVER_QUERY_MAX_SIZE (30 million items), causing truncation. Or the query falls within the CDR query blackout window for some hours.
โ Solutions:
- ๐ Add more specific filters (account, gateway, call type) to reduce result count
- ๐ Use a narrower date range and merge results
- ๐ง Check SERVER_QUERY_MAX_SIZE setting if you need larger result sets
โ Problem 3: Changing the Limit Does Not Take Effect
๐ Symptom: After changing SERVER_QUERY_CDR_MAX_DAY_INTERVAL, queries still fail at the old limit.
โ Solutions:
- ๐ Re-login to the VOS3000 Client after saving the parameter
- ๐ง Clear the client cache and restart the application
- ๐ Verify the parameter value was saved correctly by re-opening the settings panel
๐ก VOS3000 CDR Query Date Range Best Practices
| Best Practice | Recommendation | Reason |
|---|---|---|
| ๐ Keep default 31-day limit | Do not increase without careful analysis | โ Protects database from runaway queries |
| ๐ Use incremental queries | Chunk large ranges into 31-day segments | ๐ง No parameter changes; database-friendly |
| ๐ Leverage text file exports | Use CDR text files for large-range analysis | ๐ No date range restriction on file reads |
| ๐ก Forward to external analytics | Integrate with Elasticsearch/Splunk | ๐ No limits; powerful visualization |
| ๐ Add query filters | Specify account, gateway, or call type | ๐ Reduces result count and query time |
๐ฌ Need to optimize your VOS3000 CDR query strategy? Contact us at WhatsApp: +8801911119966 for expert guidance on database performance, CDR export workflows, and external analytics integration. ๐
โ Frequently Asked Questions
โ What is the default value for SERVER_QUERY_CDR_MAX_DAY_INTERVAL?
๐ The default value is 31 days. This means that by default, any CDR query in VOS3000 with a date range exceeding 31 days is automatically rejected. The 31-day default covers a typical monthly reporting cycle and provides a reasonable balance between operational needs and database protection. If your business requires larger query ranges, you can increase this value โ but consider the performance implications carefully, especially on high-traffic systems. ๐ง
โ Can I increase the VOS3000 CDR query date range to 365 days?
โ ๏ธ While SERVER_QUERY_CDR_MAX_DAY_INTERVAL can technically be set to 365 or higher, doing so on a production system with significant call volume is strongly discouraged. At 100 CPS, a 365-day query could attempt to return over 3 billion records โ far exceeding the SERVER_QUERY_MAX_SIZE of 30 million items and likely causing query timeouts or client crashes. For annual CDR analysis, use incremental queries, text file exports, or external analytics platforms instead. For CDR text file setup, see our CDR text file export guide. ๐
โ Does the date range limit apply to the CDR text file export?
๐ No. The VOS3000 CDR query date range limit only applies to queries made through the VOS3000 Client and web interface (database queries). The CDR text file system writes all records to files on disk without any date range filtering. You can read, search, and analyze these text files using external tools (Python, awk, grep) with no date range restriction whatsoever. This makes the text file system the preferred method for large-range historical CDR analysis. ๐
โ How do I export more than 31 days of CDR data for a reseller?
๐ You have several options: (1) Use incremental queries โ run multiple 31-day queries and merge the results externally, (2) Access the CDR text files on the server directly โ they contain all records with no date range limit, (3) Use the real-time CDR forwarding feature to send records to an external analytics platform where larger queries are supported, or (4) Temporarily increase SERVER_QUERY_CDR_MAX_DAY_INTERVAL for the specific query (remember to reduce it back afterward). For the most robust long-term solution, option 3 provides unlimited analytical capability. ๐ก
โ Does the VOS3000 CDR query date range limit affect automated reports?
๐ The date range limit primarily affects manual CDR queries through the VOS3000 Client interface. Automated reports (configured under Report management) generate based on their own scheduling parameters. However, if an automated report’s date range configuration exceeds the SERVER_QUERY_CDR_MAX_DAY_INTERVAL, it may also be subject to the same restriction. Always verify that your automated report schedules are compatible with the configured date range limit. For more on reporting, see our CDR analysis guide. ๐
โ What other parameters control CDR query performance?
๐ง Several parameters work together to protect database performance: SERVER_QUERY_CDR_MAX_DAY_INTERVAL (date range limit), SERVER_QUERY_MAX_ONE_PAGE_SIZE (max records per page = 200000), SERVER_QUERY_MAX_SIZE (total query limit = 30M items), SERVER_QUERY_ONE_PAGE_SIZE (default page size = 10000), and SERVER_QUERY_CDR_DENY_TIME (blackout hours). Together, these parameters provide layered protection against heavy queries. For the blackout configuration, see our CDR query blackout guide. ๐ก๏ธ
๐ Need Expert Help with VOS3000 CDR Query Date Range Configuration?
๐ง Proper VOS3000 CDR query date range configuration protects your database while ensuring your team can access the billing data they need. Whether you need to optimize query performance, set up CDR text file exports for large-range analysis, or integrate with external analytics platforms, our VOS3000 experts are here to help. ๐ก๏ธ
๐ฌ Contact us at WhatsApp: +8801911119966 for professional VOS3000 deployment and optimization services. We serve VoIP operators worldwide with proven solutions for billing, analytics, and system performance. ๐
๐ Explore related guides: CDR query blackout configuration, CDR analysis and billing, and parameter description reference. ๐
๐ Need Professional VOS3000 Setup Support?
For professional VOS3000 installations and deployment, VOS3000 Server Rental Solution:
๐ฑ WhatsApp: +8801911119966
๐ Website: www.vos3000.com
๐ Blog: multahost.com/blog
๐ฅ Downloads: VOS3000 Downloads
![]() | ![]() | ![]() |


