Upgrade from v14 to v25 error

MariocvMariocv Member Posts: 8
I'm currently trying to upgrade one of our older databases from v14 to v25 using the MS cookbook and I ended up with following error in Task 17 during the upgrade of Microsoft Base Application v25:
  Could not upgrade the extension 'Base Application' by 'Microsoft' from version '14.0.0.0' to '25.0.23364.25445' for tenant 'default' and company 'Southern Cross Pet Insurance' due to the following error: 'Cannot create the specified RecordId of length 448 for table 808482864 because it is invalid.' and AL stack trace: 
  "Upgrade - BaseApp"(CodeUnit 104000).UpgradeBankAccountsMobilePhoneNo line 9 - Base Application by Microsoft
  "Upgrade - BaseApp"(CodeUnit 104000).UpgradeContactMobilePhoneNo line 10 - Base Application by Microsoft
  "Upgrade - BaseApp"(CodeUnit 104000).OnUpgradePerCompany line 33 - Base Application by Microsoft
  "Upgrade Triggers"(CodeUnit 2000000008).OnUpgradePerCompany(Event) line 2

The event log also says this:
A record's keys, in table: 808482864, could not be deserialized into NavRecordId because the field type 12336 is not a valid NavType.The primary key value that caused an invalid NavType: <redacted>, startIndex: 0, and length: -1.

First, we thought the Change Log could cause this, but it apparently remains even after I had switched it off.
Has anyone ever faced an issue like this? I'm running out of ideas about what may be the cause.

Best Answer

  • MariocvMariocv Member Posts: 8
    Answer ✓
    I figured this out. In my case it was caused by the corrupted data in the Bank Account table's field "Bank Stmt. Service Record ID", so the upgrade function UpgradeBankAccountsMobilePhoneNo was not able to loop through the records (which is kinda weird, I probably saw such thing for the first time; the error message is not very helpful either). I've set up a clear value (0x) to this field in all the records via SSMS and now the upgrade went through without further errors. 

Answers

  • MariocvMariocv Member Posts: 8
    Answer ✓
    I figured this out. In my case it was caused by the corrupted data in the Bank Account table's field "Bank Stmt. Service Record ID", so the upgrade function UpgradeBankAccountsMobilePhoneNo was not able to loop through the records (which is kinda weird, I probably saw such thing for the first time; the error message is not very helpful either). I've set up a clear value (0x) to this field in all the records via SSMS and now the upgrade went through without further errors. 
Sign In or Register to comment.