Ankit,
I tried test your example with the following code:
configure();
System.out.println("Initial value: " + getCurrentValue("sequence"));
for (int i = 0; i < 10_000; i++)
incrementAndGet("sequence");
stop();
configure();
System.out.println("Value after restart: " + getCurrentValue("sequence"));
stop();
And the output is:
Initial value: 1500000
Value after restart: 1511000
This is the expected result with cleaned persistence directory
(because on last increment was reserved (+1000 by default) values).
Maybe the problem elsewhere?
чт, 27 сент. 2018 г. в 20:14, abatra <[email protected]>:
>
> Configuration
>
> private static final String STORAGE_PATH =
> "/existingDirectory/ignite/data/storage";
> private static final String WAL_PATH =
> "/existingDirectory/ignite/data/wal";
> private static final String WAL_ARCHIVE_PATH =
> "/existingDirectory/ignite/data/wal/archive";
>
> @Override
> public void configure() {
> Ignite ignite = Ignition.start(createConfiguration());
> /*
> * This call is required if ignite persistence is used.
> */
> ignite.cluster().active(true);
> mIgniteLogger.info("Ignite cluster is configured.");
> }
>
> @Override
> public void stop() {
> Ignition.stopAll(true);
> }
>
> private IgniteConfiguration createConfiguration() {
> IgniteConfiguration igniteConfiguration = new IgniteConfiguration();
> igniteConfiguration.setDiscoverySpi(createDiscoverySpi());
> igniteConfiguration.setGridLogger(mIgniteLogger);
>
> igniteConfiguration.setDataStorageConfiguration(createDataStorageConfiguration());
> return igniteConfiguration;
> }
>
> private DiscoverySpi createDiscoverySpi() {
> checkMinimumClusterIpAddressCount();
> TcpDiscoverySpi tcpDiscoverySpi = new TcpDiscoverySpi();
> TcpDiscoveryVmIpFinder tcpDiscoveryVmIpFinder = new
> TcpDiscoveryVmIpFinder();
> tcpDiscoveryVmIpFinder.setAddresses(getConfig().getNodeIpAddresses());
> tcpDiscoverySpi.setIpFinder(tcpDiscoveryVmIpFinder);
> return tcpDiscoverySpi;
> }
>
> private DataStorageConfiguration createDataStorageConfiguration() {
> DataStorageConfiguration dataStorageConfiguration = new
> DataStorageConfiguration();
>
> dataStorageConfiguration.getDefaultDataRegionConfiguration().setPersistenceEnabled(true);
> dataStorageConfiguration.setStoragePath(STORAGE_PATH);
> dataStorageConfiguration.setWalPath(WAL_PATH);
> dataStorageConfiguration.setWalArchivePath(WAL_ARCHIVE_PATH);
> return dataStorageConfiguration;
> }
>
> Usage
>
> @Override
> public long getCurrentValue(String key) {
> return getAtomicSequence(key).get();
> }
>
> @Override
> public long incrementAndGet(String key) {
> return incrementAndGet(getAtomicSequence(key));
> }
>
> @Override
> public List incrementAndGet(String key, int count) {
> List result = new ArrayList<>();
> IgniteAtomicSequence atomicSequence = getAtomicSequence(key);
> for (int i = 0; i < count; i++) {
> result.add(incrementAndGet(atomicSequence));
> }
> return result;
> }
>
> private long incrementAndGet(IgniteAtomicSequence igniteAtomicSequence) {
> return igniteAtomicSequence.incrementAndGet();
> }
>
> private IgniteAtomicSequence getAtomicSequence(String name) {
> return Ignition.ignite().atomicSequence(name, 1500000, true);
> }
>
> Please let me know if more details are required.
> ________________________________
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.