[jira] [Commented] (IGNITE-5479) PersistentStoreConfiguration improvements

2017-07-11 Thread Pavel Tupitsyn (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-5479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16082084#comment-16082084
 ] 

Pavel Tupitsyn commented on IGNITE-5479:


I'm still not sure why {{DFLT_CHECKPOINTING_PAGE_BUFFER_SIZE}} exists. Also, on 
the second thought, null values are inconvenient for the user, so maybe we 
should switch to {{long}} and use {{0}} as "automatic".

> PersistentStoreConfiguration improvements
> -
>
> Key: IGNITE-5479
> URL: https://issues.apache.org/jira/browse/IGNITE-5479
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 2.1
>Reporter: Pavel Tupitsyn
>Assignee: Alexey Goncharuk
>Priority: Blocker
> Fix For: 2.1
>
>
> Improve {{PersistentStoreConfiguration}} to be consistent with other 
> configuration classes:
> * {{LockWaitTime}} - should be {{long}} and in milliseconds
> * {{getCheckpointingPageBufferSize}} should return {{long}} instead of 
> {{Long}}
> * {{WalFlushFrequency}} - should be {{long}} and in milliseconds
> * {{WalFsyncDelay}}  - should be {{long}} and in milliseconds. Add javadoc.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (IGNITE-5479) PersistentStoreConfiguration improvements

2017-07-10 Thread Pavel Tupitsyn (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-5479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080410#comment-16080410
 ] 

Pavel Tupitsyn commented on IGNITE-5479:


What is the point of {{DFLT_CHECKPOINTING_PAGE_BUFFER_SIZE}} then? The actual 
value is never used, we just use a reference comparison?

Let's change both setter and getter to {{Long}}, default to null, and state in 
the Javadoc that {{null}} means "automatic buffer size".

> PersistentStoreConfiguration improvements
> -
>
> Key: IGNITE-5479
> URL: https://issues.apache.org/jira/browse/IGNITE-5479
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 2.1
>Reporter: Pavel Tupitsyn
>Assignee: Alexey Goncharuk
>Priority: Blocker
> Fix For: 2.1
>
>
> Improve {{PersistentStoreConfiguration}} to be consistent with other 
> configuration classes:
> * {{LockWaitTime}} - should be {{long}} and in milliseconds
> * {{getCheckpointingPageBufferSize}} should return {{long}} instead of 
> {{Long}}
> * {{WalFlushFrequency}} - should be {{long}} and in milliseconds
> * {{WalFsyncDelay}}  - should be {{long}} and in milliseconds. Add javadoc.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (IGNITE-5479) PersistentStoreConfiguration improvements

2017-07-10 Thread Alexey Goncharuk (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-5479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080367#comment-16080367
 ] 

Alexey Goncharuk commented on IGNITE-5479:
--

This does not work: we need Long to distinguish between the following two cases:
{code}
new PersistentStoreConfiguration(); // Ignite will automatically adjust 
checkpoint buffer size
{code}
and
{code}
   new PersistentStoreConfiguration().setCheckpointPageBufferSize(someValue); 
// Ignite will NOT adjust the checkpoint buffer size even if someValue == 
DEFAULT_VALUE
{code}

This can be solved by adding a flag isDefaultPageBufferSize on 
PersistentStoreConfiguration, but the approach with Long looks more clear to 
me. What do you think?

> PersistentStoreConfiguration improvements
> -
>
> Key: IGNITE-5479
> URL: https://issues.apache.org/jira/browse/IGNITE-5479
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 2.1
>Reporter: Pavel Tupitsyn
>Assignee: Alexey Goncharuk
>Priority: Blocker
> Fix For: 2.1
>
>
> Improve {{PersistentStoreConfiguration}} to be consistent with other 
> configuration classes:
> * {{LockWaitTime}} - should be {{long}} and in milliseconds
> * {{getCheckpointingPageBufferSize}} should return {{long}} instead of 
> {{Long}}
> * {{WalFlushFrequency}} - should be {{long}} and in milliseconds
> * {{WalFsyncDelay}}  - should be {{long}} and in milliseconds. Add javadoc.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (IGNITE-5479) PersistentStoreConfiguration improvements

2017-07-10 Thread Pavel Tupitsyn (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-5479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080329#comment-16080329
 ] 

Pavel Tupitsyn commented on IGNITE-5479:


Agree on fsync delay.

Do not agree on page buffer size. Internally we may maintain a nullable value, 
but user-facing method must be {{long}} (otherwise it is inconsistent and 
confusing; setter and getter should be of same type).

Can we do this?
{code}
public long getCheckpointingPageBufferSize() {
return checkpointingPageBufSize == null ? 
DFLT_CHECKPOINTING_PAGE_BUFFER_SIZE : checkpointingPageBufSize;
}
{code}

> PersistentStoreConfiguration improvements
> -
>
> Key: IGNITE-5479
> URL: https://issues.apache.org/jira/browse/IGNITE-5479
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 2.1
>Reporter: Pavel Tupitsyn
>Assignee: Alexey Goncharuk
>Priority: Blocker
> Fix For: 2.1
>
>
> Improve {{PersistentStoreConfiguration}} to be consistent with other 
> configuration classes:
> * {{LockWaitTime}} - should be {{long}} and in milliseconds
> * {{getCheckpointingPageBufferSize}} should return {{long}} instead of 
> {{Long}}
> * {{WalFlushFrequency}} - should be {{long}} and in milliseconds
> * {{WalFsyncDelay}}  - should be {{long}} and in milliseconds. Add javadoc.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (IGNITE-5479) PersistentStoreConfiguration improvements

2017-07-10 Thread Alexey Goncharuk (JIRA)

[ 
https://issues.apache.org/jira/browse/IGNITE-5479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16080291#comment-16080291
 ] 

Alexey Goncharuk commented on IGNITE-5479:
--

Agree on all but:
 - getCheckpointPageBufferSize - this unique long is used to determine the 
default setting override.
 - fsync delay should be fine-grained enough to wait less than a millisecond 
because fsync latency itself may be 0.5 ms. Will rename this method to 
getWalFsyncDelayNanos to emphasize the different time unit

> PersistentStoreConfiguration improvements
> -
>
> Key: IGNITE-5479
> URL: https://issues.apache.org/jira/browse/IGNITE-5479
> Project: Ignite
>  Issue Type: Improvement
>  Components: cache
>Affects Versions: 2.1
>Reporter: Pavel Tupitsyn
>Assignee: Alexey Goncharuk
>Priority: Blocker
> Fix For: 2.1
>
>
> Improve {{PersistentStoreConfiguration}} to be consistent with other 
> configuration classes:
> * {{LockWaitTime}} - should be {{long}} and in milliseconds
> * {{getCheckpointingPageBufferSize}} should return {{long}} instead of 
> {{Long}}
> * {{WalFlushFrequency}} - should be {{long}} and in milliseconds
> * {{WalFsyncDelay}}  - should be {{long}} and in milliseconds. Add javadoc.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)