ok,
in GridCacheAtomicVersionComparator class, method compare(GridCacheVersion one,
GridCacheVersion other, boolean ignoreTime)
if (globalTime == otherGlobalTime || ignoreTime) { // => if (ignoreTime) {
.....
}
else
return globalTime > otherGlobalTime ? 1 : -1; // => return -1;
and,
GridCacheMvcc class,
SER_VER_COMPARATOR is comparator by globalTime var. His remove and remove
compareSerializableVersion?
> 6 марта 2017 г., в 16:51, Andrey Gura <[email protected]> написал(а):
>
> Maxim,
>
> updateTime() method should be removed.
>
> On Mon, Mar 6, 2017 at 12:12 PM, Kozlov Maxim <[email protected]> wrote:
>> In CacheEntryImplEx class use ver.globalTime() in
>>
>> @Override public long updateTime() {
>> return ver.globalTime();
>> }
>>
>> Than is better to replace this variable?
>>
>>
>>> 3 марта 2017 г., в 19:19, Andrey Gura <[email protected]> написал(а):
>>>
>>> Maxim,
>>>
>>> I think the next implementation will be good enough:
>>>
>>> public IgniteUuid asGridUuid() {
>>> return new IgniteUuid(new UUID(nodeOrderDrId, topVer), order);
>>> }
>>>
>>>
>>> Serialization/deserialization of GridCacheVersion.globalTime field
>>> should be removed.
>>>
>>> On Fri, Mar 3, 2017 at 5:57 PM, Kozlov Maxim <[email protected]> wrote:
>>>> Alexey,
>>>>
>>>> public IgniteUuid asGridUuid() {
>>>> return new IgniteUuid(new UUID(nodeOrderDrId << 32, topVer << 32),
>>>> order);
>>>> }
>>>>
>>>> So you want to change or not?
>>>>
>>>> And
>>>> - GridCacheVersion.writeTo(ByteBuffer buf, MessageWriter writer)
>>>> - GridCacheVersion.readFrom(ByteBuffer buf, MessageReader reader)
>>>>
>>>> use globalTime variable, must be removed case 0: (in both methods) or
>>>> replace globalTime?
>>>>
>>>>
>>>>
>>>>> 2 марта 2017 г., в 16:58, Andrey Gura <[email protected]> написал(а):
>>>>>
>>>>> +1
>>>>>
>>>>> Removing of asGridUuid() method can lead to much code changes but it
>>>>> should be avoided on this step.
>>>>>
>>>>> On Thu, Mar 2, 2017 at 4:56 PM, Alexey Goncharuk
>>>>> <[email protected]> wrote:
>>>>>> Maxim,
>>>>>>
>>>>>> I see several usages of asGridUuid() method, so I would just remove
>>>>>> global
>>>>>> time and use nodeOrderDrId and topVer as different parts of high and low
>>>>>> parts of the embedded UUID.
>>>>>>
>>>>>> --AG
>>>>>>
>>>>>> 2017-03-02 12:39 GMT+03:00 Kozlov Maxim <[email protected]>:
>>>>>>
>>>>>>> Andrey,
>>>>>>>
>>>>>>> When removed parameter globalTime, in method:
>>>>>>>
>>>>>>> public IgniteUuid asGridUuid() {
>>>>>>> return new IgniteUuid(new UUID(((long)topVer << 32) | nodeOrderDrId,
>>>>>>> globalTime), order);
>>>>>>> }
>>>>>>>
>>>>>>> globalTime parameter replaced by something or remove this method?
>>>>>>>
>>>>>>>
>>>>>>>> 2 марта 2017 г., в 12:07, Kozlov Maxim <[email protected]>
>>>>>>> написал(а):
>>>>>>>>
>>>>>>>> Andrey,
>>>>>>>>
>>>>>>>> Please review PR again.
>>>>>>>>
>>>>>>>>> 1 марта 2017 г., в 18:47, Andrey Gura <[email protected]> написал(а):
>>>>>>>>>
>>>>>>>>> I think that it is ok.
>>>>>>>>>
>>>>>>>>> On Wed, Mar 1, 2017 at 6:34 PM, Kozlov Maxim <[email protected]>
>>>>>>> wrote:
>>>>>>>>>> Ok. What do you say for the rest?
>>>>>>>>>>
>>>>>>>>>>> 1 марта 2017 г., в 18:15, Andrey Gura <[email protected]> написал(а):
>>>>>>>>>>>
>>>>>>>>>>> Maxim,
>>>>>>>>>>>
>>>>>>>>>>> I think that during renaming we should not lose "Atomic" prefix.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Mar 1, 2017 at 5:16 PM, Kozlov Maxim <[email protected]>
>>>>>>> wrote:
>>>>>>>>>>>> Andrey, ok.
>>>>>>>>>>>>
>>>>>>>>>>>> Also remove in the modules/platform/dotnet
>>>>>>> CacheAtomicWriteOrderMode.cs?
>>>>>>>>>>>>
>>>>>>>>>>>> Rename classes:
>>>>>>>>>>>>
>>>>>>>>>>>> GridCacheAtomicNearCacheSelfTest.startGrids ->
>>>>>>> GridCacheAtomicNearCacheSelfTest.startGridsLocal (commit)
>>>>>>>>>>>> IgniteCacheAtomicPrimaryWriteOrderWithStoreInvokeTest ->
>>>>>>> IgniteCacheWithStoreInvokeTest
>>>>>>>>>>>> IgniteCacheAtomicPrimaryWriteOrderInvokeTest ->
>>>>>>> IgniteCacheInvokeTest
>>>>>>>>>>>> IgniteCacheAtomicPrimaryWriteOrderNearEnabledStoreValueTest ->
>>>>>>> IgniteCacheNearEnabledStoreValueTest
>>>>>>>>>>>> GridCacheAtomicPrimaryWriteOrderNearRemoveFailureTest ->
>>>>>>> GridCacheNearRemoveFailureTest
>>>>>>>>>>>> GridCacheAtomicPrimaryWriteOrderRemoveFailureTest ->
>>>>>>> GridCacheRemoveFailureTest
>>>>>>>>>>>> GridCacheAtomicPrimaryWriteOrderFailoverSelfTest ->
>>>>>>> GridCacheFailoverSelfTest
>>>>>>>>>>>> GridCacheValueConsistencyAtomicPrimaryWriteOrderNearEnabledSelfTest
>>>>>>> -> GridCacheValueConsistencyNearEnabledSelfTest
>>>>>>>>>>>> CacheContinuousQueryAsyncFailoverAtomicPrimaryWriteOrderSelfTest ->
>>>>>>> CacheContinuousQueryAsyncFailoverSelfTest
>>>>>>>>>>>> CacheContinuousQueryFailoverAtomicPrimaryWriteOrderSelfTest ->
>>>>>>> CacheContinuousQueryFailoverSelfTest
>>>>>>>>>>>> GridCacheAtomicNearCacheSelfTest.testNoBackupsPrimaryWriteOrder ->
>>>>>>> GridCacheAtomicNearCacheSelfTest.testNoBackups
>>>>>>>>>>>> GridCacheAtomicNearCacheSelfTest.testWithBackupsPrimaryWriteOrder
>>>>>>> -> GridCacheAtomicNearCacheSelfTest.testWithBackups
>>>>>>>>>>>>
>>>>>>>>>>>> Remove classes:
>>>>>>>>>>>>
>>>>>>>>>>>> IgniteCacheAtomicPrimaryWriteOrderStoreValueTest
>>>>>>>>>>>> GridCacheReplicatedAtomicPrimaryWriteOrderMultiNodeFullApiSelfTest
>>>>>>>>>>>> GridCacheAtomicPrimaryWriteOrderMultiNodeFullApiSelfTest
>>>>>>>>>>>> GridCacheAtomicPrimaryWriteOrderMultiNodeP2PDisabledFullApiSelfTest
>>>>>>>>>>>> GridCacheAtomicPrimaryWrityOrderOffHeapMultiNodeFullApiSelfTest
>>>>>>>>>>>> GridCacheAtomicPrimaryWriteOrderOffHeapFullApiSelfTest
>>>>>>>>>>>> GridCacheAtomicPrimaryWriteOrderFullApiSelfTest
>>>>>>>>>>>> GridCacheAtomicPrimaryWriteOrderReloadAllSelfTest
>>>>>>>>>>>> IgniteCachePutRetryAtomicPrimaryWriteOrderSelfTest
>>>>>>>>>>>> GridCacheValueConsistencyAtomicPrimaryWriteOrderSelfTest
>>>>>>>>>>>> IgniteCacheAtomicPrimaryWriteOrderExpiryPolicyTest
>>>>>>>>>>>>
>>>>>>>>>>>> ok? :)
>>>>>>>>>>>>
>>>>>>>>>>>>> 1 марта 2017 г., в 2:04, Andrey Gura <[email protected]>
>>>>>>>>>>>>> написал(а):
>>>>>>>>>>>>>
>>>>>>>>>>>>> No, it should be removed. If somebody use entry last update time
>>>>>>> (e.g.
>>>>>>>>>>>>> for conflict resolving) they should store this time as entry
>>>>>>>>>>>>> field.
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Wed, Mar 1, 2017 at 12:57 AM, Dmitriy Setrakyan
>>>>>>>>>>>>> <[email protected]> wrote:
>>>>>>>>>>>>>> Do we still need GridClockSyncProcessor?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Tue, Feb 28, 2017 at 5:26 AM, Andrey Gura <[email protected]>
>>>>>>> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Maxim,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Yes, this setting doesn't make sense anymore. So we need remove
>>>>>>> all
>>>>>>>>>>>>>>> related methods.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Also there is component called GridClockSyncProcessor that also
>>>>>>> should
>>>>>>>>>>>>>>> be removed. It will lead to removing globalTime field from
>>>>>>>>>>>>>>> GridCacheVersion class and some related methods.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Tue, Feb 28, 2017 at 3:21 PM, Kozlov Maxim <
>>>>>>> [email protected]>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>> Valentin,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Then there is no need for setting CacheConfiguration.
>>>>>>> atomicWriteOrderMode.
>>>>>>>>>>>>>>> What do you think, remove it and and related methods?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> 28 февр. 2017 г., в 2:49, Valentin Kulichenko <
>>>>>>>>>>>>>>> [email protected]> написал(а):
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Hi Max,
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> In case we remove the CLOCK mode, I think we should remove the
>>>>>>> enum
>>>>>>>>>>>>>>> too, as
>>>>>>>>>>>>>>>>> well as configuration properties and other code using this
>>>>>>> enum. Having
>>>>>>>>>>>>>>>>> enum with one value doesn't make sense to me.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> -Val
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> On Mon, Feb 27, 2017 at 5:09 AM, Kozlov Maxim <
>>>>>>> [email protected]>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Hi Igniters,
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> After remove CLOCK mode, CacheAtomicWriteOrderMode enum
>>>>>>> contains now
>>>>>>>>>>>>>>> only
>>>>>>>>>>>>>>>>>> one value PRIMARY. Andrey Gura, proposition remove
>>>>>>>>>>>>>>>>>> CacheAtomicWriteOrderMode enum. Will there be something
>>>>>>> special for
>>>>>>>>>>>>>>> this
>>>>>>>>>>>>>>>>>> purpose is enum?
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> jira: https://issues.apache.org/jira/browse/IGNITE-4587 <
>>>>>>>>>>>>>>>>>> https://issues.apache.org/jira/browse/IGNITE-4587>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>>> Best Regards,
>>>>>>>>>>>>>>>>>> Max K.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>> Best Regards,
>>>>>>>>>>>>>>>> Max K.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Best Regards,
>>>>>>>>>>>> Max K.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Best Regards,
>>>>>>>>>> Max K.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Best Regards,
>>>>>>>> Max K.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Best Regards,
>>>>>>> Max K.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>
>>>> --
>>>> Best Regards,
>>>> Max K.
>>>>
>>>>
>>>>
>>>>
>>
>> --
>> Best Regards,
>> Max K.
>>
>>
>>
>>
--
Best Regards,
Max K.