Merge remote-tracking branch 'github/master'
Merge remote-tracking branch 'github/master'
Merge branch 'groupjoinfinder-find-fks' into joinindexpicker-fk-choices
Merge branch 'groupjoinfinder-find-fks' into joinindexpicker-fk-choices
Intermediate commit - Update the GroupJoinFinder to build plans for FK
joins outside of the DPhyper join finder to make that list smaller.
Incompleted, Other changes to support the ongoing work.
Add a configuration item "fdbsql.optimizer.fk_join_threshold" to control
when the special FKJoin processing kicks in. 

Refactor the pickJoinAndIndex() processing to use this.
Fix the JoinAndIndexPicker to deal with multiple levels of joins as
cleanly as possible. 

Update config defatult to use 8 as the starting point for processing FK
joins separately.
Disable the groups finder FK for parents with two children as the
JoinIndexFinder for FKs doesn't reorder the joins correctly.
Merge remote-tracking branch 'github/master' into joinindexpicker-fk-choices
Document existing Halloween cases
Tweak the error message for foreign key indices

"requires an index" -> "requires a unique index" in the error message for foreign keys on columns that are not (uniquely) indexed
Update test-foreign-key-ddl.yaml with updated error message on FK indices
Avoid transforming Halloween updates if only a single row is changing
Yaml test for original issue
merge louisrli: Tweak the error message for foreign key indices

Merge pull request #1172 from louisrli/sql-layer/patch-1
https://github.com/FoundationDB/sql-layer/pull/1172
merge nathanlws: Avoid Halloween transforming query for single row changes

Merge pull request #1173 from nathanlws/sql-layer/avoid-halloween-buffer-single-row
https://github.com/FoundationDB/sql-layer/pull/1173
Move persistitcli routine registration to PersistitStore
Use direct class references
Remove MonitorMXBean. Cleanup up query log management.
Add some more helpers on RoutineBuilder