[jira] [Commented] (IGNITE-6285) Enhance persistent store paths logging on start

2017-09-28 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on IGNITE-6285:


Github user dspavlov closed the pull request at:

https://github.com/apache/ignite/pull/2752


> Enhance persistent store paths logging on start
> ---
>
> Key: IGNITE-6285
> URL: https://issues.apache.org/jira/browse/IGNITE-6285
> Project: Ignite
>  Issue Type: Improvement
>Affects Versions: 2.1
>Reporter: Yakov Zhdanov
>Assignee: Dmitriy Pavlov
>Priority: Blocker
>  Labels: documentation, important, usability
> Fix For: 2.3
>
>
> As per this thread - 
> http://apache-ignite-users.70518.x6.nabble.com/Specifying-location-of-persistent-storage-location-td16636i20.html
> Ignite may switch storage path in case of changing DHCP lease or similar 
> which can lead to consistent ID change.
> In order to help user in spotting the issue Ignite may output the following 
> to the logs:
> # Output the store path and tell its (1) size or state that it is empty and 
> (2) last data file modification date.
> # Output warning if there are other non-empty storage folders under work 
> directory with their sizes and dates.



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


[jira] [Commented] (IGNITE-6285) Enhance persistent store paths logging on start

2017-09-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on IGNITE-6285:


GitHub user dspavlov opened a pull request:

https://github.com/apache/ignite/pull/2752

IGNITE-6285: Enhance persistent store paths logging on start

Experimental commits to run TC tests, do not merge

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/gridgain/apache-ignite ignite-6285

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/ignite/pull/2752.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #2752


commit b150519f05c99e71be83af9d5107ae599c90f05f
Author: dpavlov 
Date:   2017-09-26T13:31:54Z

IGNITE-6285: Enhance persistent store paths logging on start




> Enhance persistent store paths logging on start
> ---
>
> Key: IGNITE-6285
> URL: https://issues.apache.org/jira/browse/IGNITE-6285
> Project: Ignite
>  Issue Type: Improvement
>Affects Versions: 2.1
>Reporter: Yakov Zhdanov
>Assignee: Dmitriy Pavlov
>Priority: Blocker
>  Labels: usability
> Fix For: 2.3
>
>
> As per this thread - 
> http://apache-ignite-users.70518.x6.nabble.com/Specifying-location-of-persistent-storage-location-td16636i20.html
> Ignite may switch storage path in case of changing DHCP lease or similar 
> which can lead to consistent ID change.
> In order to help user in spotting the issue Ignite may output the following 
> to the logs:
> # Output the store path and tell its (1) size or state that it is empty and 
> (2) last data file modification date.
> # Output warning if there are other non-empty storage folders under work 
> directory with their sizes and dates.



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


[jira] [Commented] (IGNITE-6285) Enhance persistent store paths logging on start

2017-09-19 Thread Denis Magda (JIRA)

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

Denis Magda commented on IGNITE-6285:
-

[~agoncharuk], my vote goes for your solution.

Do we agree that we're not going to handle the case of "multiple nodes from 
different clusters on a single box" automatically? To support this case I would 
request the user to change the storage directories using existing persistent 
store configuration parameters or introducing a new one.

> Enhance persistent store paths logging on start
> ---
>
> Key: IGNITE-6285
> URL: https://issues.apache.org/jira/browse/IGNITE-6285
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Yakov Zhdanov
>Assignee: Alexey Goncharuk
>Priority: Blocker
>  Labels: usability
> Fix For: 2.3
>
>
> As per this thread - 
> http://apache-ignite-users.70518.x6.nabble.com/Specifying-location-of-persistent-storage-location-td16636i20.html
> Ignite may switch storage path in case of changing DHCP lease or similar 
> which can lead to consistent ID change.
> In order to help user in spotting the issue Ignite may output the following 
> to the logs:
> # Output the store path and tell its (1) size or state that it is empty and 
> (2) last data file modification date.
> # Output warning if there are other non-empty storage folders under work 
> directory with their sizes and dates.



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


[jira] [Commented] (IGNITE-6285) Enhance persistent store paths logging on start

2017-09-19 Thread Alexey Goncharuk (JIRA)

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

Alexey Goncharuk commented on IGNITE-6285:
--

We can keep the first assigned consistent ID (the one obtained during the first 
startup) but in this case, it may be confusing because the actual IP address 
has changed, but we keep using the old one.

> Enhance persistent store paths logging on start
> ---
>
> Key: IGNITE-6285
> URL: https://issues.apache.org/jira/browse/IGNITE-6285
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Yakov Zhdanov
>Assignee: Alexey Goncharuk
>Priority: Blocker
>  Labels: usability
> Fix For: 2.3
>
>
> As per this thread - 
> http://apache-ignite-users.70518.x6.nabble.com/Specifying-location-of-persistent-storage-location-td16636i20.html
> Ignite may switch storage path in case of changing DHCP lease or similar 
> which can lead to consistent ID change.
> In order to help user in spotting the issue Ignite may output the following 
> to the logs:
> # Output the store path and tell its (1) size or state that it is empty and 
> (2) last data file modification date.
> # Output warning if there are other non-empty storage folders under work 
> directory with their sizes and dates.



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


[jira] [Commented] (IGNITE-6285) Enhance persistent store paths logging on start

2017-09-19 Thread Alexey Goncharuk (JIRA)

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

Alexey Goncharuk commented on IGNITE-6285:
--

Yes, It's either a parent directory lock or try-catch-retry (I remember there 
were some issues with directory locking on Windows)

> Enhance persistent store paths logging on start
> ---
>
> Key: IGNITE-6285
> URL: https://issues.apache.org/jira/browse/IGNITE-6285
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Yakov Zhdanov
>Assignee: Alexey Goncharuk
>Priority: Blocker
>  Labels: usability
> Fix For: 2.3
>
>
> As per this thread - 
> http://apache-ignite-users.70518.x6.nabble.com/Specifying-location-of-persistent-storage-location-td16636i20.html
> Ignite may switch storage path in case of changing DHCP lease or similar 
> which can lead to consistent ID change.
> In order to help user in spotting the issue Ignite may output the following 
> to the logs:
> # Output the store path and tell its (1) size or state that it is empty and 
> (2) last data file modification date.
> # Output warning if there are other non-empty storage folders under work 
> directory with their sizes and dates.



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


[jira] [Commented] (IGNITE-6285) Enhance persistent store paths logging on start

2017-09-19 Thread Yakov Zhdanov (JIRA)

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

Yakov Zhdanov commented on IGNITE-6285:
---

[~agoncharuk] seems we need to lock parent directory to create the first 
subfolder to support simultaneous start. Is that true?

> Enhance persistent store paths logging on start
> ---
>
> Key: IGNITE-6285
> URL: https://issues.apache.org/jira/browse/IGNITE-6285
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Yakov Zhdanov
>Assignee: Alexey Goncharuk
>Priority: Blocker
>  Labels: usability
> Fix For: 2.3
>
>
> As per this thread - 
> http://apache-ignite-users.70518.x6.nabble.com/Specifying-location-of-persistent-storage-location-td16636i20.html
> Ignite may switch storage path in case of changing DHCP lease or similar 
> which can lead to consistent ID change.
> In order to help user in spotting the issue Ignite may output the following 
> to the logs:
> # Output the store path and tell its (1) size or state that it is empty and 
> (2) last data file modification date.
> # Output warning if there are other non-empty storage folders under work 
> directory with their sizes and dates.



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


[jira] [Commented] (IGNITE-6285) Enhance persistent store paths logging on start

2017-09-19 Thread Alexey Goncharuk (JIRA)

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

Alexey Goncharuk commented on IGNITE-6285:
--

There are several scenarios when generating random IDs does not work 
predictably, specifically, when a user starts multiple node instances on the 
same physical machine. 

I suggest the following (assuming we maintain the backwards compatibility)
1) A starting node binds to a port and generates old-style consistent ID
2) The node scans the work directory and checks if there is a folder matching 
the consistent ID. If such a folder exists, we start up with this ID 
(compatibility mode)
3) If there are no matching folders, but the directory is not empty, scan it 
for old-style consistent IDs. If there are old-style db folders, print out a 
warning (or fail to start)
4) If there are existing new style folders, pick up the one with the smallest 
sequence number and try to lock the directory. Repeat until we succeed or until 
the list of new-style consistent IDs is empty
5) If there are no more available new-style folders, generate a new one with 
next sequence number and random UUID as consistent ID.
6) Use this consistent ID for the node startup

As Yakov suggested, we can update the lock file on every use and print out this 
timestamp during the node startup.

[~dmagda] [~yzhdanov] [~dsetrakyan] please let me know what you think.

> Enhance persistent store paths logging on start
> ---
>
> Key: IGNITE-6285
> URL: https://issues.apache.org/jira/browse/IGNITE-6285
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Yakov Zhdanov
>Assignee: Alexey Goncharuk
>Priority: Blocker
>  Labels: usability
> Fix For: 2.3
>
>
> As per this thread - 
> http://apache-ignite-users.70518.x6.nabble.com/Specifying-location-of-persistent-storage-location-td16636i20.html
> Ignite may switch storage path in case of changing DHCP lease or similar 
> which can lead to consistent ID change.
> In order to help user in spotting the issue Ignite may output the following 
> to the logs:
> # Output the store path and tell its (1) size or state that it is empty and 
> (2) last data file modification date.
> # Output warning if there are other non-empty storage folders under work 
> directory with their sizes and dates.



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


[jira] [Commented] (IGNITE-6285) Enhance persistent store paths logging on start

2017-09-16 Thread Denis Magda (JIRA)

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

Denis Magda commented on IGNITE-6285:
-

[~dsetrakyan], [~yzhdanov], [~agoncharuk],

Binding to the same IP:port is a brittle scheme that might fail periodically in 
short term and will definitely fail in the long term resulting in partial 
partitions loss due to the redistribution. It's even worse for us if it happens 
in years of the cluster being used in production. Even a MAC address as  as 
constant ID approach is not a problem solver because the hardware can be 
replaced.

What if we try the following scheme. A special component will set an UUID as a 
consistent ID for a node on startup. All the generated UUID(s) will be 
persisted in a single file protected by file system lock. This guarantees IDs 
reuse after restarts and should solve the issue once and forever.

> Enhance persistent store paths logging on start
> ---
>
> Key: IGNITE-6285
> URL: https://issues.apache.org/jira/browse/IGNITE-6285
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Yakov Zhdanov
>Assignee: Alexey Goncharuk
>Priority: Blocker
>  Labels: usability
> Fix For: 2.3
>
>
> As per this thread - 
> http://apache-ignite-users.70518.x6.nabble.com/Specifying-location-of-persistent-storage-location-td16636i20.html
> Ignite may switch storage path in case of changing DHCP lease or similar 
> which can lead to consistent ID change.
> In order to help user in spotting the issue Ignite may output the following 
> to the logs:
> # Output the store path and tell its (1) size or state that it is empty and 
> (2) last data file modification date.
> # Output warning if there are other non-empty storage folders under work 
> directory with their sizes and dates.



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


[jira] [Commented] (IGNITE-6285) Enhance persistent store paths logging on start

2017-09-16 Thread Dmitriy Setrakyan (JIRA)

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

Dmitriy Setrakyan commented on IGNITE-6285:
---

I have raised the priority of the issue to Blocker, as it is a critical 
usability problem.

In addition to (1) and (2) above, I believe that the right way to solve it 
would be to store the previous IP:port binding on disk, to make sure that we 
reuse the same binding upon restart.

> Enhance persistent store paths logging on start
> ---
>
> Key: IGNITE-6285
> URL: https://issues.apache.org/jira/browse/IGNITE-6285
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Yakov Zhdanov
>Priority: Blocker
>  Labels: usability
> Fix For: 2.3
>
>
> As per this thread - 
> http://apache-ignite-users.70518.x6.nabble.com/Specifying-location-of-persistent-storage-location-td16636i20.html
> Ignite may switch storage path in case of changing DHCP lease or similar 
> which can lead to consistent ID change.
> In order to help user in spotting the issue Ignite may output the following 
> to the logs:
> # Output the store path and tell its (1) size or state that it is empty and 
> (2) last data file modification date.
> # Output warning if there are other non-empty storage folders under work 
> directory with their sizes and dates.



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