The problem reported in
WT-2592 (for join) highlights the need for some basic sanity checking of schema operations in C. Joins are tested via the Python interface, a layer above C that is thin, except notably for type packing/unpacking. Python and Java do their own packing and unpacking and access the 'raw' API when setting and retrieving keys and data. This does not provide ample coverage, especially when testing APIs that may be aware of raw vs cooked mode. Joins do have C examples, but they are simple examples, not designed as tests. A half dozen fairly simple test cases (using a small variety of key/values) plus some tests for custom extractor and collator is what we need. I suspect other parts of the API: (async, LSM) could benefit from some similar testing.