dsdb: disable ORDERED_INTEGER with MDB pack format v1
authorAaron Haslett <aaronhaslett@catalyst.net.nz>
Thu, 23 May 2019 08:13:05 +0000 (20:13 +1200)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 29 May 2019 04:41:25 +0000 (04:41 +0000)
commit4eee09a2c17d1276b1d0be9f26b23743eec485c2
treea901a84725c923a2d6ea31a4f483b515be3398a6
parent6b4abb995215c732ff5c0bfaca2cecb7a374edff
dsdb: disable ORDERED_INTEGER with MDB pack format v1

For TDB databases, the new ORDERED_INTEGER type is disabled along with
repacking at format version 1 if GUID indexing is disabled, so all the new
database features are toggled together. This scheme doesn't work with
MDB because GUID indexing is mandatory when using MDB. However, a
downgrade path is still required so in a previous commit we added
a pack_format_override option which allows a downgrade script to force
the database to use an earlier packing format. But, the new
ORDERED_INTEGER type would still be present in MDB databases so this
patch reads the pack_format_override opaque and converts ORDERED_INTEGER
types in @ATTRIBUTES to INTEGER and doesn't write any indexes of that
type to @INDEXLIST. The @INDEXLIST will be refreshed later, on the first
transaction.

Signed-off-by: Aaron Haslett <aaronhaslett@catalyst.net.nz>
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
source4/dsdb/schema/schema_set.c