Integrity check incorrect field indexes

@jhmpub

Thanks for using Codebook and posting to the discussion forum with this question.

The situation you outlined could occur if you edited/added/removed fields on the same Entry on two different devices and then synced.

Here’s a simplified example which can cause this:

Imagine you have an Entry which was already synced on both devices and is fully up to date. It was 3 fields:

Index 1: Username
Index 2: Password
Index 3: Website

One device 1, you add a new Field at the end of the list Note, so the Entry on device 1 looks like this:

Index 1: Username
Index 2: Password
Index 3: Website
Index 4: Note

Without syncing device 1 + device 2 first, on device 2, you add a Note field at the end of the same entry. The entry on device 2 now looks like this:

Index 1: Username
Index 2: Password
Index 3: Website
Index 4: Note

Now you sync device 1, then device 2, then device 1 again to Google Drive. The result is that both devices will have the same data on both side, but the indexes of the newly added Note fields on each side will both be Index 4. So it might look something like this prior to Integrity Check:

Index 1: Username
Index 2: Password
Index 3: Website
Index 4: Note << added by device 1
Index 4: Note << added by device 2

When running Integrity Check, it recognizes that there are incorrect field indexes on this Entry and fixes them up so that they are correctly ascending.

A similar issue could occur if you deleted a field on one device, and prior to syncing it, added/moved other fields around on the same Entry on the other device.

Does this sound similar to the steps you could have taken when this issue occurred?

Typically to avoid this issue, we’d recommend trying to edit an Entry on one device at a time.

This issue should be a lot less likely to occur in Codebook 5 when using Codebook Cloud: Codebook Cloud - Beta Testers Wanted!