leehom

Results 9 issues of leehom

分片完后,getLocalTakeOffItems,获取分配了的失效转移分片,然后从运行实例分片中移除 > public ShardingContexts getShardingContexts() { 。。。 > // 分片 > shardingService.shardingIfNecessary(); > List shardingItems = shardingService.getLocalShardingItems(); > // 重新上线? > if (isFailover) { > shardingItems.removeAll(failoverService.getLocalTakeOffItems()); > } > shardingItems.removeAll(executionService.getDisabledItems(shardingItems));...

invalid

dynamic compile and codegen other than interpreting execution can improve the performance of rule execution

enhancement

https://xie.infoq.cn/article/12ffb9991783e866394ea502f 目前处于测试阶段,有了解官方版的设计的,可以讨论一下

增加关系/图同步插件,关系数据库支持mysql/oracle,图库目前支持neo4j;同步分两步进行, 1. 同步节点,2. 同步关系,插件也有schema同步,版本4.3+; 设计 https://xie.infoq.cn/article/4977b6aa9aa588ee59e3ba8ac 同时,另一插件测试中,基于规则的转换同步, https://xie.infoq.cn/article/77c1a56d807abadefb83a944e

![xxl-job](https://github.com/xuxueli/xxl-job/assets/721472/f8a7c75b-1692-4271-9819-d894d872d8d9) 增加弹性,1到100万作业分片

![集成-xxl-job](https://github.com/user-attachments/assets/51d7df66-8f43-4730-bb8e-c0f72512d00d)

首先分析一下pendingMap的状态 ![image](https://github.com/openmessaging/dledger/assets/721472/de9d29ae-28aa-4a52-b4b2-1f83ff28e5b5) pengding请求过时,writeIndex调回到水位线+1作为写入点, - 上图的上部分是初始状态 writeIndex1 第一个批次请求;writeIndex2第二个批次请求,并已发送,pendingMap有两个数据 - 上图的下部分,writeIndex1超时,调和writeIndex,请求重新发送,但批次数量会有所不同,形成新的writeIndex1(覆盖原有),writeIndex2-x,而且writeIndex1的批量比原writeIndex1大,writeIndex2-x比原writeIndex2大,pendingMap有3个数据 此时有两条发送线,不能说writeIndex2已废弃,可能跟随者已处理了原writeIndex1,只是回复失败,处理写入分析跟随者怎样处理 再看跟随者的处理 ![image](https://github.com/openmessaging/dledger/assets/721472/e4f64593-ca20-43ef-b480-f53dbb573ab1) 3.1.1 处理有点不解,按pendingMap分析,writeIndex2那批可能被返回不一致,处理没错,但本人认为更好的处理应该是保证写入点连续性即好,过期的请求删去就可以,一直走第二部分请求,若返回不一致,领导者进入比对,降低效率

最近分析dledger发现一个疑似的bug,上图4,比对点 < beforeBeginIndex 转到 INSTALL_SNAPSHOT状态,但如下图,snapshot mode是可选,又转到COMPARE状态,死循环?

![image](https://github.com/user-attachments/assets/34df3579-bea0-4742-aca5-cce937e03860) 最近分析dledger,上图2处 计算committedIndex,请求携带的共识点,即集群的共识点,自身写入最后index,取较少的, 但memberState.followerUpdateCommittedIndex,计算committedIndex小于现有的committedIndex是不会更新,保留现有的。 下图比对2.4处, “term不一样,返回本节点term的第一个写入的index”, 回退到上一个term,可能大量的消息截取,出现共识点回退 **! 是否存在本节点的committedIndex大于写入存储的index?** ![image](https://github.com/openmessaging/dledger/assets/721472/ba56dad9-10b6-45a5-b092-e2f9992372c4)