Disable part of the migration 58

Co-authored-by: Fedor Indutny <79877362+indutny-signal@users.noreply.github.com>
This commit is contained in:
automated-signal 2022-05-18 10:08:42 -07:00 committed by GitHub
parent 2a55328128
commit 7cb97843f6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 83 deletions

View File

@ -21,13 +21,17 @@ export default function updateToSchemaVersion58(
`
--- Promote unread status in JSON to SQL column
UPDATE messages
SET
readStatus = ${ReadStatus.Unread},
seenStatus = ${SeenStatus.Unseen}
WHERE
json_extract(json, '$.unread') IS true OR
json_extract(json, '$.unread') IS 1;
-- NOTE: This was disabled because the 'unread' json field was deprecated
-- in b0750e5f4e1f79f0f177b17cbe06d688431f948d, but the old value was kept
-- in the messages created before the release of that commit.
--
-- UPDATE messages
-- SET
-- readStatus = ${ReadStatus.Unread},
-- seenStatus = ${SeenStatus.Unseen}
-- WHERE
-- json_extract(json, '$.unread') IS true OR
-- json_extract(json, '$.unread') IS 1;
--- Clean up all old messages that still have a null read status
--- Note: we don't need to update seenStatus, because that was defaulted to zero

View File

@ -2028,82 +2028,6 @@ describe('SQL migrations test', () => {
});
describe('updateToSchemaVersion58', () => {
it('updates readStatus/seenStatus for messages with unread: true/1 in JSON', () => {
const MESSAGE_ID_1 = generateGuid();
const MESSAGE_ID_2 = generateGuid();
const MESSAGE_ID_3 = generateGuid();
const MESSAGE_ID_4 = generateGuid();
const CONVERSATION_ID = generateGuid();
updateToVersion(57);
// prettier-ignore
db.exec(
`
INSERT INTO messages
(id, conversationId, type, json)
VALUES
('${MESSAGE_ID_1}', '${CONVERSATION_ID}', 'incoming', '${JSON.stringify(
{ unread: true }
)}'),
('${MESSAGE_ID_2}', '${CONVERSATION_ID}', 'incoming', '${JSON.stringify(
{ unread: 1 }
)}'),
('${MESSAGE_ID_3}', '${CONVERSATION_ID}', 'incoming', '${JSON.stringify(
{ unread: undefined }
)}'),
('${MESSAGE_ID_4}', '${CONVERSATION_ID}', 'incoming', '${JSON.stringify(
{ unread: 0 }
)}');
`
);
assert.strictEqual(
db.prepare('SELECT COUNT(*) FROM messages;').pluck().get(),
4,
'starting total'
);
updateToVersion(58);
assert.strictEqual(
db.prepare('SELECT COUNT(*) FROM messages;').pluck().get(),
4,
'ending total'
);
assert.strictEqual(
db
.prepare(
`SELECT COUNT(*) FROM messages WHERE readStatus = ${ReadStatus.Unread};`
)
.pluck()
.get(),
2,
'ending unread count'
);
assert.strictEqual(
db
.prepare(
`SELECT COUNT(*) FROM messages WHERE seenStatus = ${SeenStatus.Unseen};`
)
.pluck()
.get(),
2,
'ending unread count'
);
assert.strictEqual(
db
.prepare(
`SELECT readStatus FROM messages WHERE id = '${MESSAGE_ID_2}' LIMIT 1;`
)
.pluck()
.get(),
ReadStatus.Unread,
'checking read status for message2'
);
});
it('updates unseenStatus for previously-unread messages', () => {
const MESSAGE_ID_1 = generateGuid();
const MESSAGE_ID_2 = generateGuid();