add current known foriegn key fixes possibly required post upgrading
This commit is contained in:
parent
ee6699e641
commit
bcb1cd71e8
1 changed files with 29 additions and 0 deletions
|
@ -77,3 +77,32 @@ RENAME TABLE <table_name>_new TO <table_name>;
|
|||
```
|
||||
|
||||
This method is slower overall, but it is better suited for large numbers of duplicates.
|
||||
|
||||
### Resolving Possible Database Issues Post Upgrading
|
||||
|
||||
#### Foriegn Keys
|
||||
|
||||
Some of the updates include the use of foreign keys now that will bump
|
||||
into issues with previous versions, which would sometimes shove bad
|
||||
data into tables, preventing, causing errors such as below.
|
||||
|
||||
```
|
||||
Error 1452 occurred during database update:
|
||||
Cannot add or update a child row: a foreign key constraint fails (`friendica`.`#sql-10ea6_5a6d`, CONSTRAINT `#sql-10ea6_5a6d_ibfk_1` FOREIGN KEY (`contact-id`) REFERENCES `contact` (`id`))
|
||||
ALTER TABLE `thread` ADD FOREIGN KEY (`iid`) REFERENCES `item` (`id`) ON UPDATE RESTRICT ON DELETE CASCADE;
|
||||
```
|
||||
|
||||
All current known fixes for possible items that can go wrong are as below.
|
||||
|
||||
```SQL
|
||||
delete from item where `owner-id` not in (select id from contact);
|
||||
delete from item where `contact-id` not in (select id from contact);
|
||||
delete from notify where `uri-id` not in (select id from `item-uri`);
|
||||
delete from photo where `contact-id` not in (select id from contact);
|
||||
delete from thread where iid not in (select id from item);
|
||||
delete from item where `author-id` not in (select id from contact);
|
||||
delete from diaspora-interaction where uri-id not in (select id from item-uri);
|
||||
```
|
||||
|
||||
This all has been compiled as of currently from issue #9746, #9753,
|
||||
and #9878.
|
||||
|
|
Loading…
Reference in a new issue