[xwiki-devs] [Proposal] Default directory for Extension Manager
Hi devs, Thomas just told me that he's made a change for Extension Manager (apparently there was a vote for it and I missed it - I can't find it so if anyone has the link please point me to it) and that by default now the Extension Manager uses the temporary directory to store installed extensions (Before it was using ~/.xwiki). I thus want to throw my -1 to release 3.2 final with this (I'd also much prefer if 3.2M3 doesn't have it as much as possible). The reason is that the tmp/ directory can get wiped anytime and the user can thus suddenly loose all its installed extensions. I believe we need a permanent location for that. We have 2 general options IMO: 1) Don't start xwiki if the work directory is not explicitly configured 2) Make the default EM work directory be the same as before (ie ~/.xwiki), when the work dir config property is not defined I also want to propose that for the standalone distribution of XE (the jetty/hsqldb package) we use work/ as the work directory. We already create this directory and we should use it (it's already used by our lucene indexing BTW). WDYT? Thanks -Vincent
+1 for #2 Caleb On 09/19/2011 12:45 PM, Vincent Massol wrote:
Hi devs,
Thomas just told me that he's made a change for Extension Manager (apparently there was a vote for it and I missed it - I can't find it so if anyone has the link please point me to it) and that by default now the Extension Manager uses the temporary directory to store installed extensions (Before it was using ~/.xwiki).
I thus want to throw my -1 to release 3.2 final with this (I'd also much prefer if 3.2M3 doesn't have it as much as possible). The reason is that the tmp/ directory can get wiped anytime and the user can thus suddenly loose all its installed extensions. I believe we need a permanent location for that.
We have 2 general options IMO:
1) Don't start xwiki if the work directory is not explicitly configured 2) Make the default EM work directory be the same as before (ie ~/.xwiki), when the work dir config property is not defined
I also want to propose that for the standalone distribution of XE (the jetty/hsqldb package) we use work/ as the work directory. We already create this directory and we should use it (it's already used by our lucene indexing BTW).
WDYT?
Thanks -Vincent
_______________________________________________ devs mailing list devs@xwiki.org http://lists.xwiki.org/mailman/listinfo/devs
On 09/19/2011 12:45 PM, Vincent Massol wrote:
Hi devs,
Thomas just told me that he's made a change for Extension Manager (apparently there was a vote for it and I missed it - I can't find it so if anyone has the link please point me to it) and that by default now the Extension Manager uses the temporary directory to store installed extensions (Before it was using ~/.xwiki).
Not a proper vote, but I think this is the mail Thomas is mentioning: http://markmail.org/message/mgjnjdw46rohdpbk
I thus want to throw my -1 to release 3.2 final with this (I'd also much prefer if 3.2M3 doesn't have it as much as possible). The reason is that the tmp/ directory can get wiped anytime and the user can thus suddenly loose all its installed extensions. I believe we need a permanent location for that.
We have 2 general options IMO:
1) Don't start xwiki if the work directory is not explicitly configured 2) Make the default EM work directory be the same as before (ie ~/.xwiki), when the work dir config property is not defined
Personally I think that 2 doesn't really work. On a serious server installation there shouldn't be any ~ directory for the "user" running the server. ~tomcat is /dev/null on my system. Ideally, there should be a wizard at the start asking for this, in a mandatory step. But we're pretty far from having a proper first-run setup wizard. If I have to chose between these two, +1 for 1)
I also want to propose that for the standalone distribution of XE (the jetty/hsqldb package) we use work/ as the work directory. We already create this directory and we should use it (it's already used by our lucene indexing BTW).
+1 for this one.
WDYT?
-- Sergiu Dumitriu http://purl.org/net/sergiu/
On Sep 19, 2011, at 8:41 PM, Sergiu Dumitriu wrote:
On 09/19/2011 12:45 PM, Vincent Massol wrote:
Hi devs,
Thomas just told me that he's made a change for Extension Manager (apparently there was a vote for it and I missed it - I can't find it so if anyone has the link please point me to it) and that by default now the Extension Manager uses the temporary directory to store installed extensions (Before it was using ~/.xwiki).
Not a proper vote, but I think this is the mail Thomas is mentioning: http://markmail.org/message/mgjnjdw46rohdpbk
I thus want to throw my -1 to release 3.2 final with this (I'd also much prefer if 3.2M3 doesn't have it as much as possible). The reason is that the tmp/ directory can get wiped anytime and the user can thus suddenly loose all its installed extensions. I believe we need a permanent location for that.
We have 2 general options IMO:
1) Don't start xwiki if the work directory is not explicitly configured 2) Make the default EM work directory be the same as before (ie ~/.xwiki), when the work dir config property is not defined
Personally I think that 2 doesn't really work. On a serious server installation there shouldn't be any ~ directory for the "user" running the server. ~tomcat is /dev/null on my system.
Hudson/Jenkins do it like this and it has worked for a lot of people. Remember that we're talking about a default directory. IMO 2) is better till we have the wizard yo mention. We need to make it easy and as smooth as possible to use XE (remember that lots of people won't go further in their evaluation of it if they cannot install it). Personally I'm slightly in favor of 2) ATM till we have the wizard. Thanks -Vincent
Ideally, there should be a wizard at the start asking for this, in a mandatory step. But we're pretty far from having a proper first-run setup wizard.
If I have to chose between these two, +1 for 1)
I also want to propose that for the standalone distribution of XE (the jetty/hsqldb package) we use work/ as the work directory. We already create this directory and we should use it (it's already used by our lucene indexing BTW).
+1 for this one.
WDYT?
-- Sergiu Dumitriu http://purl.org/net/sergiu/
On Mon, Sep 19, 2011 at 6:45 PM, Vincent Massol <vincent@massol.net> wrote:
Hi devs,
Thomas just told me that he's made a change for Extension Manager (apparently there was a vote for it and I missed it - I can't find it so if anyone has the link please point me to it) and that by default now the Extension Manager uses the temporary directory to store installed extensions (Before it was using ~/.xwiki).
I never said that, EM is using XWiki container standard work directly like attachment files and Lucene for example. What the directory is is up to the container component implementation and not EM. It just happen that when you don't specify work directory the servlet temporary directory is used. The vote was about making standard work directory available to components and I don't see why a vote is needed for a component to use the standard XWiki work directory. If there is anything to decide it's where is the standard XWiki work directory since both Lucene and FS attachments have the exact same issue but it has nothing do do with EM IMO.
I thus want to throw my -1 to release 3.2 final with this (I'd also much prefer if 3.2M3 doesn't have it as much as possible). The reason is that the tmp/ directory can get wiped anytime and the user can thus suddenly loose all its installed extensions. I believe we need a permanent location for that.
We have 2 general options IMO:
1) Don't start xwiki if the work directory is not explicitly configured 2) Make the default EM work directory be the same as before (ie ~/.xwiki), when the work dir config property is not defined
I also want to propose that for the standalone distribution of XE (the jetty/hsqldb package) we use work/ as the work directory. We already create this directory and we should use it (it's already used by our lucene indexing BTW).
That's because it's explicitly set in xwiki.cfg so to have the same behavior all that is needed is to set it the same way in xwiki.properties.
WDYT?
Thanks -Vincent
_______________________________________________ devs mailing list devs@xwiki.org http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne
On Sep 19, 2011, at 8:41 PM, Thomas Mortagne wrote:
On Mon, Sep 19, 2011 at 6:45 PM, Vincent Massol <vincent@massol.net> wrote:
Hi devs,
Thomas just told me that he's made a change for Extension Manager (apparently there was a vote for it and I missed it - I can't find it so if anyone has the link please point me to it) and that by default now the Extension Manager uses the temporary directory to store installed extensions (Before it was using ~/.xwiki).
I never said that, EM is using XWiki container standard work directly like attachment files and Lucene for example. What the directory is is up to the container component implementation and not EM. It just happen that when you don't specify work directory the servlet temporary directory is used.
This is very wrong. AFAIR we discussed about how to name that directory and we called it "permanent storage directory" AFAIR. Using the servlet tmp dir as the permanent storage directory is asking for trouble.
The vote was about making standard work directory available to components and I don't see why a vote is needed for a component to use the standard XWiki work directory.
If there is anything to decide it's where is the standard XWiki work directory since both Lucene and FS attachments have the exact same issue
Yes although not quite, see below
but it has nothing do do with EM IMO.
IMO you're confusing things because you see them from a technical point of view. What we've done is a regression from the point of view of the user. While previously his extensions were stored in a safe persistent location, now when he downloads XE, it's stored in a temporary location by default. The user doesn't care whether technically what we've done is correct or not. It's bug from a user POV.
I thus want to throw my -1 to release 3.2 final with this (I'd also much prefer if 3.2M3 doesn't have it as much as possible). The reason is that the tmp/ directory can get wiped anytime and the user can thus suddenly loose all its installed extensions. I believe we need a permanent location for that.
We have 2 general options IMO:
1) Don't start xwiki if the work directory is not explicitly configured 2) Make the default EM work directory be the same as before (ie ~/.xwiki), when the work dir config property is not defined
I also want to propose that for the standalone distribution of XE (the jetty/hsqldb package) we use work/ as the work directory. We already create this directory and we should use it (it's already used by our lucene indexing BTW).
Actually the lucene index files don' t really need a directory as stable as the extension directory since lucene indexes can be removed at no harm. It won't change any behavior of XE and the indexes will be recreated when XE starts. So we could use the same location but ideally we'd need a better and more stable directory for EM extensions. BTW we decided not to call the directory "work" in the code so we should probably not call it "work" on the FS either. I think we should rename it to data/ for example and use that directory for the lucene files for now. WDYT? BTW I'd also like that we progressively move the xwiki config files to this directory (xwiki.cfg, xwiki.properties) to make it real easy to save/find xwiki data and so that installing a new version of the XE WAR doesn't override them.
That's because it's explicitly set in xwiki.cfg so to have the same behavior all that is needed is to set it the same way in xwiki.properties.
Let's do it then. Thanks -Vincent
WDYT?
Thanks -Vincent
On Tue, Sep 20, 2011 at 10:40 AM, Vincent Massol <vincent@massol.net> wrote:
On Sep 19, 2011, at 8:41 PM, Thomas Mortagne wrote:
On Mon, Sep 19, 2011 at 6:45 PM, Vincent Massol <vincent@massol.net> wrote:
Hi devs,
Thomas just told me that he's made a change for Extension Manager (apparently there was a vote for it and I missed it - I can't find it so if anyone has the link please point me to it) and that by default now the Extension Manager uses the temporary directory to store installed extensions (Before it was using ~/.xwiki).
I never said that, EM is using XWiki container standard work directly like attachment files and Lucene for example. What the directory is is up to the container component implementation and not EM. It just happen that when you don't specify work directory the servlet temporary directory is used.
This is very wrong. AFAIR we discussed about how to name that directory and we called it "permanent storage directory" AFAIR. Using the servlet tmp dir as the permanent storage directory is asking for trouble.
The vote was about making standard work directory available to components and I don't see why a vote is needed for a component to use the standard XWiki work directory.
If there is anything to decide it's where is the standard XWiki work directory since both Lucene and FS attachments have the exact same issue
Yes although not quite, see below
but it has nothing do do with EM IMO.
IMO you're confusing things because you see them from a technical point of view. What we've done is a regression from the point of view of the user. While previously his extensions were stored in a safe persistent location, now when he downloads XE, it's stored in a temporary location by default. The user doesn't care whether technically what we've done is correct or not. It's bug from a user POV.
I thus want to throw my -1 to release 3.2 final with this (I'd also much prefer if 3.2M3 doesn't have it as much as possible). The reason is that the tmp/ directory can get wiped anytime and the user can thus suddenly loose all its installed extensions. I believe we need a permanent location for that.
We have 2 general options IMO:
1) Don't start xwiki if the work directory is not explicitly configured 2) Make the default EM work directory be the same as before (ie ~/.xwiki), when the work dir config property is not defined
I also want to propose that for the standalone distribution of XE (the jetty/hsqldb package) we use work/ as the work directory. We already create this directory and we should use it (it's already used by our lucene indexing BTW).
Actually the lucene index files don' t really need a directory as stable as the extension directory since lucene indexes can be removed at no harm. It won't change any behavior of XE and the indexes will be recreated when XE starts.
It's not just about Lucene, you are forgetting FS attachments.
So we could use the same location but ideally we'd need a better and more stable directory for EM extensions. BTW we decided not to call the directory "work" in the code so we should probably not call it "work" on the FS either.
I think we should rename it to data/ for example and use that directory for the lucene files for now.
WDYT?
BTW I'd also like that we progressively move the xwiki config files to this directory (xwiki.cfg, xwiki.properties) to make it real easy to save/find xwiki data and so that installing a new version of the XE WAR doesn't override them.
That's because it's explicitly set in xwiki.cfg so to have the same behavior all that is needed is to set it the same way in xwiki.properties.
Let's do it then.
Thanks -Vincent
WDYT?
Thanks -Vincent
devs mailing list devs@xwiki.org http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne
On Sep 20, 2011, at 11:06 AM, Thomas Mortagne wrote:
On Tue, Sep 20, 2011 at 10:40 AM, Vincent Massol <vincent@massol.net> wrote:
On Sep 19, 2011, at 8:41 PM, Thomas Mortagne wrote:
On Mon, Sep 19, 2011 at 6:45 PM, Vincent Massol <vincent@massol.net> wrote:
Hi devs,
Thomas just told me that he's made a change for Extension Manager (apparently there was a vote for it and I missed it - I can't find it so if anyone has the link please point me to it) and that by default now the Extension Manager uses the temporary directory to store installed extensions (Before it was using ~/.xwiki).
I never said that, EM is using XWiki container standard work directly like attachment files and Lucene for example. What the directory is is up to the container component implementation and not EM. It just happen that when you don't specify work directory the servlet temporary directory is used.
This is very wrong. AFAIR we discussed about how to name that directory and we called it "permanent storage directory" AFAIR. Using the servlet tmp dir as the permanent storage directory is asking for trouble.
The vote was about making standard work directory available to components and I don't see why a vote is needed for a component to use the standard XWiki work directory.
If there is anything to decide it's where is the standard XWiki work directory since both Lucene and FS attachments have the exact same issue
Yes although not quite, see below
but it has nothing do do with EM IMO.
IMO you're confusing things because you see them from a technical point of view. What we've done is a regression from the point of view of the user. While previously his extensions were stored in a safe persistent location, now when he downloads XE, it's stored in a temporary location by default. The user doesn't care whether technically what we've done is correct or not. It's bug from a user POV.
I thus want to throw my -1 to release 3.2 final with this (I'd also much prefer if 3.2M3 doesn't have it as much as possible). The reason is that the tmp/ directory can get wiped anytime and the user can thus suddenly loose all its installed extensions. I believe we need a permanent location for that.
We have 2 general options IMO:
1) Don't start xwiki if the work directory is not explicitly configured 2) Make the default EM work directory be the same as before (ie ~/.xwiki), when the work dir config property is not defined
I also want to propose that for the standalone distribution of XE (the jetty/hsqldb package) we use work/ as the work directory. We already create this directory and we should use it (it's already used by our lucene indexing BTW).
Actually the lucene index files don' t really need a directory as stable as the extension directory since lucene indexes can be removed at no harm. It won't change any behavior of XE and the indexes will be recreated when XE starts.
It's not just about Lucene, you are forgetting FS attachments.
Yes FS attachments need a stable permanent storage location same as for EM extension data. IMO the data/ directory I mentioned below (for the standalone distribution) is good for that. WDYT? Thanks -Vincent
So we could use the same location but ideally we'd need a better and more stable directory for EM extensions. BTW we decided not to call the directory "work" in the code so we should probably not call it "work" on the FS either.
I think we should rename it to data/ for example and use that directory for the lucene files for now.
WDYT?
BTW I'd also like that we progressively move the xwiki config files to this directory (xwiki.cfg, xwiki.properties) to make it real easy to save/find xwiki data and so that installing a new version of the XE WAR doesn't override them.
That's because it's explicitly set in xwiki.cfg so to have the same behavior all that is needed is to set it the same way in xwiki.properties.
Let's do it then.
Thanks -Vincent
WDYT?
Thanks -Vincent
participants (4)
-
Caleb James DeLisle -
Sergiu Dumitriu -
Thomas Mortagne -
Vincent Massol