Compare commits
2 Commits
cc40dfd727
...
213ccf981c
| Author | SHA1 | Date |
|---|---|---|
|
|
213ccf981c | |
|
|
c735a74623 |
|
|
@ -349,7 +349,7 @@ export class Cache extends Feature {
|
|||
opers.forEach((oper) => {
|
||||
const { entity, operation } = oper;
|
||||
this.cacheStore.operate(entity, operation, this.context, {
|
||||
checkerTypes: ['logical'], // 这里不能检查data,不然在数据没填完前会有大量异常
|
||||
checkerTypes: ['logical'],
|
||||
dontCollect: true,
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import { judgeRelation } from "oak-domain/lib/store/relation";
|
|||
import { Feature } from '../types/Feature';
|
||||
import { generateNewId } from 'oak-domain/lib/utils/uuid';
|
||||
export const MODI_NEXT_PATH_SUFFIX = ':next';
|
||||
const START_LSN = 100;
|
||||
function mergeOperation(schema, entity, oper1, oper2) {
|
||||
const { action, data } = oper2;
|
||||
const operMerged = cloneDeep(oper1);
|
||||
|
|
@ -90,7 +91,7 @@ class UpdateLogManager {
|
|||
constructor(schema, entity, maxLsn) {
|
||||
this.schema = schema,
|
||||
this.entity = entity,
|
||||
this.maxLsn = maxLsn || 0;
|
||||
this.maxLsn = maxLsn || START_LSN;
|
||||
}
|
||||
/**
|
||||
* 合并两个filter完全一致的更新
|
||||
|
|
@ -165,7 +166,7 @@ class UpdateLogManager {
|
|||
rollback(lsn) {
|
||||
const newLogs = this.logs.filter(ele => ele.lsn <= lsn);
|
||||
this.logs = newLogs;
|
||||
this.maxLsn = lsn;
|
||||
this.maxLsn = lsn || START_LSN;
|
||||
}
|
||||
makeOperations() {
|
||||
const opers = {};
|
||||
|
|
@ -1431,7 +1432,7 @@ class SingleNode extends Node {
|
|||
saveRefreshResult(data) {
|
||||
const ids = Object.keys(data);
|
||||
assert(ids.length === 1);
|
||||
this.id = ids[0];
|
||||
this.setId(ids[0]);
|
||||
this.sr = data[ids[0]];
|
||||
this.passRsToChild();
|
||||
// this.publish();
|
||||
|
|
@ -1743,7 +1744,7 @@ export class RunningTree extends Feature {
|
|||
this.nodeCountDict = {};
|
||||
this.pageNodeStack = {};
|
||||
this.singletonDict = {};
|
||||
this.logSerailNumber = 100;
|
||||
this.logSerailNumber = START_LSN;
|
||||
}
|
||||
increaseNodeCount(path) {
|
||||
if (!this.nodeCountDict[path]) {
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@ import { ActionDef } from '../types/Page';
|
|||
import { generateNewId } from 'oak-domain/lib/utils/uuid';
|
||||
|
||||
export const MODI_NEXT_PATH_SUFFIX = ':next';
|
||||
const START_LSN = 100;
|
||||
|
||||
type LegalOperation<ED extends EntityDict & BaseEntityDict, T extends keyof ED> = ED[T]['CreateSingle']
|
||||
| ED[T]['Update']
|
||||
|
|
@ -130,7 +131,7 @@ class UpdateLogManager<ED extends EntityDict & BaseEntityDict, T extends keyof E
|
|||
constructor(schema: StorageSchema<ED>, entity: T, maxLsn?: number) {
|
||||
this.schema = schema,
|
||||
this.entity = entity,
|
||||
this.maxLsn = maxLsn || 0;
|
||||
this.maxLsn = maxLsn || START_LSN;
|
||||
}
|
||||
/**
|
||||
* 合并两个filter完全一致的更新
|
||||
|
|
@ -213,7 +214,7 @@ class UpdateLogManager<ED extends EntityDict & BaseEntityDict, T extends keyof E
|
|||
ele => ele.lsn <= lsn
|
||||
);
|
||||
this.logs = newLogs;
|
||||
this.maxLsn = lsn;
|
||||
this.maxLsn = lsn || START_LSN;
|
||||
}
|
||||
|
||||
makeOperations() {
|
||||
|
|
@ -1728,7 +1729,7 @@ class SingleNode<ED extends EntityDict & BaseEntityDict,
|
|||
saveRefreshResult(data: Record<string, any>) {
|
||||
const ids = Object.keys(data);
|
||||
assert(ids.length === 1);
|
||||
this.id = ids[0];
|
||||
this.setId(ids[0]);
|
||||
this.sr = data[ids[0]!];
|
||||
this.passRsToChild();
|
||||
|
||||
|
|
@ -2107,7 +2108,7 @@ export class RunningTree<ED extends EntityDict & BaseEntityDict> extends Feature
|
|||
this.nodeCountDict = {};
|
||||
this.pageNodeStack = {};
|
||||
this.singletonDict = {};
|
||||
this.logSerailNumber = 100;
|
||||
this.logSerailNumber = START_LSN;
|
||||
}
|
||||
|
||||
private increaseNodeCount(path: string) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue