-
Type:
Task
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: Configuration
-
None
-
Storage Engines, Storage Engines - Persistence
-
0.753
-
None
-
None
Our default configuration string literal for connection is getting too long, and it has almost reached the ISO C99 and C11 limits.
Here are the top 5 config_entries:
| Entry | Length | Headroom to 4095 |
|---|---|---|
| wiredtiger_open_all | 4042 | 53 |
| wiredtiger_open | 4016 | 79 |
| wiredtiger_open_basecfg | 3908 | 187 |
| wiredtiger_open_usercfg | 3882 | 213 |
| WT_CONNECTION.reconfigure | 2739 | 1356 |
In fact, I can't compile my branch with a new config field anymore, because I get this:
src/config/config_def.c:4110:5: error: string literal of length 4116 exceeds maximum length 4095 that ISO C99 compilers are required to support [-Werror,-Woverlength-strings]
We need to solve this, but deprecating old fields is hard! We might need to break the config string into two or more smaller string literals.