Skip to content

Commit

Permalink
- remove DateIntervalShardingAlgorithm/ `LocalDateTimeIntervalShard…
Browse files Browse the repository at this point in the history
…ingAlgorithm` / `SnowflakeFriendlyIntervalShardingAlgorithm` / `StringIntervalShardingAlgorithm` / `TimestampIntervalShardingAlgorithm` / `TimestampOfSecondIntervalShardingAlgorithm` ,use `CosIdSnowflakeIntervalShardingAlgorithm` instead.
  • Loading branch information
Ahoo-Wang committed Jan 24, 2022
1 parent 2ac557a commit 0465992
Show file tree
Hide file tree
Showing 13 changed files with 8 additions and 629 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,8 @@
* 分配策略=[逻辑名] + [分片算法],分片算法KEY在全局唯一,这种方式显然是不利于缓存优化的,即{@link #doSharding(Collection, RangeShardingValue)}的第一个参数availableTargetNames应该在绑定时已知且稳定,作为实例变量更利于性能。
*
* @author ahoo wang
* @see DateIntervalShardingAlgorithm
* @see LocalDateTimeIntervalShardingAlgorithm
* @see CosIdIntervalShardingAlgorithm
* @see CosIdSnowflakeIntervalShardingAlgorithm
* @see TimestampIntervalShardingAlgorithm
* @see TimestampOfSecondIntervalShardingAlgorithm
*/
public abstract class AbstractIntervalShardingAlgorithm<T extends Comparable<?>> implements StandardShardingAlgorithm<T> {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@

package me.ahoo.cosid.shardingsphere.sharding.interval;

import static me.ahoo.cosid.shardingsphere.sharding.interval.StringIntervalShardingAlgorithm.DATE_TIME_PATTERN_KEY;

import me.ahoo.cosid.shardingsphere.sharding.CosIdAlgorithm;
import me.ahoo.cosid.util.LocalDateTimeConvert;

Expand All @@ -29,12 +27,12 @@
*/
public class CosIdIntervalShardingAlgorithm extends AbstractZoneIntervalShardingAlgorithm<Comparable<?>> {
public static final String TYPE = CosIdAlgorithm.TYPE_PREFIX + "INTERVAL";
public static final String TIMESTAMP_SECOND_TYPE = "SECOND";

public static final String DATE_TIME_PATTERN_KEY = "datetime-pattern";
public static final String TIMESTAMP_SECOND_UNIT = "SECOND";
/**
* type of timestamp
*/
public static final String TIMESTAMP_TYPE_KEY = "ts-type";
public static final String TIMESTAMP_UNIT_KEY = "ts-unit";
private volatile boolean isSecondTs = false;
private volatile DateTimeFormatter dateTimeFormatter;

Expand All @@ -44,8 +42,8 @@ public class CosIdIntervalShardingAlgorithm extends AbstractZoneIntervalSharding
@Override
public void init() {
super.init();
if (getProps().containsKey(TIMESTAMP_TYPE_KEY)
&& TIMESTAMP_SECOND_TYPE.equalsIgnoreCase(getProps().getProperty(TIMESTAMP_TYPE_KEY))) {
if (getProps().containsKey(TIMESTAMP_UNIT_KEY)
&& TIMESTAMP_SECOND_UNIT.equalsIgnoreCase(getProps().getProperty(TIMESTAMP_UNIT_KEY))) {
isSecondTs = true;
}
final String dateTimePattern = getProps().getProperty(DATE_TIME_PATTERN_KEY, DEFAULT_DATE_TIME_PATTERN);
Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,5 @@
#

me.ahoo.cosid.shardingsphere.sharding.interval.CosIdIntervalShardingAlgorithm

me.ahoo.cosid.shardingsphere.sharding.interval.DateIntervalShardingAlgorithm
me.ahoo.cosid.shardingsphere.sharding.interval.LocalDateTimeIntervalShardingAlgorithm
me.ahoo.cosid.shardingsphere.sharding.interval.StringIntervalShardingAlgorithm
me.ahoo.cosid.shardingsphere.sharding.interval.TimestampIntervalShardingAlgorithm
me.ahoo.cosid.shardingsphere.sharding.interval.TimestampOfSecondIntervalShardingAlgorithm

me.ahoo.cosid.shardingsphere.sharding.interval.CosIdSnowflakeIntervalShardingAlgorithm
me.ahoo.cosid.shardingsphere.sharding.interval.SnowflakeFriendlyIntervalShardingAlgorithm


me.ahoo.cosid.shardingsphere.sharding.mod.CosIdModShardingAlgorithm
Original file line number Diff line number Diff line change
Expand Up @@ -40,15 +40,15 @@
*/
class CosIdIntervalShardingAlgorithmTest extends AbstractIntervalShardingAlgorithmTest {

private static final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(StringIntervalShardingAlgorithm.DEFAULT_DATE_TIME_PATTERN);
private static final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(CosIdIntervalShardingAlgorithm.DEFAULT_DATE_TIME_PATTERN);

AbstractIntervalShardingAlgorithm shardingAlgorithm;

@BeforeEach
void init() {
shardingAlgorithm = new CosIdIntervalShardingAlgorithm();
Properties properties = getProps();
properties.setProperty(StringIntervalShardingAlgorithm.DATE_TIME_PATTERN_KEY, StringIntervalShardingAlgorithm.DEFAULT_DATE_TIME_PATTERN);
properties.setProperty(CosIdIntervalShardingAlgorithm.DATE_TIME_PATTERN_KEY, CosIdIntervalShardingAlgorithm.DEFAULT_DATE_TIME_PATTERN);
shardingAlgorithm.setProps(properties);
shardingAlgorithm.init();
}
Expand Down
Loading

0 comments on commit 0465992

Please sign in to comment.