Fix hp < 0 and D30 with D20 bonus roll
This commit is contained in:
+21
-14
@@ -570,7 +570,7 @@ Hooks.on("createChatMessage", async (message) => {
|
|||||||
|
|
||||||
// ── D30 bonus dice (defense) — resolved before grit/luck/shield ───────
|
// ── D30 bonus dice (defense) — resolved before grit/luck/shield ───────
|
||||||
if (defenseD30message && !defenseD30Processed && isPrimaryController(defender)) {
|
if (defenseD30message && !defenseD30Processed && isPrimaryController(defender)) {
|
||||||
const d30Result = await LethalFantasyUtils.processD30BonusDice(defenseD30message, "defense", null, defender)
|
const d30Result = await LethalFantasyUtils.processD30BonusDice(defenseD30message, "defense", null, defender, true)
|
||||||
if (d30Result.modifier) {
|
if (d30Result.modifier) {
|
||||||
defenseRoll += d30Result.modifier
|
defenseRoll += d30Result.modifier
|
||||||
if (d30Result.modifier > 0) {
|
if (d30Result.modifier > 0) {
|
||||||
@@ -778,11 +778,12 @@ Hooks.on("createChatMessage", async (message) => {
|
|||||||
if (mulliganRestart) continue
|
if (mulliganRestart) continue
|
||||||
|
|
||||||
// ── D30 bonus dice (attack) — resolved before grit/luck ────────────────
|
// ── D30 bonus dice (attack) — resolved before grit/luck ────────────────
|
||||||
if (attackD30message && !attackD30Processed && isPrimaryController(attacker)) {
|
if (attackD30message && !attackD30Processed) {
|
||||||
const d30Result = await LethalFantasyUtils.processD30BonusDice(attackD30message, "attack", attackNaturalRoll, attacker)
|
const canDialog = isPrimaryController(attacker)
|
||||||
|
const d30Result = await LethalFantasyUtils.processD30BonusDice(attackD30message, "attack", attackNaturalRoll, attacker, canDialog)
|
||||||
if (d30Result.modifier) {
|
if (d30Result.modifier) {
|
||||||
attackRollFinal += d30Result.modifier
|
attackRollFinal += d30Result.modifier
|
||||||
if (d30Result.modifier > 0) {
|
if (d30Result.modifier > 0 && canDialog) {
|
||||||
await createReactionMessage(attacker,
|
await createReactionMessage(attacker,
|
||||||
`<p><strong>${attackerName}</strong> gains <strong>+${d30Result.modifier}</strong> from D30 bonus die for attack.</p>`
|
`<p><strong>${attackerName}</strong> gains <strong>+${d30Result.modifier}</strong> from D30 bonus die for attack.</p>`
|
||||||
)
|
)
|
||||||
@@ -790,26 +791,32 @@ Hooks.on("createChatMessage", async (message) => {
|
|||||||
}
|
}
|
||||||
if (d30Result.specialEffect === "auto") {
|
if (d30Result.specialEffect === "auto") {
|
||||||
attackRollFinal = defenseRoll + 1 // auto-hit
|
attackRollFinal = defenseRoll + 1 // auto-hit
|
||||||
await createReactionMessage(attacker,
|
if (canDialog) {
|
||||||
`<p><strong>${attackerName}</strong> uses <strong>${d30Result.specialName || "Special Strike"}</strong> from D30 — attack automatically hits!</p>`
|
await createReactionMessage(attacker,
|
||||||
)
|
`<p><strong>${attackerName}</strong> uses <strong>${d30Result.specialName || "Special Strike"}</strong> from D30 — attack automatically hits!</p>`
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (d30Result.specialEffect === "flag") {
|
if (d30Result.specialEffect === "flag" && canDialog) {
|
||||||
await createReactionMessage(attacker,
|
await createReactionMessage(attacker,
|
||||||
`<p>D30 — <strong>${d30Result.specialName || "Special Effect"}</strong> triggered for ${attackerName}!</p>`
|
`<p>D30 — <strong>${d30Result.specialName || "Special Effect"}</strong> triggered for ${attackerName}!</p>`
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
if (d30Result.specialEffect === "bleed") {
|
if (d30Result.specialEffect === "bleed") {
|
||||||
d30Bleed = true
|
d30Bleed = true
|
||||||
await createReactionMessage(attacker,
|
if (canDialog) {
|
||||||
`<p>D30 — <strong>Bleeding/Internal Injury</strong> on hit! Damage past DR will cause a bleeding wound.</p>`
|
await createReactionMessage(attacker,
|
||||||
)
|
`<p>D30 — <strong>Bleeding/Internal Injury</strong> on hit! Damage past DR will cause a bleeding wound.</p>`
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (d30Result.specialEffect === "damageMultiplier") {
|
if (d30Result.specialEffect === "damageMultiplier") {
|
||||||
d30DamageMultiplier = d30Result.multiplier
|
d30DamageMultiplier = d30Result.multiplier
|
||||||
await createReactionMessage(attacker,
|
if (canDialog) {
|
||||||
`<p>D30 — <strong>x${d30Result.multiplier} damage</strong> before damage reduction!</p>`
|
await createReactionMessage(attacker,
|
||||||
)
|
`<p>D30 — <strong>x${d30Result.multiplier} damage</strong> before damage reduction!</p>`
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
attackD30Processed = true
|
attackD30Processed = true
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -72,9 +72,6 @@ export default class LethalFantasyActor extends Actor {
|
|||||||
/* *************************************************/
|
/* *************************************************/
|
||||||
async applyDamage(hpLoss) {
|
async applyDamage(hpLoss) {
|
||||||
let hp = this.system.hp.value + hpLoss
|
let hp = this.system.hp.value + hpLoss
|
||||||
if (hp < 0) {
|
|
||||||
hp = 0
|
|
||||||
}
|
|
||||||
this.update({ "system.hp.value": hp })
|
this.update({ "system.hp.value": hp })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ export default class LethalFantasyMonster extends foundry.abstract.TypeDataModel
|
|||||||
}
|
}
|
||||||
|
|
||||||
schema.hp = new fields.SchemaField({
|
schema.hp = new fields.SchemaField({
|
||||||
value: new fields.NumberField({ ...requiredInteger, initial: 1, min: 0 }),
|
value: new fields.NumberField({ ...requiredInteger, initial: 1 }),
|
||||||
average: new fields.NumberField({ ...requiredInteger, initial: 1, min: 0 }),
|
average: new fields.NumberField({ ...requiredInteger, initial: 1, min: 0 }),
|
||||||
max: new fields.NumberField({ ...requiredInteger, initial: 1, min: 0 }),
|
max: new fields.NumberField({ ...requiredInteger, initial: 1, min: 0 }),
|
||||||
wounds: new fields.ArrayField(new fields.SchemaField(woundFieldSchema), {
|
wounds: new fields.ArrayField(new fields.SchemaField(woundFieldSchema), {
|
||||||
|
|||||||
+23
-7
@@ -548,7 +548,7 @@ export default class LethalFantasyUtils {
|
|||||||
* @param {Object} actor The actor (for dice3d display)
|
* @param {Object} actor The actor (for dice3d display)
|
||||||
* @returns {Promise<{modifier: number, specialEffect: string|null, specialName: string|null}>}
|
* @returns {Promise<{modifier: number, specialEffect: string|null, specialName: string|null}>}
|
||||||
*/
|
*/
|
||||||
static async processD30BonusDice(d30Message, side, naturalRoll = null, actor = null) {
|
static async processD30BonusDice(d30Message, side, naturalRoll = null, actor = null, canDialog = true) {
|
||||||
if (!d30Message) return { modifier: 0, specialEffect: null, specialName: null }
|
if (!d30Message) return { modifier: 0, specialEffect: null, specialName: null }
|
||||||
|
|
||||||
const validTargets = side === "attack" ? ["attack", "spell_attack"] : ["defense", "spell_defense"]
|
const validTargets = side === "attack" ? ["attack", "spell_attack"] : ["defense", "spell_defense"]
|
||||||
@@ -556,12 +556,26 @@ export default class LethalFantasyUtils {
|
|||||||
// ── Simple bonus_dice type ── auto-roll if target matches
|
// ── Simple bonus_dice type ── auto-roll if target matches
|
||||||
if (d30Message.type === "bonus_dice") {
|
if (d30Message.type === "bonus_dice") {
|
||||||
if (!validTargets.includes(d30Message.target)) return { modifier: 0, specialEffect: null, specialName: null }
|
if (!validTargets.includes(d30Message.target)) return { modifier: 0, specialEffect: null, specialName: null }
|
||||||
const modifier = await this._rollD30BonusDie(d30Message.dice, actor)
|
const modifier = await this._rollD30BonusDie(d30Message.dice, actor, !canDialog)
|
||||||
return { modifier, specialEffect: null, specialName: null }
|
return { modifier, specialEffect: null, specialName: null }
|
||||||
}
|
}
|
||||||
|
|
||||||
// ── Choice type ── present all options to the player
|
// ── Choice type ── present all options to the player
|
||||||
if (d30Message.type === "choice") {
|
if (d30Message.type === "choice") {
|
||||||
|
// Try to find a bonus_dice option matching this side
|
||||||
|
const autoBonus = d30Message.choices.find(c => c.type === "bonus_dice" && validTargets.includes(c.target))
|
||||||
|
|
||||||
|
// If we can't show dialogs (wrong client), auto-roll bonus dice if available
|
||||||
|
if (!canDialog) {
|
||||||
|
if (autoBonus) {
|
||||||
|
const modifier = await this._rollD30BonusDie(autoBonus.dice, actor, true)
|
||||||
|
return { modifier, specialEffect: null, specialName: null }
|
||||||
|
}
|
||||||
|
// No bonus dice available on this side — just report as flag
|
||||||
|
const first = d30Message.choices[0]
|
||||||
|
return { modifier: 0, specialEffect: "flag", specialName: first?.type || "choice" }
|
||||||
|
}
|
||||||
|
|
||||||
const buttons = d30Message.choices.map(c => {
|
const buttons = d30Message.choices.map(c => {
|
||||||
let label
|
let label
|
||||||
let icon
|
let icon
|
||||||
@@ -642,17 +656,19 @@ export default class LethalFantasyUtils {
|
|||||||
* @param {Object} actor Actor for chat message speaker
|
* @param {Object} actor Actor for chat message speaker
|
||||||
* @returns {Promise<number>} The roll total
|
* @returns {Promise<number>} The roll total
|
||||||
*/
|
*/
|
||||||
static async _rollD30BonusDie(formula, actor) {
|
static async _rollD30BonusDie(formula, actor, silent = false) {
|
||||||
const cleaned = formula.replace(/NE$/i, "").replace("E", "")
|
const cleaned = formula.replace(/NE$/i, "").replace("E", "")
|
||||||
const roll = new Roll(cleaned)
|
const roll = new Roll(cleaned)
|
||||||
await roll.evaluate()
|
await roll.evaluate()
|
||||||
if (game?.dice3d) {
|
if (game?.dice3d) {
|
||||||
await game.dice3d.showForRoll(roll, game.user, true)
|
await game.dice3d.showForRoll(roll, game.user, true)
|
||||||
}
|
}
|
||||||
await ChatMessage.create({
|
if (!silent) {
|
||||||
content: `<p>D30 bonus: rolled <strong>${cleaned.toUpperCase()}</strong> = <strong>${roll.total}</strong></p>`,
|
await ChatMessage.create({
|
||||||
speaker: ChatMessage.getSpeaker({ actor })
|
content: `<p>D30 bonus: rolled <strong>${cleaned.toUpperCase()}</strong> = <strong>${roll.total}</strong></p>`,
|
||||||
})
|
speaker: ChatMessage.getSpeaker({ actor })
|
||||||
|
})
|
||||||
|
}
|
||||||
return roll.total
|
return roll.total
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
MANIFEST-000627
|
MANIFEST-000631
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/06/10-19:56:01.455200 7f301cbff6c0 Recovering log #625
|
2026/06/11-20:25:36.058631 7f37427ed6c0 Recovering log #629
|
||||||
2026/06/10-19:56:01.464323 7f301cbff6c0 Delete type=3 #623
|
2026/06/11-20:25:36.068520 7f37427ed6c0 Delete type=3 #627
|
||||||
2026/06/10-19:56:01.464355 7f301cbff6c0 Delete type=0 #625
|
2026/06/11-20:25:36.068574 7f37427ed6c0 Delete type=0 #629
|
||||||
2026/06/10-20:16:07.843239 7f2fce7fc6c0 Level-0 table #630: started
|
2026/06/11-20:41:45.938413 7f3740fff6c0 Level-0 table #634: started
|
||||||
2026/06/10-20:16:07.843267 7f2fce7fc6c0 Level-0 table #630: 0 bytes OK
|
2026/06/11-20:41:45.938512 7f3740fff6c0 Level-0 table #634: 0 bytes OK
|
||||||
2026/06/10-20:16:07.849298 7f2fce7fc6c0 Delete type=0 #628
|
2026/06/11-20:41:45.945312 7f3740fff6c0 Delete type=0 #632
|
||||||
2026/06/10-20:16:07.849522 7f2fce7fc6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
2026/06/11-20:41:45.965586 7f3740fff6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
||||||
2026/06/10-20:16:07.849556 7f2fce7fc6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
2026/06/11-20:41:45.965944 7f3740fff6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/05/25-11:43:40.059603 7f88315ff6c0 Recovering log #621
|
2026/06/10-19:56:01.455200 7f301cbff6c0 Recovering log #625
|
||||||
2026/05/25-11:43:40.071136 7f88315ff6c0 Delete type=3 #619
|
2026/06/10-19:56:01.464323 7f301cbff6c0 Delete type=3 #623
|
||||||
2026/05/25-11:43:40.071202 7f88315ff6c0 Delete type=0 #621
|
2026/06/10-19:56:01.464355 7f301cbff6c0 Delete type=0 #625
|
||||||
2026/05/25-12:29:17.727995 7f87e2ffd6c0 Level-0 table #626: started
|
2026/06/10-20:16:07.843239 7f2fce7fc6c0 Level-0 table #630: started
|
||||||
2026/05/25-12:29:17.728028 7f87e2ffd6c0 Level-0 table #626: 0 bytes OK
|
2026/06/10-20:16:07.843267 7f2fce7fc6c0 Level-0 table #630: 0 bytes OK
|
||||||
2026/05/25-12:29:17.733783 7f87e2ffd6c0 Delete type=0 #624
|
2026/06/10-20:16:07.849298 7f2fce7fc6c0 Delete type=0 #628
|
||||||
2026/05/25-12:29:17.740143 7f87e2ffd6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
2026/06/10-20:16:07.849522 7f2fce7fc6c0 Manual compaction at level-0 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
||||||
2026/05/25-12:29:17.740167 7f87e2ffd6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
2026/06/10-20:16:07.849556 7f2fce7fc6c0 Manual compaction at level-1 from '!folders!ATr9wZhg5uTVTksM' @ 72057594037927935 : 1 .. '!items!zw9RQocTdz3HRjZK' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000624
|
MANIFEST-000628
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/06/10-19:56:01.470668 7f2fcffff6c0 Recovering log #622
|
2026/06/11-20:25:36.074598 7f37437ef6c0 Recovering log #626
|
||||||
2026/06/10-19:56:01.480292 7f2fcffff6c0 Delete type=3 #620
|
2026/06/11-20:25:36.084983 7f37437ef6c0 Delete type=3 #624
|
||||||
2026/06/10-19:56:01.480316 7f2fcffff6c0 Delete type=0 #622
|
2026/06/11-20:25:36.085075 7f37437ef6c0 Delete type=0 #626
|
||||||
2026/06/10-20:16:07.810643 7f2fce7fc6c0 Level-0 table #627: started
|
2026/06/11-20:41:45.965954 7f3740fff6c0 Level-0 table #631: started
|
||||||
2026/06/10-20:16:07.810662 7f2fce7fc6c0 Level-0 table #627: 0 bytes OK
|
2026/06/11-20:41:45.965991 7f3740fff6c0 Level-0 table #631: 0 bytes OK
|
||||||
2026/06/10-20:16:07.816355 7f2fce7fc6c0 Delete type=0 #625
|
2026/06/11-20:41:45.972550 7f3740fff6c0 Delete type=0 #629
|
||||||
2026/06/10-20:16:07.823439 7f2fce7fc6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
2026/06/11-20:41:45.992980 7f3740fff6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
||||||
2026/06/10-20:16:07.823453 7f2fce7fc6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
2026/06/11-20:41:45.993323 7f3740fff6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/05/25-11:43:40.077580 7f87e37fe6c0 Recovering log #618
|
2026/06/10-19:56:01.470668 7f2fcffff6c0 Recovering log #622
|
||||||
2026/05/25-11:43:40.087750 7f87e37fe6c0 Delete type=3 #616
|
2026/06/10-19:56:01.480292 7f2fcffff6c0 Delete type=3 #620
|
||||||
2026/05/25-11:43:40.087800 7f87e37fe6c0 Delete type=0 #618
|
2026/06/10-19:56:01.480316 7f2fcffff6c0 Delete type=0 #622
|
||||||
2026/05/25-12:29:17.758832 7f87e2ffd6c0 Level-0 table #623: started
|
2026/06/10-20:16:07.810643 7f2fce7fc6c0 Level-0 table #627: started
|
||||||
2026/05/25-12:29:17.758858 7f87e2ffd6c0 Level-0 table #623: 0 bytes OK
|
2026/06/10-20:16:07.810662 7f2fce7fc6c0 Level-0 table #627: 0 bytes OK
|
||||||
2026/05/25-12:29:17.764622 7f87e2ffd6c0 Delete type=0 #621
|
2026/06/10-20:16:07.816355 7f2fce7fc6c0 Delete type=0 #625
|
||||||
2026/05/25-12:29:17.777473 7f87e2ffd6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
2026/06/10-20:16:07.823439 7f2fce7fc6c0 Manual compaction at level-0 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
||||||
2026/05/25-12:29:17.784124 7f87e2ffd6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
2026/06/10-20:16:07.823453 7f2fce7fc6c0 Manual compaction at level-1 from '!folders!yPWGvxHJbDNHVSnY' @ 72057594037927935 : 1 .. '!items!x5gLtqlW4sdDmHTd' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000629
|
MANIFEST-000633
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/06/10-19:56:01.439055 7f2fcffff6c0 Recovering log #627
|
2026/06/11-20:25:36.041244 7f3742fee6c0 Recovering log #631
|
||||||
2026/06/10-19:56:01.451210 7f2fcffff6c0 Delete type=3 #625
|
2026/06/11-20:25:36.052153 7f3742fee6c0 Delete type=3 #629
|
||||||
2026/06/10-19:56:01.451236 7f2fcffff6c0 Delete type=0 #627
|
2026/06/11-20:25:36.052218 7f3742fee6c0 Delete type=0 #631
|
||||||
2026/06/10-20:16:07.804529 7f2fce7fc6c0 Level-0 table #632: started
|
2026/06/11-20:41:45.958653 7f3740fff6c0 Level-0 table #636: started
|
||||||
2026/06/10-20:16:07.804550 7f2fce7fc6c0 Level-0 table #632: 0 bytes OK
|
2026/06/11-20:41:45.958703 7f3740fff6c0 Level-0 table #636: 0 bytes OK
|
||||||
2026/06/10-20:16:07.810504 7f2fce7fc6c0 Delete type=0 #630
|
2026/06/11-20:41:45.965435 7f3740fff6c0 Delete type=0 #634
|
||||||
2026/06/10-20:16:07.823431 7f2fce7fc6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
2026/06/11-20:41:45.965798 7f3740fff6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
||||||
2026/06/10-20:16:07.823457 7f2fce7fc6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
2026/06/11-20:41:45.965918 7f3740fff6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/05/25-11:43:40.044921 7f87e3fff6c0 Recovering log #623
|
2026/06/10-19:56:01.439055 7f2fcffff6c0 Recovering log #627
|
||||||
2026/05/25-11:43:40.054992 7f87e3fff6c0 Delete type=3 #621
|
2026/06/10-19:56:01.451210 7f2fcffff6c0 Delete type=3 #625
|
||||||
2026/05/25-11:43:40.055048 7f87e3fff6c0 Delete type=0 #623
|
2026/06/10-19:56:01.451236 7f2fcffff6c0 Delete type=0 #627
|
||||||
2026/05/25-12:29:17.710484 7f87e2ffd6c0 Level-0 table #628: started
|
2026/06/10-20:16:07.804529 7f2fce7fc6c0 Level-0 table #632: started
|
||||||
2026/05/25-12:29:17.710568 7f87e2ffd6c0 Level-0 table #628: 0 bytes OK
|
2026/06/10-20:16:07.804550 7f2fce7fc6c0 Level-0 table #632: 0 bytes OK
|
||||||
2026/05/25-12:29:17.716928 7f87e2ffd6c0 Delete type=0 #626
|
2026/06/10-20:16:07.810504 7f2fce7fc6c0 Delete type=0 #630
|
||||||
2026/05/25-12:29:17.740121 7f87e2ffd6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
2026/06/10-20:16:07.823431 7f2fce7fc6c0 Manual compaction at level-0 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
||||||
2026/05/25-12:29:17.758707 7f87e2ffd6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
2026/06/10-20:16:07.823457 7f2fce7fc6c0 Manual compaction at level-1 from '!folders!7j8H7DbmBb9Uza2X' @ 72057594037927935 : 1 .. '!items!zt8s7564ep1La4XQ' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000324
|
MANIFEST-000328
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/06/10-19:56:01.497944 7f301cbff6c0 Recovering log #322
|
2026/06/11-20:25:36.103531 7f37437ef6c0 Recovering log #326
|
||||||
2026/06/10-19:56:01.506991 7f301cbff6c0 Delete type=3 #320
|
2026/06/11-20:25:36.114200 7f37437ef6c0 Delete type=3 #324
|
||||||
2026/06/10-19:56:01.507034 7f301cbff6c0 Delete type=0 #322
|
2026/06/11-20:25:36.114249 7f37437ef6c0 Delete type=0 #326
|
||||||
2026/06/10-20:16:07.829554 7f2fce7fc6c0 Level-0 table #327: started
|
2026/06/11-20:41:45.972686 7f3740fff6c0 Level-0 table #331: started
|
||||||
2026/06/10-20:16:07.829571 7f2fce7fc6c0 Level-0 table #327: 0 bytes OK
|
2026/06/11-20:41:45.972724 7f3740fff6c0 Level-0 table #331: 0 bytes OK
|
||||||
2026/06/10-20:16:07.836328 7f2fce7fc6c0 Delete type=0 #325
|
2026/06/11-20:41:45.979068 7f3740fff6c0 Delete type=0 #329
|
||||||
2026/06/10-20:16:07.849487 7f2fce7fc6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
2026/06/11-20:41:45.993007 7f3740fff6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
||||||
2026/06/10-20:16:07.849533 7f2fce7fc6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
2026/06/11-20:41:45.993301 7f3740fff6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/05/25-11:43:40.107633 7f8830dfe6c0 Recovering log #318
|
2026/06/10-19:56:01.497944 7f301cbff6c0 Recovering log #322
|
||||||
2026/05/25-11:43:40.118039 7f8830dfe6c0 Delete type=3 #316
|
2026/06/10-19:56:01.506991 7f301cbff6c0 Delete type=3 #320
|
||||||
2026/05/25-11:43:40.118104 7f8830dfe6c0 Delete type=0 #318
|
2026/06/10-19:56:01.507034 7f301cbff6c0 Delete type=0 #322
|
||||||
2026/05/25-12:29:17.777484 7f87e2ffd6c0 Level-0 table #323: started
|
2026/06/10-20:16:07.829554 7f2fce7fc6c0 Level-0 table #327: started
|
||||||
2026/05/25-12:29:17.777511 7f87e2ffd6c0 Level-0 table #323: 0 bytes OK
|
2026/06/10-20:16:07.829571 7f2fce7fc6c0 Level-0 table #327: 0 bytes OK
|
||||||
2026/05/25-12:29:17.784021 7f87e2ffd6c0 Delete type=0 #321
|
2026/06/10-20:16:07.836328 7f2fce7fc6c0 Delete type=0 #325
|
||||||
2026/05/25-12:29:17.784188 7f87e2ffd6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
2026/06/10-20:16:07.849487 7f2fce7fc6c0 Manual compaction at level-0 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
||||||
2026/05/25-12:29:17.803354 7f87e2ffd6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
2026/06/10-20:16:07.849533 7f2fce7fc6c0 Manual compaction at level-1 from '!folders!37mu4dxsSuftlnmP' @ 72057594037927935 : 1 .. '!items!zKOpU34oLziGJW6y' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
BIN
Binary file not shown.
@@ -1 +1 @@
|
|||||||
MANIFEST-000623
|
MANIFEST-000627
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/06/10-19:56:01.483620 7f2fceffd6c0 Recovering log #621
|
2026/06/11-20:25:36.088952 7f37427ed6c0 Recovering log #625
|
||||||
2026/06/10-19:56:01.493981 7f2fceffd6c0 Delete type=3 #619
|
2026/06/11-20:25:36.100017 7f37427ed6c0 Delete type=3 #623
|
||||||
2026/06/10-19:56:01.494004 7f2fceffd6c0 Delete type=0 #621
|
2026/06/11-20:25:36.100073 7f37427ed6c0 Delete type=0 #625
|
||||||
2026/06/10-20:16:07.797521 7f2fce7fc6c0 Level-0 table #626: started
|
2026/06/11-20:41:45.945442 7f3740fff6c0 Level-0 table #630: started
|
||||||
2026/06/10-20:16:07.797566 7f2fce7fc6c0 Level-0 table #626: 0 bytes OK
|
2026/06/11-20:41:45.945486 7f3740fff6c0 Level-0 table #630: 0 bytes OK
|
||||||
2026/06/10-20:16:07.804440 7f2fce7fc6c0 Delete type=0 #624
|
2026/06/11-20:41:45.951778 7f3740fff6c0 Delete type=0 #628
|
||||||
2026/06/10-20:16:07.823416 7f2fce7fc6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
2026/06/11-20:41:45.965603 7f3740fff6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
||||||
2026/06/10-20:16:07.823449 7f2fce7fc6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
2026/06/11-20:41:45.965769 7f3740fff6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
2026/05/25-11:43:40.093877 7f87e3fff6c0 Recovering log #617
|
2026/06/10-19:56:01.483620 7f2fceffd6c0 Recovering log #621
|
||||||
2026/05/25-11:43:40.103670 7f87e3fff6c0 Delete type=3 #615
|
2026/06/10-19:56:01.493981 7f2fceffd6c0 Delete type=3 #619
|
||||||
2026/05/25-11:43:40.103720 7f87e3fff6c0 Delete type=0 #617
|
2026/06/10-19:56:01.494004 7f2fceffd6c0 Delete type=0 #621
|
||||||
2026/05/25-12:29:17.764689 7f87e2ffd6c0 Level-0 table #622: started
|
2026/06/10-20:16:07.797521 7f2fce7fc6c0 Level-0 table #626: started
|
||||||
2026/05/25-12:29:17.764705 7f87e2ffd6c0 Level-0 table #622: 0 bytes OK
|
2026/06/10-20:16:07.797566 7f2fce7fc6c0 Level-0 table #626: 0 bytes OK
|
||||||
2026/05/25-12:29:17.770486 7f87e2ffd6c0 Delete type=0 #620
|
2026/06/10-20:16:07.804440 7f2fce7fc6c0 Delete type=0 #624
|
||||||
2026/05/25-12:29:17.784104 7f87e2ffd6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
2026/06/10-20:16:07.823416 7f2fce7fc6c0 Manual compaction at level-0 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
||||||
2026/05/25-12:29:17.784130 7f87e2ffd6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
2026/06/10-20:16:07.823449 7f2fce7fc6c0 Manual compaction at level-1 from '!folders!mnO9OzE7BEE2KDfh' @ 72057594037927935 : 1 .. '!items!zkK6ixtCsCw3RH9X' @ 0 : 0; will stop at (end)
|
||||||
|
|||||||
BIN
Binary file not shown.
Reference in New Issue
Block a user