Compare commits

..

4 Commits

Author SHA1 Message Date
Book Pauk
c2adf8d5b8 Merge branch 'release/1.1.2-1' 2023-01-25 17:06:35 +07:00
Book Pauk
5c8d257923 Добавлены отладочные сообщения в журнал 2023-01-25 17:05:53 +07:00
Book Pauk
55dae33e60 "jembadb": "^5.1.7" 2023-01-25 15:46:09 +07:00
Book Pauk
57d8e9061f Merge tag '1.1.2' into develop
1.1.2
2023-01-22 20:56:12 +07:00
3 changed files with 15 additions and 9 deletions

14
package-lock.json generated
View File

@@ -22,7 +22,7 @@
"fs-extra": "^10.1.0",
"he": "^1.2.0",
"iconv-lite": "^0.6.3",
"jembadb": "^5.1.5",
"jembadb": "^5.1.7",
"localforage": "^1.10.0",
"lodash": "^4.17.21",
"minimist": "^1.2.7",
@@ -5989,9 +5989,9 @@
}
},
"node_modules/jembadb": {
"version": "5.1.5",
"resolved": "https://registry.npmjs.org/jembadb/-/jembadb-5.1.5.tgz",
"integrity": "sha512-Vb+TkTg3JVXLPTG5BiqboZjJ2wvZRONnLd2+qU4gTuaqt2JSniigbniKSl3kACAEFfuRXEjfs9dLlKWjBX2Aiw==",
"version": "5.1.7",
"resolved": "https://registry.npmjs.org/jembadb/-/jembadb-5.1.7.tgz",
"integrity": "sha512-TNZjiKQ7Zfh89Q1x25PKKtsbkxiC5uOnx953dxJEP6RqfcdR6uVpr4cf+kmyq6IQ1GhwhXTELnoTIdvLWrpEvw==",
"engines": {
"node": ">=16.16.0"
}
@@ -15154,9 +15154,9 @@
}
},
"jembadb": {
"version": "5.1.5",
"resolved": "https://registry.npmjs.org/jembadb/-/jembadb-5.1.5.tgz",
"integrity": "sha512-Vb+TkTg3JVXLPTG5BiqboZjJ2wvZRONnLd2+qU4gTuaqt2JSniigbniKSl3kACAEFfuRXEjfs9dLlKWjBX2Aiw=="
"version": "5.1.7",
"resolved": "https://registry.npmjs.org/jembadb/-/jembadb-5.1.7.tgz",
"integrity": "sha512-TNZjiKQ7Zfh89Q1x25PKKtsbkxiC5uOnx953dxJEP6RqfcdR6uVpr4cf+kmyq6IQ1GhwhXTELnoTIdvLWrpEvw=="
},
"jest-util": {
"version": "29.3.1",

View File

@@ -65,7 +65,7 @@
"fs-extra": "^10.1.0",
"he": "^1.2.0",
"iconv-lite": "^0.6.3",
"jembadb": "^5.1.5",
"jembadb": "^5.1.7",
"localforage": "^1.10.0",
"lodash": "^4.17.21",
"minimist": "^1.2.7",

View File

@@ -24,6 +24,7 @@ class JembaReaderStorage {
getCache(id) {
const obj = this.cacheMap.get(id);
//обновляем время доступа и при чтении тоже
if (obj)
obj.time = Date.now();
return obj;
@@ -118,6 +119,7 @@ class JembaReaderStorage {
//identity необходимо для работы при нестабильной связи,
//одному и тому же клиенту разрешается перезаписывать данные при расхождении на 0 или 1 ревизию
const obj = this.getCache(id) || {};
const oldIdentity = obj.identity;
const sameClient = (identity && obj.identity === identity);
if (identity && obj.identity !== identity) {
obj.identity = identity;
@@ -126,8 +128,12 @@ class JembaReaderStorage {
const revDiff = items[id].rev - check.items[id].rev;
const allowUpdate = force || revDiff === 1 || (sameClient && (revDiff === 0 || revDiff === 1));
if (!allowUpdate)
if (!allowUpdate) {
log(LM_ERR, `JembaReaderStorage-Reject: revDiff: ${revDiff}, sameClient: ${sameClient}, oldIdentity: ${oldIdentity}, identity: ${identity}`);
return {state: 'reject', items: check.items};
}
}
const db = this.db;