mirror of
https://github.com/hcengineering/platform.git
synced 2025-06-09 09:20:54 +00:00
set min messages count per file
Signed-off-by: Kristina Fefelova <kristin.fefelova@gmail.com>
This commit is contained in:
parent
ce833c0e4a
commit
abdb6126c5
@ -17,6 +17,7 @@ interface Config {
|
||||
AccountsURL: string
|
||||
DbUrl: string
|
||||
MaxSyncAttempts: number
|
||||
MinSyncMessagesCount: number
|
||||
MessagesPerFile: number
|
||||
Port: number
|
||||
Secret: string
|
||||
@ -31,6 +32,7 @@ const config: Config = (() => {
|
||||
DbUrl: process.env.DB_URL,
|
||||
MaxSyncAttempts: parseNumber(process.env.MAX_SYNC_ATTEMPTS) ?? 3,
|
||||
MessagesPerFile: parseNumber(process.env.MESSAGES_PER_FILE) ?? 500,
|
||||
MinSyncMessagesCount: parseNumber(process.env.MIN_SYNC_MESSAGES_COUNT) ?? 30,
|
||||
Port: parseNumber(process.env.PORT),
|
||||
Secret: process.env.SECRET ?? 'secret',
|
||||
ServiceID: process.env.SERVICE_ID ?? 'msg2file-service'
|
||||
|
@ -175,7 +175,7 @@ async function applyPatchesToGroup (
|
||||
const file = await getFile(storage, ctx, workspace, group.blobId)
|
||||
const parsedFile = await parseFileStream(file)
|
||||
const patchesByMessage = groupByArray(group.patches, (it) => it.message)
|
||||
const updatedMessages: Message[] = parsedFile.messages.map((message) => {
|
||||
const updatedMessages = parsedFile.messages.map((message) => {
|
||||
const patches = patchesByMessage.get(message.id) ?? []
|
||||
if (patches.length === 0) {
|
||||
return message
|
||||
@ -183,7 +183,7 @@ async function applyPatchesToGroup (
|
||||
return applyPatches(message, patches)
|
||||
}
|
||||
})
|
||||
const blob = await uploadGroupFile(ctx, storage, workspace, parsedFile.metadata, updatedMessages)
|
||||
const blob = await uploadGroupFile(ctx, storage, workspace, parsedFile.metadata, updatedMessages.map(deserializeMessage))
|
||||
await createGroup(
|
||||
client,
|
||||
group.card,
|
||||
@ -253,6 +253,14 @@ async function newMessages2file (
|
||||
messagesFromExistingGroup.length > 0 ? messages.slice(messagesFromExistingGroup.length) : messages
|
||||
|
||||
await pushMessagesToExistingGroup(client, card, messagesFromExistingGroup, ctx, storage, workspace)
|
||||
|
||||
if (messages.length < config.MinSyncMessagesCount) {
|
||||
const ids = [...messagesFromExistingGroup].map((it) => it.id)
|
||||
await removeMessages(db, workspace, card._id, [...ids])
|
||||
await removePatches(db, workspace, card._id, [...ids])
|
||||
break
|
||||
}
|
||||
|
||||
const savedMessages = await createNewGroup(client, card, newMessages, ctx, storage, workspace)
|
||||
|
||||
const ids = [...messagesFromExistingGroup, ...savedMessages].map((it) => it.id)
|
||||
|
Loading…
Reference in New Issue
Block a user