As for .NET. Should not we define IGNITE_HOME for it?

чт, 3 окт. 2019 г. в 12:13, Ivan Pavlukhin <vololo...@gmail.com>:
>
> Folks,
>
> I am with Ilya here. I remind that we are talking not about general
> case for Ignite usage. Generally IGNITE_HOME should be defined.
> Otherwise we fallback to a default, and user.dir usually points to a
> directory where java launcher command was called (work dir).
>
> user.home seems to cause more surprises to me:
> * user.home can be undefined for JVM;
> * user.home can be not writable as well (e.g. some special service user).
>
> And as far as know other vendors usually place files required for an
> application in current work dir.
>
> чт, 3 окт. 2019 г. в 01:45, Denis Magda <dma...@apache.org>:
> >
> > I was always expecting this to be a user *home* directory that can be
> > resolved in any operating system and will work for any language supported
> > by Ignite. So, I'm with Pavel here.
> >
> > Alex G, what's your thinking? Sounds like we need to change this one more
> > time.
> >
> > -
> > Denis
> >
> >
> > On Wed, Oct 2, 2019 at 12:17 PM Pavel Tupitsyn <ptupit...@apache.org> wrote:
> >
> > > Everyone above agreed to `~/ignite/work`, then somehow we jumped to
> > > `user.dir/ignite/work`.
> > > To me `user.dir` looked like synonym for ~, but turns out this is not 
> > > true.
> > > I think others may be confused in the same way.
> > >
> > > Denis Magda, Alexey Goncharuk, and others - please confirm that you
> > > understand that `user.dir` means current directory, not user home
> > > directory.
> > >
> > > In my opinion, this is very broken. Current work dir can be literally
> > > anything, e.g.:
> > > `cd / && ~/my-ignite-app/run.sh` will cause an attempt to create ignite 
> > > dir
> > > in system root, and so on.
> > >
> > >
> > >
> > > On Wed, Oct 2, 2019 at 9:46 PM Ilya Kasnacheev <ilya.kasnach...@gmail.com>
> > > wrote:
> > >
> > > > Hello!
> > > >
> > > > I think this is a sensible default and it was certainly not chosen by
> > > > mistake. It was intentional expectation that your project is started 
> > > > from
> > > > project root and data is located under it.
> > > >
> > > > If this breaks .Net, I am deeply sorry.
> > > > However, I think we should change .net to provide non-default workdir
> > > > location when none is specified.
> > > >
> > > > Can you please clarify scenarios that are broken now?
> > > >
> > > > Regards,
> > > >
> > > > ср, 2 окт. 2019 г., 20:28 Pavel Tupitsyn <ptupit...@apache.org>:
> > > >
> > > > > Igniters,
> > > > >
> > > > > Looks like we made a mistake while implementing IGNITE-12057:
> > > > > `user.dir` is NOT user home directory, it is where JVM has been 
> > > > > started
> > > > > from, which is rather arbitrary.
> > > > > (Among other things this breaks Ignite.NET usage from tools like
> > > LINQPad,
> > > > > because `user.dir` ends up pointing to Program Files, which is not
> > > > > writable without elevation)
> > > > >
> > > > > We should use `user.home` system property instead, see
> > > > >
> > > >
> > > https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html
> > > > >
> > > > > Thoughts, objections?
> > > > >
> > > > > On Mon, Sep 2, 2019 at 1:57 PM Ilya Kasnacheev <
> > > > ilya.kasnach...@gmail.com>
> > > > > wrote:
> > > > >
> > > > > > Hello again!
> > > > > >
> > > > > > Please note that I have updated release notes for IGNITE-12057 as
> > > well
> > > > as
> > > > > > added them for my ticket. Release Engineers, please make sure you
> > > > include
> > > > > > the latest one.
> > > > > >
> > > > > > Regards,
> > > > > > --
> > > > > > Ilya Kasnacheev
> > > > > >
> > > > > >
> > > > > > пн, 2 сент. 2019 г. в 13:33, Ilya Kasnacheev <
> > > > ilya.kasnach...@gmail.com
> > > > > >:
> > > > > >
> > > > > > > Hello!
> > > > > > >
> > > > > > > I have pushed an amended fix to both master and ignite-2.7.6.
> > > > > > >
> > > > > > > Regards,
> > > > > > > --
> > > > > > > Ilya Kasnacheev
> > > > > > >
> > > > > > >
> > > > > > > пт, 30 авг. 2019 г. в 21:48, Denis Magda <dma...@apache.org>:
> > > > > > >
> > > > > > >> Ilya,
> > > > > > >>
> > > > > > >> I forgot to push "Send for review" button. You can see my minor
> > > > > comment
> > > > > > >> now.
> > > > > > >>
> > > > > > >> -
> > > > > > >> Denis
> > > > > > >>
> > > > > > >>
> > > > > > >> On Fri, Aug 30, 2019 at 5:47 AM Ilya Kasnacheev <
> > > > > > >> ilya.kasnach...@gmail.com>
> > > > > > >> wrote:
> > > > > > >>
> > > > > > >> > Hello!
> > > > > > >> >
> > > > > > >> > Waiting for a minor comment from Denis, as soon as I see/fix it
> > > > I'm
> > > > > > >> going
> > > > > > >> > to commit.
> > > > > > >> >
> > > > > > >> > Regards,
> > > > > > >> > Ilya.
> > > > > > >> > --
> > > > > > >> > Ilya Kasnacheev
> > > > > > >> >
> > > > > > >> >
> > > > > > >> > пт, 30 авг. 2019 г. в 11:30, Alexey Goncharuk <
> > > > > > >> alexey.goncha...@gmail.com
> > > > > > >> > >:
> > > > > > >> >
> > > > > > >> > > Hello Ilya,
> > > > > > >> > >
> > > > > > >> > > Just curious, when are you planning to commit your changes to
> > > > the
> > > > > > >> 2.7.6
> > > > > > >> > > branch?
> > > > > > >> > >
> > > > > > >> > > ср, 28 авг. 2019 г. в 04:57, Denis Magda <dma...@apache.org>:
> > > > > > >> > >
> > > > > > >> > > > Ok, seems like we came to a consensus. Let’s ensure that 
> > > > > > >> > > > the
> > > > > path
> > > > > > >> for
> > > > > > >> > our
> > > > > > >> > > > work dir is user.dir/ignite/work and restart the vote.
> > > > > > >> > > >
> > > > > > >> > > > Denis
> > > > > > >> > > >
> > > > > > >> > > > On Tuesday, August 27, 2019, Ilya Kasnacheev <
> > > > > > >> > ilya.kasnach...@gmail.com>
> > > > > > >> > > > wrote:
> > > > > > >> > > >
> > > > > > >> > > > > Hello!
> > > > > > >> > > > >
> > > > > > >> > > > > I have took the liberty to implement the change to
> > > existing
> > > > > code
> > > > > > >> base
> > > > > > >> > > to
> > > > > > >> > > > > remove concern about work/ directory:
> > > > > > >> > > > >
> > > > > > >> > > > > https://github.com/apache/ignite/pull/6816/files
> > > > > > >> > > > >
> > > > > > >> > > > > Some advocacy for this patch:
> > > > > > >> > > > > - Minimal change.
> > > > > > >> > > > > - Storing in user.dir/ignite/work (current directory, 
> > > > > > >> > > > > e.g.
> > > > > > project
> > > > > > >> > > root)
> > > > > > >> > > > > which is consistent with behavior of unzipped binary
> > > > release.
> > > > > > >> > > > > - We can re-use user.dir/ignite for other uses in the
> > > > future,
> > > > > > >> such as
> > > > > > >> > > > > storing logs there.
> > > > > > >> > > > >
> > > > > > >> > > > > I have to admit that my previous reaction to the change
> > > was
> > > > > too
> > > > > > >> > strong.
> > > > > > >> > > > It
> > > > > > >> > > > > turned out the default was user.dir/work (project root)
> > > and
> > > > > not
> > > > > > >> > > > > user.home/work (home dir with imminent Work collision).
> > > > > > >> > > > > Nevertheless, I think that after this change it would be
> > > > good
> > > > > > >> enough
> > > > > > >> > to
> > > > > > >> > > > > last for a few years.
> > > > > > >> > > > >
> > > > > > >> > > > > What do you think?
> > > > > > >> > > > >
> > > > > > >> > > > > Regards,
> > > > > > >> > > > > --
> > > > > > >> > > > > Ilya Kasnacheev
> > > > > > >> > > > >
> > > > > > >> > > > >
> > > > > > >> > > > > вт, 27 авг. 2019 г. в 18:28, Alexey Goncharuk <
> > > > > > >> > > > alexey.goncha...@gmail.com
> > > > > > >> > > > > >:
> > > > > > >> > > > >
> > > > > > >> > > > > > In the current state of the project, we cannot directly
> > > > > > compare
> > > > > > >> > > Ignite
> > > > > > >> > > > > > setup process to the one of postgresql or another
> > > > database.
> > > > > In
> > > > > > >> many
> > > > > > >> > > > > Ignite
> > > > > > >> > > > > > examples, an embedded node (even with persistence) is
> > > > > started
> > > > > > >> and
> > > > > > >> > it
> > > > > > >> > > is
> > > > > > >> > > > > > supposed to run without any additional FS rights grants
> > > or
> > > > > > init
> > > > > > >> > > steps.
> > > > > > >> > > > > This
> > > > > > >> > > > > > may be changed in 3.0, but not in a maintenance 
> > > > > > >> > > > > > release.
> > > > If
> > > > > we
> > > > > > >> are
> > > > > > >> > to
> > > > > > >> > > > > > change the directory to /var/lib, I would rather fail
> > > > Ignite
> > > > > > >> node
> > > > > > >> > > start
> > > > > > >> > > > > > asking a user to explicitly provide work directory 
> > > > > > >> > > > > > path.
> > > > Let
> > > > > > >> alone
> > > > > > >> > > > > /var/lib
> > > > > > >> > > > > > is not portable and I would not add an OS-switch to the
> > > > code
> > > > > > >> for no
> > > > > > >> > > > > reason.
> > > > > > >> > > > > >
> > > > > > >> > > > > > I vote for storing the work in ~/ignite/work - agree
> > > with
> > > > > Ilya
> > > > > > >> that
> > > > > > >> > > > > writing
> > > > > > >> > > > > > large amounts of data in a hidden folder is a bad idea.
> > > > > > >> > > > > >
> > > > > > >> > > > > > вт, 27 авг. 2019 г. в 15:17, Dmitriy Pavlov <
> > > > > > dpav...@apache.org
> > > > > > >> >:
> > > > > > >> > > > > >
> > > > > > >> > > > > > > Hi Igniters,
> > > > > > >> > > > > > >
> > > > > > >> > > > > > > I agree that user home maybe not the best place from
> > > > Linux
> > > > > > >> > > > perspective
> > > > > > >> > > > > > and
> > > > > > >> > > > > > > philosophy, but  "user.home"/ignite/work  is more or
> > > > less
> > > > > > >> > portable.
> > > > > > >> > > > > > >
> > > > > > >> > > > > > > For the Linux environment, we can add a suggestion
> > > about
> > > > > > >> where to
> > > > > > >> > > > place
> > > > > > >> > > > > > > persisted data. For very first testing of Apache
> > > Ignite
> > > > > user
> > > > > > >> home
> > > > > > >> > > > still
> > > > > > >> > > > > > > looks good for me.
> > > > > > >> > > > > > >
> > > > > > >> > > > > > > Sincerely,
> > > > > > >> > > > > > > Dmitriy Pavlov
> > > > > > >> > > > > > >
> > > > > > >> > > > > > > вт, 27 авг. 2019 г. в 11:56, Pavel Pereslegin <
> > > > > > >> xxt...@gmail.com
> > > > > > >> > >:
> > > > > > >> > > > > > >
> > > > > > >> > > > > > > > Or instead of a WARNING, we can add a suggestion
> > > with
> > > > a
> > > > > > >> > > > > recommendation
> > > > > > >> > > > > > > > for the production environment.
> > > > > > >> > > > > > > >
> > > > > > >> > > > > > > > вт, 27 авг. 2019 г. в 11:41, Petr Ivanov <
> > > > > > >> mr.wei...@gmail.com
> > > > > > >> > >:
> > > > > > >> > > > > > > > >
> > > > > > >> > > > > > > > > /opt is either does not exist on fresh system, or
> > > > has
> > > > > > the
> > > > > > >> > same
> > > > > > >> > > > > > > > restriction: no user access without admin
> > > > intervention.
> > > > > > >> > > > > > > > > /usr/local, /var/lib, etc. — all this is
> > > implemented
> > > > > in
> > > > > > >> our
> > > > > > >> > > DEB /
> > > > > > >> > > > > RPM
> > > > > > >> > > > > > > > packages already.
> > > > > > >> > > > > > > > >
> > > > > > >> > > > > > > > > For ZIP installation %HOME% seems to be the best
> > > > > > approach
> > > > > > >> for
> > > > > > >> > > > > > "2-click"
> > > > > > >> > > > > > > > launch.
> > > > > > >> > > > > > > > > Later user can update preferences and set working
> > > > dir
> > > > > to
> > > > > > >> > > whatever
> > > > > > >> > > > > > > > directory he would like.
> > > > > > >> > > > > > > > >
> > > > > > >> > > > > > > > > Also — we can put WARNING message to log noting
> > > that
> > > > > > >> WORK_DIR
> > > > > > >> > > is
> > > > > > >> > > > > set
> > > > > > >> > > > > > to
> > > > > > >> > > > > > > > default.
> > > > > > >> > > > > > > > >
> > > > > > >> > > > > > > > > > On 27 Aug 2019, at 10:16, Zhenya Stanilovsky
> > > > > > >> > > > > > > > <arzamas...@mail.ru.INVALID> wrote:
> > > > > > >> > > > > > > > > >
> > > > > > >> > > > > > > > > >
> > > > > > >> > > > > > > > > > And what about /opt/ignite ?
> > > > > > >> > > > > > > > > >
> > > > > > >> > > > > > > > > > copy-paste:
> > > > > > >> > > > > > > > > > "
> > > > > > >> > > > > > > > > > The basic difference is that  /usr/local  is 
> > > > > > >> > > > > > > > > > for
> > > > > > >> software
> > > > > > >> > not
> > > > > > >> > > > > > managed
> > > > > > >> > > > > > > > by the system packager, but still following the
> > > > standard
> > > > > > >> unix
> > > > > > >> > > > > > deployment
> > > > > > >> > > > > > > > rules.
> > > > > > >> > > > > > > > > > That's why you have  /usr/local/bin ,
> > > > > /usr/local/sbin
> > > > > > >> > > > > > > >  /usr/local/include  etc...
> > > > > > >> > > > > > > > > > /opt  on the other hand is for software that
> > > > doesn't
> > > > > > >> follow
> > > > > > >> > > > this
> > > > > > >> > > > > > and
> > > > > > >> > > > > > > > is deployed in a monolithic fashion. This usually
> > > > > includes
> > > > > > >> > > > commercial
> > > > > > >> > > > > > > > and/or cross-platform software that is packaged in
> > > the
> > > > > > >> > "Windows"
> > > > > > >> > > > > > style. "
> > > > > > >> > > > > > > > > >
> > > > > > >> > > > > > > > > >
> > > > > > >> > > > > > > > > >> Понедельник, 26 августа 2019, 22:49 +03:00 от
> > > > Denis
> > > > > > >> Magda
> > > > > > >> > <
> > > > > > >> > > > > > > > dma...@apache.org>:
> > > > > > >> > > > > > > > > >>
> > > > > > >> > > > > > > > > >> Igniters,
> > > > > > >> > > > > > > > > >>
> > > > > > >> > > > > > > > > >> I can't disagree with Nikolay that, as a
> > > > database,
> > > > > > >> Ignite
> > > > > > >> > > > needs
> > > > > > >> > > > > to
> > > > > > >> > > > > > > > persist
> > > > > > >> > > > > > > > > >> changes to a folder different from "user.home"
> > > > one.
> > > > > > But
> > > > > > >> > with
> > > > > > >> > > > the
> > > > > > >> > > > > > > > current
> > > > > > >> > > > > > > > > >> rate of project growth and adoption, I would
> > > > > > encourage
> > > > > > >> us
> > > > > > >> > to
> > > > > > >> > > > > > > > eliminate any
> > > > > > >> > > > > > > > > >> possible obstacles a user might come across
> > > > during
> > > > > > the
> > > > > > >> > > getting
> > > > > > >> > > > > > > started
> > > > > > >> > > > > > > > > >> phase with Ignite. Unfortunately, folders
> > > > different
> > > > > > >> from
> > > > > > >> > > > > > "user.home"
> > > > > > >> > > > > > > > imply
> > > > > > >> > > > > > > > > >> a significant restriction - the user needs to
> > > > allow
> > > > > > >> access
> > > > > > >> > > to
> > > > > > >> > > > > > > folders
> > > > > > >> > > > > > > > like
> > > > > > >> > > > > > > > > >> /lib, /etc; which can make every getting
> > > started
> > > > > demo
> > > > > > >> or
> > > > > > >> > app
> > > > > > >> > > > > fail.
> > > > > > >> > > > > > > > > >>
> > > > > > >> > > > > > > > > >> Thus, today, I'm casting my vote for
> > > > > > >> > "user.home"/ignite/work
> > > > > > >> > > > > > > > directory.
> > > > > > >> > > > > > > > > >> Please don't forget about Windows and MacOS.
> > > > > > >> > > > > > > > > >>
> > > > > > >> > > > > > > > > >> -
> > > > > > >> > > > > > > > > >> Denis
> > > > > > >> > > > > > > > > >>
> > > > > > >> > > > > > > > > >>
> > > > > > >> > > > > > > > > >> On Mon, Aug 26, 2019 at 7:09 AM Pavel Tupitsyn
> > > <
> > > > > > >> > > > > > > ptupit...@apache.org
> > > > > > >> > > > > > > > > wrote:
> > > > > > >> > > > > > > > > >>
> > > > > > >> > > > > > > > > >>> +1 for  ~/.ignite/work
> > > > > > >> > > > > > > > > >>>
> > > > > > >> > > > > > > > > >>> As Petr mentioned above, this translates well
> > > to
> > > > > > >> Windows
> > > > > > >> > > and
> > > > > > >> > > > > > MacOS
> > > > > > >> > > > > > > > too, we
> > > > > > >> > > > > > > > > >>> can use "home directory" term in 
> > > > > > >> > > > > > > > > >>> documentation
> > > > and
> > > > > > it
> > > > > > >> > works
> > > > > > >> > > > for
> > > > > > >> > > > > > any
> > > > > > >> > > > > > > > OS.
> > > > > > >> > > > > > > > > >>>
> > > > > > >> > > > > > > > > >>> On Mon, Aug 26, 2019 at 4:03 PM Nikolay
> > > Izhikov
> > > > <
> > > > > > >> > > > > > > > nizhi...@apache.org >
> > > > > > >> > > > > > > > > >>> wrote:
> > > > > > >> > > > > > > > > >>>
> > > > > > >> > > > > > > > > >>>> AFAIK server admin expects software will
> > > store
> > > > > it's
> > > > > > >> data
> > > > > > >> > > in
> > > > > > >> > > > > > /var/
> > > > > > >> > > > > > > > > >>>> directory, not in /home directory.
> > > > > > >> > > > > > > > > >>>>
> > > > > > >> > > > > > > > > >>>>> In Docker age, packages are becoming
> > > extinct.
> > > > > > >> > > > > > > > > >>>>
> > > > > > >> > > > > > > > > >>>> I don't agree with that, but seems, it's not
> > > a
> > > > > > >> subject
> > > > > > >> > of
> > > > > > >> > > > > > > > discussion. :)
> > > > > > >> > > > > > > > > >>>>
> > > > > > >> > > > > > > > > >>>>> we don't even have very good packages today
> > > > > > >> > > > > > > > > >>>>
> > > > > > >> > > > > > > > > >>>> Why do you think we don't have good 
> > > > > > >> > > > > > > > > >>>> packages?
> > > > > > >> > > > > > > > > >>>> What is wrong with the current one?
> > > > > > >> > > > > > > > > >>>>
> > > > > > >> > > > > > > > > >>>>> I also think we should not copy what other
> > > > DBMS
> > > > > do
> > > > > > >> > since
> > > > > > >> > > > > their
> > > > > > >> > > > > > > > > >>>> ease-of-use
> > > > > > >> > > > > > > > > >>>>> is usually lacking
> > > > > > >> > > > > > > > > >>>>
> > > > > > >> > > > > > > > > >>>> We should define 'easy-of-use' here.
> > > > > > >> > > > > > > > > >>>> My experience with the modern dbms(postgres
> > > and
> > > > > > >> mysql)
> > > > > > >> > is
> > > > > > >> > > > > > > different.
> > > > > > >> > > > > > > > > >>>>
> > > > > > >> > > > > > > > > >>>>
> > > > > > >> > > > > > > > > >>>> В Пн, 26/08/2019 в 15:47 +0300, Ilya
> > > Kasnacheev
> > > > > > >> пишет:
> > > > > > >> > > > > > > > > >>>>> Hello!
> > > > > > >> > > > > > > > > >>>>>
> > > > > > >> > > > > > > > > >>>>> I think it is 2., because if a node is run
> > > > from
> > > > > > >> Ignite
> > > > > > >> > > > binary
> > > > > > >> > > > > > > > > >>>> distribution
> > > > > > >> > > > > > > > > >>>>> it has its root as a ignite work directory.
> > > I
> > > > > > think
> > > > > > >> it
> > > > > > >> > it
> > > > > > >> > > > > > another
> > > > > > >> > > > > > > > > >>>> argument
> > > > > > >> > > > > > > > > >>>>> for keeping data under current dir - Ignite
> > > > > binary
> > > > > > >> > > > > distribution
> > > > > > >> > > > > > > > already
> > > > > > >> > > > > > > > > >>>>> does it, why should embedded scenario be
> > > > > > different?
> > > > > > >> > > > > > > > > >>>>>
> > > > > > >> > > > > > > > > >>>>> In Docker age, packages are becoming
> > > extinct.
> > > > > > Nobody
> > > > > > >> > > wants
> > > > > > >> > > > > them
> > > > > > >> > > > > > > > > >>> anymore,
> > > > > > >> > > > > > > > > >>>>> anyway. I don't see why we should aim for
> > > > those
> > > > > > >> since
> > > > > > >> > we
> > > > > > >> > > > > don't
> > > > > > >> > > > > > > even
> > > > > > >> > > > > > > > > >>> have
> > > > > > >> > > > > > > > > >>>>> very good packages today, and nobody wants
> > > to
> > > > > > >> > contribute
> > > > > > >> > > > > > towards
> > > > > > >> > > > > > > > their
> > > > > > >> > > > > > > > > >>>>> improvement.
> > > > > > >> > > > > > > > > >>>>>
> > > > > > >> > > > > > > > > >>>>> I also think we should not copy what other
> > > > DBMS
> > > > > do
> > > > > > >> > since
> > > > > > >> > > > > their
> > > > > > >> > > > > > > > > >>>> ease-of-use
> > > > > > >> > > > > > > > > >>>>> is usually lacking (this is from someone 
> > > > > > >> > > > > > > > > >>>>> who
> > > > had
> > > > > > to
> > > > > > >> > > support
> > > > > > >> > > > > > mysql
> > > > > > >> > > > > > > > and
> > > > > > >> > > > > > > > > >>>> pgsql
> > > > > > >> > > > > > > > > >>>>> deployments).
> > > > > > >> > > > > > > > > >>>>>
> > > > > > >> > > > > > > > > >>>>> Regards,
> > > > > > >> > > > > > > > > >>>>
> > > > > > >> > > > > > > > > >>>
> > > > > > >> > > > > > > > > >
> > > > > > >> > > > > > > > > >
> > > > > > >> > > > > > > > > > --
> > > > > > >> > > > > > > > > > Zhenya Stanilovsky
> > > > > > >> > > > > > > > >
> > > > > > >> > > > > > > >
> > > > > > >> > > > > > >
> > > > > > >> > > > > >
> > > > > > >> > > > >
> > > > > > >> > > >
> > > > > > >> > > >
> > > > > > >> > > > --
> > > > > > >> > > > -
> > > > > > >> > > > Denis
> > > > > > >> > > >
> > > > > > >> > >
> > > > > > >> >
> > > > > > >>
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
>
>
>
> --
> Best regards,
> Ivan Pavlukhin



-- 
Best regards,
Ivan Pavlukhin

Reply via email to