[xwiki-devs] DB Migration systems uses System.exit! Remove it
Hi devs, I see that Denis has added the following: if ("1".equals(config.getProperty("xwiki.store.migration.exitAfterEnd", "0"))) { logger.error("Exiting because xwiki.store.migration.exitAfterEnd is set"); System.exit(0); This is really bad IMO since System.exit should never be used in JavaEE/Servlet apps. See also http://nemo.sonarsource.org/drilldown/violations/XWIKI?rids%5B%5D=367322&rul... One problem for example is that this will stop the full Servlet JVM so if XWiki runs in a Servlet container running several other webapps suddenly the whole Servlet container will go down! What should be done instead is to remove this "feature" which has no real meaning in a Servlet environment. I'm thus proposing to deprecate this feature. I don't even understand what use cases it brings. WDYT? Thanks -Vincent
Being stuck in the middle of such a process I understand the rationale: go down, let the backup happen or something such, then only open the doors from outside and start serving. Maybe the right thing to offer is to run a script instead of going down? I would add to it to send a mail just before... since doing this might be configured in xwiki and it is harder in scripts? Paul Le 19 juin 2012 à 13:05, Vincent Massol a écrit :
Hi devs,
I see that Denis has added the following:
if ("1".equals(config.getProperty("xwiki.store.migration.exitAfterEnd", "0"))) { logger.error("Exiting because xwiki.store.migration.exitAfterEnd is set"); System.exit(0);
This is really bad IMO since System.exit should never be used in JavaEE/Servlet apps.
See also http://nemo.sonarsource.org/drilldown/violations/XWIKI?rids%5B%5D=367322&rul...
One problem for example is that this will stop the full Servlet JVM so if XWiki runs in a Servlet container running several other webapps suddenly the whole Servlet container will go down!
What should be done instead is to remove this "feature" which has no real meaning in a Servlet environment.
I'm thus proposing to deprecate this feature. I don't even understand what use cases it brings.
WDYT?
Thanks -Vincent
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
On Jun 19, 2012, at 5:38 PM, Paul Libbrecht wrote:
Being stuck in the middle of such a process I understand the rationale: go down, let the backup happen or something such, then only open the doors from outside and start serving.
Well you don't have to open the front end… This is just the servlet container. Usually you have an apache in front (or nginx, or…). When you perform upgrade you always need to block the front end because as an admin you need to verify the site works fine before you open it up for "public" consumption. This is no different. Thanks -Vincent
Maybe the right thing to offer is to run a script instead of going down? I would add to it to send a mail just before... since doing this might be configured in xwiki and it is harder in scripts?
Paul
Le 19 juin 2012 à 13:05, Vincent Massol a écrit :
Hi devs,
I see that Denis has added the following:
if ("1".equals(config.getProperty("xwiki.store.migration.exitAfterEnd", "0"))) { logger.error("Exiting because xwiki.store.migration.exitAfterEnd is set"); System.exit(0);
This is really bad IMO since System.exit should never be used in JavaEE/Servlet apps.
See also http://nemo.sonarsource.org/drilldown/violations/XWIKI?rids%5B%5D=367322&rul...
One problem for example is that this will stop the full Servlet JVM so if XWiki runs in a Servlet container running several other webapps suddenly the whole Servlet container will go down!
What should be done instead is to remove this "feature" which has no real meaning in a Servlet environment.
I'm thus proposing to deprecate this feature. I don't even understand what use cases it brings.
WDYT?
Thanks -Vincent
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
Exactly. That's why it would be useful: - to get some insights on the duration of the process (or at least the steps being done and left to be done) - to get an email that it is ready and one can start things - to start some maintenance operations as soon as it is migrated (e.g. a restart, e.g. launch a phase 2 deployment) Paul Le 19 juin 2012 à 17:48, Vincent Massol a écrit :
On Jun 19, 2012, at 5:38 PM, Paul Libbrecht wrote:
Being stuck in the middle of such a process I understand the rationale: go down, let the backup happen or something such, then only open the doors from outside and start serving.
Well you don't have to open the front end… This is just the servlet container. Usually you have an apache in front (or nginx, or…).
When you perform upgrade you always need to block the front end because as an admin you need to verify the site works fine before you open it up for "public" consumption. This is no different.
Thanks -Vincent
Maybe the right thing to offer is to run a script instead of going down? I would add to it to send a mail just before... since doing this might be configured in xwiki and it is harder in scripts?
Paul
Le 19 juin 2012 à 13:05, Vincent Massol a écrit :
Hi devs,
I see that Denis has added the following:
if ("1".equals(config.getProperty("xwiki.store.migration.exitAfterEnd", "0"))) { logger.error("Exiting because xwiki.store.migration.exitAfterEnd is set"); System.exit(0);
This is really bad IMO since System.exit should never be used in JavaEE/Servlet apps.
See also http://nemo.sonarsource.org/drilldown/violations/XWIKI?rids%5B%5D=367322&rul...
One problem for example is that this will stop the full Servlet JVM so if XWiki runs in a Servlet container running several other webapps suddenly the whole Servlet container will go down!
What should be done instead is to remove this "feature" which has no real meaning in a Servlet environment.
I'm thus proposing to deprecate this feature. I don't even understand what use cases it brings.
WDYT?
Thanks -Vincent
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
participants (2)
-
Paul Libbrecht -
Vincent Massol