Releases: hellojavaer/ddal
Releases · hellojavaer/ddal
1.1.1-RELEASE
Merge pull request #54 from hellojavaer/dev update pom.xml
1.1.0-RELEASE
update
1.0.1-RELEASE
Merge pull request #51 from hellojavaer/1.0.x 1.0.x
1.0.0-RELEASE
Update README.md
1.0.0.M7
support custom protocol jdbc:ddal:
1.0.0.M6
Merge branch 'master' into 1.0.0.M6
1.0.0.M5
- optimize route rule expression parser
// old SpelShardRouteRule rule = new SpelShardRouteRule(); rule.setScRouteRule("{#scName}_{#format('%02d', #sdValue % 4)}"); rule.setTbRouteRule("{#tbName}_{#format('%04d', #sdValue % 8)}"); // new SpelShardRouteRule rule = new SpelShardRouteRule(); rule.setScRouteRule("{scName}_{format('%02d', sdValue % 4)}"); rule.setTbRouteRule("{tbName}_{format('%04d', sdValue % 8)}"); - optimize range expression parser
"1,2,3" => 1,2,3 "[1..3]" => 1,2,3 "['A'..'C','X']" => A,B,C,X "[0..1][0..1]" => 00,01,10,11 "Hi![' Allen',' Bob']" => Hi! Allen,Hi! Bob 1.0.0.M4
- implement ddal-bom
<!-- add the following dependency into your dependencyManagement to manage ddal version --> <dependency> <groupId>org.hellojavaer.ddal</groupId> <artifactId>ddal-bom</artifactId> <version>1.0.0.M5</version> <type>pom</type> <scope>import</scope> </dependency> - implement PollingGroupSequence
Sequence s0 = new SingleSequence("schema_name", "table_name", 100, 5, 100, sequenceRangeGetter0); Sequence s1 = new SingleSequence("schema_name", "table_name", 100, 5, 100, sequenceRangeGetter1); Sequence sequence = new PollingGroupSequence(s0, s1); long id = sequence.nextValue(100, TimeUnit.MILLISECONDS); 1.0.0.M3
- remove class ShardRouteHelper and ContextPropagation
- modify ShardRouter: add method 'getRouteInfos' and 'getRoutedTables'
- modify MetaDataChecker
- optimize SimpleShardRouter and ShardRouteContext
- optimize IdCache and DatabaseIdGetter
- provide a easier way for scanning table query
// list all physical tables by specified 'scName' and 'tbName' List<RouteInfo> routeInfos = shardRouter.getRouteInfos(scName, tbName); for (RouteInfo routeInfo : routeInfos) { ShardRouteContext.setRouteInfo(scName, tbName, routeInfo); // TODO: do your business here // ... ShardRouteContext.clearContext(); } 1.0.0.M2
- provide a simpler way to configure route rule
SpelShardRouteRule rule = new SpelShardRouteRule(); rule.setScRouteRule("{#scName}_{#format('%02d', #sdValue % 4)}"); rule.setTbRouteRule("{#tbName}_{#format('%04d', #sdValue % 8)}");