# V1 vs V2 Performance Benchmark Results
*Generated on 2025-12-04 01:47:28*

## Summary Table: Last Time V1 Beat V2

| TEST | Last Time V1 Beat V2 |
|------|---------------------|
| 1.1.5 Insert with schema/constraint validation | 1 |
| 1.2.1 Bulk append multiple records | 1 |
| 1.2.4 Bulk insert skipping duplicates | 1 |
| 1.3.2 Insert if not exists, update if exists | 1 |
| 1.3.3 Insert only if key/ID is unique | 1 |
| 1.4.5 Insert at position beyond file length (should append) | 1 |
| 2.8.1 Handle empty files gracefully | 1 |
| 2.8.7 Handle requests for non-existent IDs | 1 |
| 2.8.8 Handle invalid line number requests | 1 |
| 3.1.1 Change one field value | 1 |
| 3.1.5 Set value if field doesn't exist | 1 |
| 3.2.3 Replace entire record content | 1 |
| 3.2.4 Merge new data with existing record | 1 |
| 3.2.5 Merge only specified fields | 1 |
| 3.3.1 Update only if record exists | 1 |
| 3.3.2 Update only if condition is met | 1 |
| 3.3.4 Update all records matching criteria | 1 |
| 3.3.5 Validate before applying update | 1 |
| 3.4.4 Remove element from array | 1 |
| 3.4.5 Modify specific array position | 1 |
| 3.4.6 Append to string field | 1 |
| 3.5.4 Auto-update timestamp fields | 1 |
| 3.6.1 Update operation on empty file should handle gracefully | 1 |
| 3.6.2 Update non-existent record should return 0 updated | 1 |
| 3.6.3 Update field to null value | 1 |
| 3.6.4 Update with Unicode and special characters | 1 |
| 3.6.5 Update field that doesn't exist (should create it) | 1 |
| 3.6.6 Update with path that doesn't exist (should create nested structure) | 1 |
| 3.6.8 Update with very large field value | 1 |
| 3.6.9 Update array element at invalid index | 1 |
| 4.1.1 Remove record by unique identifier | 1 |
| 4.1.2 Remove record by position | 1 |
| 4.1.3 Delete first record matching criteria | 1 |
| 4.3.4 Mark as deleted without removing (add deleted flag) | 1 |
| 4.3.5 Permanently remove from file | 1 |
| 4.4.1 Remove specific field from record | 1 |
| 4.4.2 Remove nested field from record | 1 |
| 4.4.3 Remove element from array | 1 |
| 4.4.5 Remove all fields, keep empty record | 1 |
| 4.5.2 Delete non-existent ID should return False | 1 |
| 4.5.8 Delete the last record in file | 1 |
| 4.5.9 Delete the first record in file | 1 |
| 4.5.10 Delete all records from file | 1 |
| 4.5.12 Delete with very large ID value | 1 |
| 7.2.1 Insert multiple records at once | 1 |
| 7.2.3 Insert or update multiple records | 1 |
| 7.3.3 Validate all before inserting | 1 |
| 7.4.1 Bulk operations on empty file should work correctly | 1 |
| 7.4.2 Bulk operations handle empty batch gracefully | 1 |
| 8.1.2 Apply all changes atomically | 1 |
| 8.1.3 Cancel all changes | 1 |
| 8.1.4 Transactions within transactions | 1 |
| 8.1.5 Create checkpoint within transaction | 1 |
| 8.2.1 Insert with transaction | 1 |
| 8.2.2 Update with transaction (atomic) | 1 |
| 8.2.3 Delete with transaction | 1 |
| 8.2.5 Update multiple records atomically | 1 |
| 9.1.1 Create index for file | 1 |
| 9.1.2 Create index on ID field | 1 |
| 9.1.3 Create index on specific field | 1 |
| 9.1.4 Create index on multiple fields | 1 |
| 9.1.5 Create index on filtered subset | 1 |
| 9.2.1 Recreate index from scratch | 1 |
| 9.2.2 Incrementally update index | 1 |
| 9.2.3 Check index integrity | 1 |
| 9.2.4 Remove index | 1 |
| 9.2.5 Get index usage statistics | 1 |
| 9.3.2 Use index for range queries | 1 |
| 9.3.3 Use index for sorted results | 1 |
| 9.3.4 Force use of specific index | 1 |
| 10.2.5 Validate before inserting | 1 |
| 10.2.6 Validate before updating | 1 |
| 12.1.1 Initialize new storage file | 1 |
| 12.1.2 Remove storage file | 1 |
| 12.1.3 Clear all records from file | 1 |
| 12.1.4 Remove gaps, optimize file | 1 |
| 12.1.5 Create backup copy | 1 |
| 12.1.6 Restore from backup | 1 |
| 12.2.1 Get total file size | 1 |
| 12.2.3 Get file information | 1 |
| 12.2.5 Verify file is valid | 1 |
| 13.1.2 Lock for writing (async) | 1 |
| 13.1.3 Release acquired lock | 1 |
| 13.1.4 Check if resource is locked | 1 |
| 13.1.5 Detect circular lock dependencies | 1 |
| 13.2.1 Multiple simultaneous reads (async) | 1 |
| 13.2.2 Serialized writes (async) | 1 |
| 13.2.3 Handle reads during writes | 1 |
| 13.2.4 Version-based conflict detection | 1 |
| 13.2.5 Lock-based conflict prevention | 1 |
| 14.1.1 Non-blocking read by ID | 1 |
| 14.2.1 Non-blocking insert | 1 |
| 14.2.2 Non-blocking update | 1 |
| 14.2.3 Non-blocking delete | 1 |
| 14.2.4 Non-blocking bulk operations | 1 |
| 15.2.3 Import records from JSON | 1 |
| 15.3.2 Move data between formats | 1 |
| 15.3.3 Migrate between versions | 1 |
| 15.3.4 Remove invalid/corrupted records | 1 |
| 16.1.2 Monitor memory consumption | 1 |
| 16.1.4 Monitor cache effectiveness | 1 |
| 16.2.1 Verify system health | 1 |
| 16.2.2 Verify data integrity | 1 |
| 16.2.3 Check index validity (V2) | 1 |


## 1. CREATE Operations

### 1.1 Single Record Creation

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 1.1.1 | Append single record to end of file | 0.0152s | 0.0025s |
| 1.1.2 | Insert record at beginning of file | 0.0072s | 0.0022s |
| 1.1.3 | Insert record at specific position (line number) | 0.0133s | 0.0026s |
| 1.1.4 | Insert with auto-generated unique ID | 0.0135s | 0.0027s |
| 1.1.5 | Insert with schema/constraint validation | 0.0067s | 0.0088s |
| 1.1.6 | Insert with ID conflict check | 0.0035s | 0.0022s |

### 1.2 Bulk Creation

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 1.2.1 | Bulk append multiple records | 0.0040s | 0.0043s |
| 1.2.2 | Bulk insert maintaining order | 0.0298s | 0.0047s |
| 1.2.3 | Batch insert with configurable batch sizes | 0.0533s | 0.0147s |
| 1.2.4 | Bulk insert skipping duplicates | 0.0033s | 0.0038s |
| 1.2.5 | All-or-nothing bulk insert | 0.0006s | 0.0000s |

### 1.3 Conditional Creation

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 1.3.1 | Insert only if condition is met | 0.0023s | 0.0022s |
| 1.3.2 | Insert if not exists, update if exists | 0.0090s | 0.0109s |
| 1.3.3 | Insert only if key/ID is unique | 0.0018s | 0.0102s |
| 1.3.4 | Merge with existing record if exists | 0.0088s | 0.0087s |

### 1.4 Edge Cases

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 1.4.1 | Append record to empty file | 0.0074s | 0.0018s |
| 1.4.2 | Insert record with None/null values | 0.0070s | 0.0025s |
| 1.4.3 | Insert record with Unicode and special characters | 0.0078s | 0.0024s |
| 1.4.4 | Insert record without id field (should still work) | 0.0064s | 0.0024s |
| 1.4.5 | Insert at position beyond file length (should append) | 0.0016s | 0.0021s |
| 1.4.6 | Bulk insert with large number of records | 9.4366s | 7.1310s |
| 1.4.7 | Insert record with nested dictionaries and lists | 0.0071s | 0.0021s |
| 1.4.8 | Insert record with empty string values | 0.0067s | 0.0021s |


## 2. READ Operations

### 2.1 Single Record Retrieval

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 2.1.1 | Get record by unique identifier | 0.0044s | 0.0000s |
| 2.1.2 | Get record by position (indexed) | 0.0006s | 0.0000s |
| 2.1.3 | Find first record matching criteria | 0.0052s | 0.0001s |
| 2.1.4 | Extract specific field/path from record | 0.0055s | 0.0000s |
| 2.1.5 | Retrieve only specified fields | 0.0061s | 0.0000s |

### 2.2 Multiple Record Retrieval

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 2.2.1 | Find all records matching criteria | 0.0057s | 0.0002s |
| 2.2.2 | Retrieve multiple records by list of IDs | 0.0054s | 0.0001s |
| 2.2.3 | Retrieve records from line N to M | 0.0058s | 0.0001s |
| 2.2.4 | Retrieve paginated results (offset + limit) | 0.0058s | 0.0001s |
| 2.2.5 | Retrieve first N matching records | 0.0066s | 0.0001s |
| 2.2.6 | Skip first N records, then retrieve | 0.0081s | 0.0003s |

### 2.3 Query Operations

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 2.3.1 | Find records where field == value | 0.0074s | 0.0001s |
| 2.3.2 | Find records matching multiple conditions | 0.0071s | 0.0001s |
| 2.3.3 | Find records where field between min and max | 0.0074s | 0.0002s |
| 2.3.4 | Find records matching regex/pattern | 0.0086s | 0.0001s |
| 2.3.5 | Find records matching nested path | 0.0071s | 0.0001s |
| 2.3.6 | Find records where array contains value | 0.0077s | 0.0001s |
| 2.3.7 | Multiple conditions with AND | 0.0082s | 0.0001s |
| 2.3.8 | Multiple conditions with OR | 0.0080s | 0.0001s |
| 2.3.9 | Exclude records matching condition | 0.0081s | 0.0003s |
| 2.3.10 | Nested AND/OR/NOT combinations | 0.0076s | 0.0002s |

### 2.4 Search Operations

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 2.4.1 | Search across all text fields | 0.0074s | 0.0002s |
| 2.4.2 | Search within specific field(s) | 0.0081s | 0.0001s |
| 2.4.3 | Find similar/approximate matches | 0.0080s | 0.0002s |
| 2.4.4 | Find records starting with prefix | 0.0007s | 0.0001s |
| 2.4.5 | Find records ending with suffix | 0.0078s | 0.0002s |
| 2.4.6 | Find records containing substring | 0.0076s | 0.0001s |
| 2.4.7 | Search ignoring case | 0.0073s | 0.0002s |
| 2.4.8 | Search across multiple fields simultaneously | 0.0083s | 0.0002s |

### 2.5 Sorting Operations

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 2.5.1 | Order results by one field (asc/desc) | 0.0073s | 0.0001s |
| 2.5.2 | Order by multiple fields (priority) | 0.0092s | 0.0002s |
| 2.5.3 | Order by nested path | 0.0076s | 0.0001s |
| 2.5.4 | Order by calculated/derived value | 0.0078s | 0.0003s |
| 2.5.5 | Handle null values in sort order | 0.0072s | 0.0001s |

### 2.6 Aggregation Operations

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 2.6.1 | Count total records or matching records | 0.0009s | 0.0003s |
| 2.6.2 | Count unique values of a field | 0.0007s | 0.0002s |
| 2.6.3 | Sum numeric values of a field | 0.0080s | 0.0001s |
| 2.6.4 | Calculate average of numeric field | 0.0071s | 0.0002s |
| 2.6.5 | Find minimum/maximum value | 0.0077s | 0.0001s |
| 2.6.6 | Group records by field value | 0.0067s | 0.0001s |
| 2.6.7 | Group and aggregate within groups | 0.0075s | 0.0001s |

### 2.7 Streaming Operations

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 2.7.1 | Iterate through all records | 0.0007s | 0.0002s |
| 2.7.2 | Iterate through filtered records | 0.0079s | 0.0001s |
| 2.7.3 | Process each record with callback | 0.0076s | 0.0001s |
| 2.7.4 | Stop streaming when condition met | 0.0081s | 0.0001s |
| 2.7.5 | Process records in chunks | 0.0066s | 0.0005s |

### 2.8 Edge Cases and Error Handling

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 2.8.1 | Handle empty files gracefully | 0.0001s | 0.0006s |
| 2.8.2 | Handle records with missing fields | 0.0057s | 0.0011s |
| 2.8.3 | Handle null/None values in fields | 0.0057s | 0.0008s |
| 2.8.4 | Handle Unicode and special characters | 0.0079s | 0.0016s |
| 2.8.5 | Handle very large field values | 0.0091s | 0.0009s |
| 2.8.6 | Handle records without ID field when ID is expected | 0.0057s | 0.0008s |
| 2.8.7 | Handle requests for non-existent IDs | 0.0007s | 0.0008s |
| 2.8.8 | Handle invalid line number requests | 0.0006s | 0.0007s |


## 3. UPDATE Operations

### 3.1 Single Property Updates

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 3.1.1 | Change one field value | 0.0013s | 0.0024s |
| 3.1.2 | Change nested field value | 0.0072s | 0.0025s |
| 3.1.3 | Modify specific array index | 0.0082s | 0.0026s |
| 3.1.4 | Update field using path expression | 0.0107s | 0.0050s |
| 3.1.5 | Set value if field doesn't exist | 0.0027s | 0.0038s |

### 3.2 Multiple Property Updates

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 3.2.1 | Change several fields at once | 0.0109s | 0.0046s |
| 3.2.2 | Update approximately half the fields | 0.0098s | 0.0038s |
| 3.2.3 | Replace entire record content | 0.0029s | 0.0048s |
| 3.2.4 | Merge new data with existing record | 0.0018s | 0.0050s |
| 3.2.5 | Merge only specified fields | 0.0020s | 0.0040s |

### 3.3 Conditional Updates

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 3.3.1 | Update only if record exists | 0.0016s | 0.0041s |
| 3.3.2 | Update only if condition is met | 0.0018s | 0.0052s |
| 3.3.3 | Update first record matching criteria | 0.0103s | 0.0049s |
| 3.3.4 | Update all records matching criteria | 0.0026s | 0.0029s |
| 3.3.5 | Validate before applying update | 0.0016s | 0.0026s |

### 3.4 Incremental Updates

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 3.4.1 | Add/subtract value to numeric field | 0.0110s | 0.0031s |
| 3.4.2 | Add element to array field | 0.0100s | 0.0029s |
| 3.4.3 | Add element to beginning of array | 0.0077s | 0.0025s |
| 3.4.4 | Remove element from array | 0.0013s | 0.0023s |
| 3.4.5 | Modify specific array position | 0.0015s | 0.0021s |
| 3.4.6 | Append to string field | 0.0013s | 0.0025s |

### 3.5 Transformative Updates

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 3.5.1 | Apply function to transform value | 0.0082s | 0.0026s |
| 3.5.2 | Calculate new value from existing fields | 0.0056s | 0.0026s |
| 3.5.3 | Update based on other record's value | 0.0068s | 0.0033s |
| 3.5.4 | Auto-update timestamp fields | 0.0013s | 0.0068s |
| 3.5.5 | Increment version number | 0.0086s | 0.0025s |

### 3.6 Edge Cases

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 3.6.1 | Update operation on empty file should handle gracefully | 0.0006s | 0.0011s |
| 3.6.2 | Update non-existent record should return 0 updated | 0.0012s | 0.0019s |
| 3.6.3 | Update field to null value | 0.0013s | 0.0025s |
| 3.6.4 | Update with Unicode and special characters | 0.0013s | 0.0027s |
| 3.6.5 | Update field that doesn't exist (should create it) | 0.0014s | 0.0023s |
| 3.6.6 | Update with path that doesn't exist (should create nested structure) | 0.0013s | 0.0031s |
| 3.6.7 | Update field with different type (string to int, etc.) | 0.0074s | 0.0024s |
| 3.6.8 | Update with very large field value | 0.0013s | 0.0107s |
| 3.6.9 | Update array element at invalid index | 0.0012s | 0.0022s |
| 3.6.10 | Update operations on empty array | 0.0057s | 0.0022s |
| 3.6.11 | Update record that doesn't have ID field | 0.0053s | 0.0025s |
| 3.6.12 | Update nested path where intermediate value is wrong type | 0.0056s | 0.0022s |


## 4. DELETE Operations

### 4.1 Single Record Deletion

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 4.1.1 | Remove record by unique identifier | 0.0017s | 0.0023s |
| 4.1.2 | Remove record by position | 0.0013s | 0.0027s |
| 4.1.3 | Delete first record matching criteria | 0.0015s | 0.0029s |
| 4.1.4 | Delete only if condition verified | 0.0059s | 0.0028s |

### 4.2 Multiple Record Deletion

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 4.2.1 | Remove all records matching criteria | 0.0152s | 0.0067s |
| 4.2.2 | Remove multiple records by list of IDs | 0.0085s | 0.0045s |
| 4.2.3 | Remove records from line N to M | 0.0077s | 0.0048s |
| 4.2.4 | Delete first N matching records | 0.0145s | 0.0046s |
| 4.2.5 | Delete large number of records efficiently | 0.0532s | 0.0213s |

### 4.3 Conditional Deletion

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 4.3.1 | Delete only if record exists | 0.0098s | 0.0036s |
| 4.3.2 | Delete only if condition is met | 0.0101s | 0.0077s |
| 4.3.3 | Delete record and related records | 0.0246s | 0.0068s |
| 4.3.4 | Mark as deleted without removing (add deleted flag) | 0.0012s | 0.0021s |
| 4.3.5 | Permanently remove from file | 0.0012s | 0.0025s |

### 4.4 Partial Deletion

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 4.4.1 | Remove specific field from record | 0.0014s | 0.0019s |
| 4.4.2 | Remove nested field from record | 0.0014s | 0.0030s |
| 4.4.3 | Remove element from array | 0.0014s | 0.0022s |
| 4.4.4 | Remove several fields at once | 0.0084s | 0.0021s |
| 4.4.5 | Remove all fields, keep empty record | 0.0013s | 0.0026s |

### 4.5 Edge Cases

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 4.5.1 | Delete from empty file should return False | 0.0001s | 0.0001s |
| 4.5.2 | Delete non-existent ID should return False | 0.0007s | 0.0007s |
| 4.5.3 | Delete with invalid line number should return False | 0.0009s | 0.0007s |
| 4.5.4 | Delete when ID field is missing from records | 0.0083s | 0.0016s |
| 4.5.5 | Delete when multiple records have same ID (should delete first match) | 0.0081s | 0.0029s |
| 4.5.6 | Delete when ID field is None/null | 0.0101s | 0.0031s |
| 4.5.7 | Delete with Unicode characters in ID | 0.0093s | 0.0027s |
| 4.5.8 | Delete the last record in file | 0.0013s | 0.0027s |
| 4.5.9 | Delete the first record in file | 0.0013s | 0.0028s |
| 4.5.10 | Delete all records from file | 0.0027s | 0.0037s |
| 4.5.11 | Delete with special characters in ID | 0.0088s | 0.0032s |
| 4.5.12 | Delete with very large ID value | 0.0132s | 0.0154s |


## 5. LIST/QUERY Operations

### 5.1 Basic Listing

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 5.1.1 | Get all records in file | 0.0007s | 0.0003s |
| 5.1.2 | Get records in pages | 0.0007s | 0.0001s |
| 5.1.3 | Get first N records | 0.0088s | 0.0005s |
| 5.1.4 | Skip N records, get next M | 0.0007s | 0.0006s |
| 5.1.5 | Get records in reverse order | 0.0008s | 0.0003s |

### 5.2 Filtered Listing

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 5.2.1 | Get all records matching filter | 0.0011s | 0.0002s |
| 5.2.2 | Get records of specific type/category | 0.0073s | 0.0002s |
| 5.2.3 | Get records within date range | 0.0081s | 0.0001s |
| 5.2.4 | Get records within numeric range | 0.0073s | 0.0002s |
| 5.2.5 | Get records not matching criteria | 0.0009s | 0.0002s |

### 5.3 Sorted Listing

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 5.3.1 | Get records sorted A-Z | 0.0064s | 0.0001s |
| 5.3.2 | Get records sorted Z-A | 0.0078s | 0.0001s |
| 5.3.3 | Get records sorted by date | 0.0083s | 0.0002s |
| 5.3.4 | Multi-field sorting | 0.0007s | 0.0002s |
| 5.3.5 | Sort using custom comparator | 0.0083s | 0.0001s |

### 5.4 Projected Listing

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 5.4.1 | Get only specified fields | 0.0007s | 0.0001s |
| 5.4.2 | Get all fields except specified | 0.0007s | 0.0001s |
| 5.4.3 | Include calculated fields | 0.0056s | 0.0001s |
| 5.4.4 | Project nested fields | 0.0056s | 0.0001s |

### 5.5 Edge Cases

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 5.5.1 | List operations on empty file should return empty results | 0.0001s | 0.0000s |
| 5.5.2 | List operations handle records with missing fields gracefully | 0.0056s | 0.0002s |
| 5.5.3 | List operations handle null/None values correctly | 0.0055s | 0.0001s |
| 5.5.4 | Pagination handles edge cases (page beyond range, zero page size, etc.) | 0.0000s | 0.0000s |
| 5.5.5 | Handle gracefully when file has invalid JSON lines (skip bad lines) | 0.0055s | 0.0001s |


## 6. SEARCH Operations

### 6.1 Exact Match Search

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 6.1.1 | Find records with exact match | 0.0055s | 0.0001s |
| 6.1.2 | Find record by identifier | 0.0007s | 0.0001s |
| 6.1.3 | Find multiple records by IDs | 0.0008s | 0.0001s |
| 6.1.4 | Find by multiple field combination | 0.0063s | 0.0001s |

### 6.2 Pattern Matching Search

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 6.2.1 | Find records starting with pattern | 0.0008s | 0.0001s |
| 6.2.2 | Find records ending with pattern | 0.0007s | 0.0002s |
| 6.2.3 | Find records containing substring | 0.0006s | 0.0001s |
| 6.2.4 | Find records matching regular expression | 0.0007s | 0.0001s |
| 6.2.5 | Find records matching wildcard pattern | 0.0007s | 0.0001s |

### 6.3 Range Search

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 6.3.1 | Find records within number range | 0.0008s | 0.0002s |
| 6.3.2 | Find records within date range | 0.0066s | 0.0002s |
| 6.3.3 | Find records within string range | 0.0008s | 0.0001s |
| 6.3.4 | Find records within size range | 0.0085s | 0.0002s |

### 6.4 Comparison Search

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 6.4.1 | Find records where field > value | 0.0008s | 0.0001s |
| 6.4.2 | Find records where field < value | 0.0008s | 0.0001s |
| 6.4.3 | Find records where field >= value | 0.0076s | 0.0001s |
| 6.4.4 | Find records where field <= value | 0.0007s | 0.0001s |
| 6.4.5 | Find records where field != value | 0.0007s | 0.0001s |

### 6.5 Array/Collection Search

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 6.5.1 | Find records where array contains value | 0.0007s | 0.0001s |
| 6.5.2 | Find records where array length matches | 0.0082s | 0.0001s |
| 6.5.3 | Find records where any array element matches | 0.0070s | 0.0002s |
| 6.5.4 | Find records where all array elements match | 0.0062s | 0.0002s |

### 6.6 Nested Search

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 6.6.1 | Find records matching nested path | 0.0011s | 0.0001s |
| 6.6.2 | Find records in deeply nested structures | 0.0074s | 0.0001s |
| 6.6.3 | Find records in nested arrays | 0.0076s | 0.0001s |
| 6.6.4 | Find records in nested objects | 0.0087s | 0.0001s |

### 6.7 Full-Text Search

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 6.7.1 | Search across all text content | 0.0008s | 0.0001s |
| 6.7.2 | Search across multiple text fields | 0.0007s | 0.0001s |
| 6.7.3 | Find records containing exact phrase | 0.0078s | 0.0002s |
| 6.7.4 | Combine search terms with AND/OR/NOT | 0.0059s | 0.0003s |
| 6.7.5 | Find similar text with typos | 0.0071s | 0.0002s |

### 6.8 Edge Cases

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 6.8.1 | Search operations on empty file should return empty results | 0.0001s | 0.0000s |
| 6.8.2 | Search operations handle missing fields gracefully | 0.0079s | 0.0002s |
| 6.8.3 | Search for non-existent ID should raise appropriate error | 0.0000s | 0.0000s |
| 6.8.4 | Search handles special characters in search terms | 0.0084s | 0.0001s |
| 6.8.5 | Search handles Unicode characters correctly | 0.0081s | 0.0001s |
| 6.8.6 | Search operations handle null/None values correctly | 0.0068s | 0.0001s |


## 7. BULK Operations

### 7.1 Bulk Read

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 7.1.1 | Retrieve multiple records by ID list | 0.0009s | 0.0001s |
| 7.1.2 | Retrieve multiple records by positions | 0.0008s | 0.0002s |
| 7.1.3 | Retrieve all matching records | 0.0087s | 0.0002s |
| 7.1.4 | Retrieve multiple records with field selection | 0.0065s | 0.0001s |

### 7.2 Bulk Write

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 7.2.1 | Insert multiple records at once | 0.0038s | 0.0045s |
| 7.2.2 | Update multiple records at once | 0.0063s | 0.0022s |
| 7.2.3 | Insert or update multiple records | 0.0166s | 0.0253s |
| 7.2.4 | Delete multiple records at once | 0.0181s | 0.0066s |
| 7.2.5 | Replace multiple records | 0.0069s | 0.0032s |

### 7.3 Bulk Operations with Conditions

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 7.3.1 | Update all records matching criteria | 0.0077s | 0.0024s |
| 7.3.2 | Delete all records matching criteria | 0.0174s | 0.0052s |
| 7.3.3 | Validate all before inserting | 0.0012s | 0.0021s |
| 7.3.4 | All-or-nothing bulk operations | 0.0069s | 0.0063s |

### 7.4 Edge Cases

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 7.4.1 | Bulk operations on empty file should work correctly | 0.0019s | 0.0028s |
| 7.4.2 | Bulk operations handle empty batch gracefully | 0.0000s | 0.0007s |
| 7.4.3 | Bulk operations handle null/None values correctly | 0.0088s | 0.0042s |


## 8. TRANSACTION Operations

### 8.1 Transaction Types

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 8.1.1 | Start atomic operation sequence | 0.0011s | 0.0003s |
| 8.1.2 | Apply all changes atomically | 0.0009s | 0.0013s |
| 8.1.3 | Cancel all changes | 0.0009s | 0.0011s |
| 8.1.4 | Transactions within transactions | 0.0009s | 0.0009s |
| 8.1.5 | Create checkpoint within transaction | 0.0010s | 0.0021s |

### 8.2 Transactional Operations

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 8.2.1 | Insert with transaction | 0.0022s | 0.0037s |
| 8.2.2 | Update with transaction (atomic) | 0.0015s | 0.0021s |
| 8.2.3 | Delete with transaction | 0.0007s | 0.0018s |
| 8.2.4 | Multiple operations in one transaction | 0.0131s | 0.0049s |
| 8.2.5 | Update multiple records atomically | 0.0014s | 0.0022s |


## 9. INDEX Operations

### 9.1 Index Creation

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 9.1.1 | Create index for file | 0.0006s | 0.0006s |
| 9.1.2 | Create index on ID field | 0.0000s | 0.0013s |
| 9.1.3 | Create index on specific field | 0.0000s | 0.0012s |
| 9.1.4 | Create index on multiple fields | 0.0000s | 0.0081s |
| 9.1.5 | Create index on filtered subset | 0.0000s | 0.0065s |

### 9.2 Index Maintenance

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 9.2.1 | Recreate index from scratch | 0.0000s | 0.0005s |
| 9.2.2 | Incrementally update index | 0.0000s | 0.0006s |
| 9.2.3 | Check index integrity | 0.0000s | 0.0000s |
| 9.2.4 | Remove index | 0.0000s | 0.0001s |
| 9.2.5 | Get index usage statistics | 0.0000s | 0.0000s |

### 9.3 Index Usage

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 9.3.1 | Leverage index for fast access | 0.0008s | 0.0001s |
| 9.3.2 | Use index for range queries | 0.0000s | 0.0004s |
| 9.3.3 | Use index for sorted results | 0.0000s | 0.0001s |
| 9.3.4 | Force use of specific index | 0.0000s | 0.0000s |


## 10. VALIDATION Operations

### 10.1 Schema Validation

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 10.1.1 | Check record against schema | 0.0007s | 0.0001s |
| 10.1.2 | Ensure required fields present | 0.0064s | 0.0001s |
| 10.1.3 | Check field types match schema | 0.0055s | 0.0001s |
| 10.1.4 | Check formats (email, date, etc.) | 0.0086s | 0.0001s |
| 10.1.5 | Check constraints (min, max, etc.) | 0.0061s | 0.0001s |

### 10.2 Data Validation

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 10.2.1 | Check ID/keys are unique | 0.0070s | 0.0002s |
| 10.2.2 | Check foreign key references | 0.0073s | 0.0002s |
| 10.2.3 | Check relationship integrity | 0.0056s | 0.0002s |
| 10.2.4 | Check custom business logic | 0.0067s | 0.0001s |
| 10.2.5 | Validate before inserting | 0.0013s | 0.0022s |
| 10.2.6 | Validate before updating | 0.0012s | 0.0020s |


## 11. AGGREGATION Operations

### 11.1 Counting

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 11.1.1 | Count total records | 0.0008s | 0.0000s |
| 11.1.2 | Count records matching criteria | 0.0012s | 0.0002s |
| 11.1.3 | Count unique values | 0.0059s | 0.0002s |
| 11.1.4 | Count records per group | 0.0078s | 0.0001s |

### 11.2 Mathematical Aggregations

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 11.2.1 | Sum numeric field values | 0.0071s | 0.0001s |
| 11.2.2 | Calculate average of numeric field | 0.0072s | 0.0001s |
| 11.2.3 | Find minimum value | 0.0082s | 0.0001s |
| 11.2.4 | Find maximum value | 0.0007s | 0.0001s |
| 11.2.5 | Find median value | 0.0073s | 0.0003s |
| 11.2.6 | Calculate statistical deviation | 0.0008s | 0.0002s |

### 11.3 Grouping

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 11.3.1 | Group records by field value | 0.0077s | 0.0002s |
| 11.3.2 | Group by multiple fields | 0.0007s | 0.0001s |
| 11.3.3 | Group and aggregate within groups | 0.0010s | 0.0002s |
| 11.3.4 | Group filtered records | 0.0084s | 0.0002s |


## 12. FILE Operations

### 12.1 File Management

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 12.1.1 | Initialize new storage file | 0.0002s | 0.0009s |
| 12.1.2 | Remove storage file | 0.0001s | 0.0002s |
| 12.1.3 | Clear all records from file | 0.0002s | 0.0002s |
| 12.1.4 | Remove gaps, optimize file | 0.0009s | 0.0025s |
| 12.1.5 | Create backup copy | 0.0012s | 0.0080s |
| 12.1.6 | Restore from backup | 0.0008s | 0.0012s |

### 12.2 File Information

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 12.2.1 | Get total file size | 0.0000s | 0.0000s |
| 12.2.2 | Count total records | 0.0007s | 0.0000s |
| 12.2.3 | Get file information | 0.0000s | 0.0000s |
| 12.2.4 | Get usage statistics | 0.0007s | 0.0003s |
| 12.2.5 | Verify file is valid | 0.0007s | 0.0078s |


## 13. CONCURRENCY Operations

### 13.1 Locking

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 13.1.1 | Lock for reading | 0.0007s | 0.0001s |
| 13.1.2 | Lock for writing (async) | 0.0000s | 0.0025s |
| 13.1.3 | Release acquired lock | 0.0008s | 0.0021s |
| 13.1.4 | Check if resource is locked | 0.0008s | 0.0014s |
| 13.1.5 | Detect circular lock dependencies | 0.0008s | 0.0016s |

### 13.2 Concurrent Access

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 13.2.1 | Multiple simultaneous reads (async) | 0.0008s | 0.0024s |
| 13.2.2 | Serialized writes (async) | 0.0000s | 0.0198s |
| 13.2.3 | Handle reads during writes | 0.0000s | 0.0023s |
| 13.2.4 | Version-based conflict detection | 0.0065s | 0.0087s |
| 13.2.5 | Lock-based conflict prevention | 0.0000s | 0.0210s |


## 14. ASYNC Operations

### 14.1 Async Read

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 14.1.1 | Non-blocking read by ID | 0.0027s | 0.0165s |
| 14.1.2 | Non-blocking filtered read | 0.0020s | 0.0015s |
| 14.1.3 | Non-blocking record streaming | 0.0035s | 0.0025s |
| 14.1.4 | Non-blocking bulk retrieval | 0.0022s | 0.0019s |

### 14.2 Async Write

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 14.2.1 | Non-blocking insert | 0.0032s | 0.0037s |
| 14.2.2 | Non-blocking update | 0.0026s | 0.0031s |
| 14.2.3 | Non-blocking delete | 0.0029s | 0.0030s |
| 14.2.4 | Non-blocking bulk operations | 0.0045s | 0.0046s |


## 15. UTILITY Operations

### 15.1 Data Transformation

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 15.1.1 | Apply transformation function | 0.0007s | 0.0001s |
| 15.1.2 | Transform all records | 0.0006s | 0.0001s |
| 15.1.3 | Remove records matching criteria | 0.0008s | 0.0001s |
| 15.1.4 | Aggregate records to single value | 0.0056s | 0.0001s |
| 15.1.5 | Flatten nested structures | 0.0060s | 0.0001s |
| 15.1.6 | Normalize data structure | 0.0072s | 0.0001s |

### 15.2 Data Export/Import

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 15.2.1 | Export records to JSON format | 0.0020s | 0.0005s |
| 15.2.2 | Export records to CSV format | 0.0020s | 0.0005s |
| 15.2.3 | Import records from JSON | 0.0016s | 0.0029s |
| 15.2.4 | Import records from CSV | 0.0074s | 0.0019s |
| 15.2.5 | Export filtered subset | 0.0016s | 0.0004s |
| 15.2.6 | Import with validation | 0.0098s | 0.0023s |

### 15.3 Data Migration

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 15.3.1 | Transform records to new schema | 0.0094s | 0.0002s |
| 15.3.2 | Move data between formats | 0.0017s | 0.0023s |
| 15.3.3 | Migrate between versions | 0.0021s | 0.0122s |
| 15.3.4 | Remove invalid/corrupted records | 0.0092s | 0.0127s |


## 16. MONITORING Operations

### 16.1 Performance Monitoring

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 16.1.1 | Measure operation duration | 0.0012s | 0.0001s |
| 16.1.2 | Monitor memory consumption | 0.0013s | 0.0028s |
| 16.1.3 | Count file I/O operations | 0.0013s | 0.0002s |
| 16.1.4 | Monitor cache effectiveness | 0.0001s | 0.0001s |
| 16.1.5 | Detailed performance analysis | 0.0023s | 0.0003s |

### 16.2 Health Monitoring

| Test | Title | V1 (1) | V2 (1) |
|------|-------|---------|---------|
| 16.2.1 | Verify system health | 0.0013s | 0.0092s |
| 16.2.2 | Verify data integrity | 0.0011s | 0.0088s |
| 16.2.3 | Check index validity (V2) | 0.0000s | 0.0000s |
| 16.2.4 | Check file validity | 0.0001s | 0.0000s |
| 16.2.5 | Track and report errors | 0.0008s | 0.0001s |
