Skip to content

[LPD] Automatically decide whether to inject & use memory cell order

Thomas Kluyver requested to merge feat/lpd-use-cell-order-auto into master

Description

LPD constants can be injected with or without the memory cell order as a condition; the default is without. Constant lookups have to match an exact set of conditions, so if you inject constants with cell order, you have to supply the cell order when querying them, and vice versa. This leads to confusion, wasted time and poorer data quality when the wrong constants are used.

Hazem told us that the memory cell order is only important when the data wraps around (reaches the end of the available memory cells and goes back to fill in gaps).

So the new plan is to use the cell order condition only when cell IDs wrap around. If cell IDs are monotonic, we'll inject and look up constants without the memory cell order, like before.

The boolean parameters for using the cell order become strings with auto/always/never options, with 'auto' the new default. This will mean changing the config for some past proposals to allow for recorrection, but this option seemed clearer than keeping the boolean and having either True or False implicitly mean 'auto'.

How Has This Been Tested?

TBD

Types of changes

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected) (Potentially)

Checklist:

  • My code follows the code style of this project.

Reviewers

@schmidtp @ahmedk @hammerd

Merge request reports