Project:
View Issue Details[ Jump to Notes ] | [ Issue History ] [ Print ] | |||||||
ID | ||||||||
0051068 | ||||||||
Type | Category | Severity | Reproducibility | Date Submitted | Last Update | |||
feature request | [Openbravo ERP] A. Platform | major | have not tried | 2022-12-05 14:59 | 2022-12-21 08:23 | |||
Reporter | shuehner | View Status | public | |||||
Assigned To | shuehner | |||||||
Priority | normal | Resolution | fixed | Fixed in Version | PR23Q1 | |||
Status | closed | Fix in branch | Fixed in SCM revision | |||||
Projection | none | ETA | none | Target Version | PR23Q1 | |||
OS | Any | Database | Any | Java version | ||||
OS Version | Database version | Ant version | ||||||
Product Version | SCM revision | |||||||
Review Assigned To | ||||||||
Web browser | ||||||||
Modules | Core | |||||||
Regression level | ||||||||
Regression date | ||||||||
Regression introduced in release | ||||||||
Regression introduced by commit | ||||||||
Triggers an Emergency Pack | No | |||||||
Summary | 0051068: Block direct upgrades from version older than 16Q1 to latest version | |||||||
Description | Direct upgrades from very old version require to keep extra code around just for that purpose. Blocking possibility to block direct updates allows to cleanup that code. This issue adds a buildvalidation to refuse updating if the old version is older than 16Q1. Effect is that direct upgrades to the version which includes this issue (23Q1) are not possible and instead an error message is shown. This indirectly also blocks (direct) migration from old 2.50 major release. However 2.50 migration typically include running the APRM migration tool which is no longer possible since the 18Q4 release. So this change here does not add any extra restriction for 2.50 migrations. Instances which should be affected by this change can still upgrade but need to go via some intermediate version. Example: - First upgrade to a at most 22Q4 release - Then 2nd upgrade to move ahead to the latest version | |||||||
Steps To Reproduce | - | |||||||
Proposed Solution | Add build-validation running if old version is < 16Q4 which shows an error message explaining that direct upgrades are no longer possible (but going via intermediate version is still an option) Message shown is via wiki link: http://wiki.openbravo.com/wiki/RestrictOldDirectUpdates [^] | |||||||
Tags | No tags attached. | |||||||
Attached Files | ||||||||
Relationships [ Relation Graph ] [ Dependency Graph ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Notes | |
(0144425) hgbot (developer) 2022-12-05 17:13 |
Merge Request created: https://gitlab.com/openbravo/product/openbravo/-/merge_requests/779 [^] |
(0144493) shuehner (administrator) 2022-12-09 11:49 |
Testplan: 1.) Test upgrade from version older than 16Q1 1.a) Install 15Q4.6 git checkout 3.0PR15Q4.6 export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ # Note: can be done with pg10 (works good enough for our purpose) ant setup ant install.source 1.b) Switch to git master containing this change export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/ ant buildvalidation 1.c) Verify expected behavior: - Error message is shown about updates not being possible - This buildvalidation is run first as is blocking the process 2.) Test upgrade from version 16Q1 2.a) Install 16Q1 git checkout 3.0PR16Q1 export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ # Note: can be done with pg10 (works good enough for our purpose) ant setup ant install.source 1.b) Switch to git master containing this change export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/ ant buildvalidation 1.c) Expected: Error message is not shown |
(0144636) hgbot (developer) 2022-12-14 09:45 |
Merge request merged: https://gitlab.com/openbravo/product/openbravo/-/merge_requests/779 [^] |
(0144637) hgbot (developer) 2022-12-14 09:45 |
Directly closing issue as related merge request is already approved. Repository: https://gitlab.com/openbravo/product/openbravo [^] Changeset: fa4f6bb422d544dd22fe1bddfe9ac8f3a083bdb4 Author: Stefan Huehner <stefan.huehner@openbravo.com> Date: 14-12-2022 08:45:08 URL: https://gitlab.com/openbravo/product/openbravo/-/commit/fa4f6bb422d544dd22fe1bddfe9ac8f3a083bdb4 [^] Fixes ISSUE-51068: Block update from version older than 16Q1 Block updates coming from versions older than 16Q1 by adding a buildvalidation to detect those cases and error out with a message. Buildvalidation has an ExecutionLimit of 3.0.28207 which is exactly 16Q1. ExecutionLimits are checked with < comparison which gives the wanted behavior: - Validation is running if old version is <16Q1 - But no longer running if it is already 16Q1 (or higher) Additionally modify BuildValidationHandler declaring that this new check should be run first before other validation: - Conceptually makes sense to raise this first (before any data checks) - Technically needed as in some (ratr) cases other buildvalidations already modify data (related to the upgrade process) i.e. RemoveCostingRuleProcessExecutions So check and block the update process as first step. - ant target buildvalidation depends on core.lib which ensures the modified handler to be compiled before this new check is ran. The buildvalidation committed .class file is compiled for Java11 with is min version supported right now. For the upgrade process that is already required anyway as i.e.: - build.xml blocks version < Java 11 already - dbsourcemanager.jar is also compiled for Java11 So that does not introduce any new restriction for those upgrades. Wiki page is added with info for affected users and a table of added restrictions (in case more come in future): http://wiki.openbravo.com/wiki/RestrictOldDirectUpdates [^] --- A src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/RestrictOldDirectUpdates.class A src-util/buildvalidation/src/org/openbravo/buildvalidation/RestrictOldDirectUpdates.java M src-core/src/org/openbravo/buildvalidation/BuildValidationHandler.java --- |
(0144655) hgbot (developer) 2022-12-14 10:29 |
Repository: https://gitlab.com/openbravo/product/openbravo [^] Changeset: a48a6d97644629340031d6ab80a58145e9db424e Author: Stefan Huehner <stefan.huehner@openbravo.com> Date: 14-12-2022 09:29:47 URL: https://gitlab.com/openbravo/product/openbravo/-/commit/a48a6d97644629340031d6ab80a58145e9db424e [^] Related to ISSUE-51069: Delete obsolete buildvalidations from <16Q1 ISSUE-51068 blocks direct updates from before 3.0 16Q1 That allows to delete any buildvalidation with an EndVersion <=16Q1 as they will never trigger. --- R modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/buildvalidation/TransactionsWithMissingData.class R modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/buildvalidation/TransactionsWithMissingDataData.class R modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/buildvalidation/UniquePaymentForTransaction.class R modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/buildvalidation/UniquePaymentForTransactionData.class R modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/buildvalidation/UnpostRefundPayments.class R modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/buildvalidation/UnpostRefundPaymentsData.class R modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/buildvalidation/WrongPaymentScheduleDetailsCheck.class R modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/buildvalidation/WrongPaymentScheduleDetailsCheckData.class R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/org/openbravo/advpaymentmngt/buildvalidation/TransactionsWithMissingData.java R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/org/openbravo/advpaymentmngt/buildvalidation/TransactionsWithMissingData_data.xsql R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/org/openbravo/advpaymentmngt/buildvalidation/UniquePaymentForTransaction.java R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/org/openbravo/advpaymentmngt/buildvalidation/UniquePaymentForTransaction_data.xsql R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/org/openbravo/advpaymentmngt/buildvalidation/UnpostRefundPayments.java R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/org/openbravo/advpaymentmngt/buildvalidation/UnpostRefundPayments_data.xsql R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/org/openbravo/advpaymentmngt/buildvalidation/WrongPaymentScheduleDetailsCheck.java R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/org/openbravo/advpaymentmngt/buildvalidation/WrongPaymentScheduleDetailsCheck_data.xsql R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/src/org/openbravo/advpaymentmngt/buildvalidation/TransactionsWithMissingDataData.java R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/src/org/openbravo/advpaymentmngt/buildvalidation/UniquePaymentForTransactionData.java R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/src/org/openbravo/advpaymentmngt/buildvalidation/UnpostRefundPaymentsData.java R modules/org.openbravo.advpaymentmngt/src-util/buildvalidation/src/src/org/openbravo/advpaymentmngt/buildvalidation/WrongPaymentScheduleDetailsCheckData.java R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/AccountingTabs.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/AccountingTabsData.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/CheckUpdateConnectionPoolMerge.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/DuplicateDocExchangeRate.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/DuplicateDocExchangeRateData.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/DuplicatedJavaPackage.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/DuplicatedJavaPackageData.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/DuplicatedOrgWarehouse.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/DuplicatedOrgWarehouseData.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/DuplicatedPriceListVersion.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/DuplicatedPriceListVersionData.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/GLJournalAccountingCheck.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/GLJournalAccountingCheckData.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/PaymentGLItemCheck.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/PaymentGLItemCheckData.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/PreferenceConflict.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/PreferenceConflictData.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/RemoveCostingRuleProcessExecutions.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/RemoveCostingRuleProcessExecutionsData.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/User1Ready.class R src-util/buildvalidation/build/classes/org/openbravo/buildvalidation/User1ReadyData.class R src-util/buildvalidation/build/javasqlc/src/org/openbravo/buildvalidation/DuplicatedOrgWarehouseData.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/AccountingTabs.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/AccountingTabs_data.xsql R src-util/buildvalidation/src/org/openbravo/buildvalidation/CheckUpdateConnectionPoolMerge.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/DuplicateDocExchangeRate.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/DuplicateDocExchangeRate_data.xsql R src-util/buildvalidation/src/org/openbravo/buildvalidation/DuplicatedJavaPackage.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/DuplicatedJavaPackage_data.xsql R src-util/buildvalidation/src/org/openbravo/buildvalidation/DuplicatedOrgWarehouse.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/DuplicatedOrgWarehouse_data.xsql R src-util/buildvalidation/src/org/openbravo/buildvalidation/DuplicatedPriceListVersion.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/DuplicatedPriceListVersion_data.xsql R src-util/buildvalidation/src/org/openbravo/buildvalidation/GLJournalAccountingCheck.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/GLJournalAccountingCheck_data.xsql R src-util/buildvalidation/src/org/openbravo/buildvalidation/PaymentGLItemCheck.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/PaymentGLItemCheck_data.xsql R src-util/buildvalidation/src/org/openbravo/buildvalidation/PreferenceConflict.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/PreferenceConflict_data.xsql R src-util/buildvalidation/src/org/openbravo/buildvalidation/RemoveCostingRuleProcessExecutions.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/RemoveCostingRuleProcessExecutions_data.xsql R src-util/buildvalidation/src/org/openbravo/buildvalidation/User1Ready.java R src-util/buildvalidation/src/org/openbravo/buildvalidation/User1Ready_data.xsql --- |
(0144857) hgbot (developer) 2022-12-21 08:23 |
Repository: https://gitlab.com/openbravo/product/openbravo [^] Changeset: 9bffaae704fce4c0b5e8d5967a8524180bcd491d Author: Stefan Huehner <stefan.huehner@openbravo.com> Date: 21-12-2022 07:23:31 URL: https://gitlab.com/openbravo/product/openbravo/-/commit/9bffaae704fce4c0b5e8d5967a8524180bcd491d [^] fixed ISSUE-51152: Delete obsolete modulescripts These scripts only ran on updates before MP16 ISSUE-51068 blocks updates from <16Q1 causing it to never run on updates anymore. --- R src-util/modulescript/build/classes/org/openbravo/modulescript/ConvertImages.class R src-util/modulescript/build/classes/org/openbravo/modulescript/DeleteRedundantTranslations.class R src-util/modulescript/build/classes/org/openbravo/modulescript/DeleteRedundantTranslationsData.class R src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeAlertStatus.class R src-util/modulescript/build/classes/org/openbravo/modulescript/InitializeAlertStatusData.class R src-util/modulescript/build/classes/org/openbravo/modulescript/PgJdbcDatesIssue.class R src-util/modulescript/build/classes/org/openbravo/modulescript/PgJdbcDatesIssueData.class R src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateEmailPasswords.class R src-util/modulescript/build/classes/org/openbravo/modulescript/UpdateEmailPasswordsData.class R src-util/modulescript/build/classes/org/openbravo/modulescript/UpgradeToPocEmail.class R src-util/modulescript/build/classes/org/openbravo/modulescript/UpgradeToPocEmailData.class R src-util/modulescript/src/org/openbravo/modulescript/ConvertImages.java R src-util/modulescript/src/org/openbravo/modulescript/DeleteRedundantTranslations.java R src-util/modulescript/src/org/openbravo/modulescript/DeleteRedundantTranslations_data.xsql R src-util/modulescript/src/org/openbravo/modulescript/InitializeAlertStatus.java R src-util/modulescript/src/org/openbravo/modulescript/InitializeAlertStatus_data.xsql R src-util/modulescript/src/org/openbravo/modulescript/PgJdbcDatesIssue.java R src-util/modulescript/src/org/openbravo/modulescript/PgJdbcDatesIssue_data.xsql R src-util/modulescript/src/org/openbravo/modulescript/UpdateEmailPasswords.java R src-util/modulescript/src/org/openbravo/modulescript/UpdateEmailPasswords_Data.xsql R src-util/modulescript/src/org/openbravo/modulescript/UpgradeToPocEmail.java R src-util/modulescript/src/org/openbravo/modulescript/UpgradeToPocEmail_Data.xsql --- |
Issue History | |||
Date Modified | Username | Field | Change |
2022-12-05 14:59 | shuehner | New Issue | |
2022-12-05 14:59 | shuehner | Assigned To | => Triage Platform Base |
2022-12-05 14:59 | shuehner | Modules | => Core |
2022-12-05 14:59 | shuehner | Triggers an Emergency Pack | => No |
2022-12-05 14:59 | shuehner | Issue generated from | 0048466 |
2022-12-05 14:59 | shuehner | Assigned To | Triage Platform Base => shuehner |
2022-12-05 15:05 | shuehner | Relationship added | blocks 0051069 |
2022-12-05 15:59 | shuehner | Relationship added | blocks 0051070 |
2022-12-05 16:38 | shuehner | Relationship added | blocks 0051071 |
2022-12-05 17:13 | hgbot | Note Added: 0144425 | |
2022-12-05 17:22 | shuehner | Relationship added | blocks 0051073 |
2022-12-09 11:49 | shuehner | Note Added: 0144493 | |
2022-12-13 14:37 | shuehner | Target Version | => PR23Q1 |
2022-12-13 14:39 | shuehner | Proposed Solution updated | |
2022-12-14 09:45 | hgbot | Resolution | open => fixed |
2022-12-14 09:45 | hgbot | Status | new => closed |
2022-12-14 09:45 | hgbot | Note Added: 0144636 | |
2022-12-14 09:45 | hgbot | Fixed in Version | => PR23Q1 |
2022-12-14 09:45 | hgbot | Note Added: 0144637 | |
2022-12-14 10:29 | hgbot | Note Added: 0144655 | |
2022-12-14 13:29 | shuehner | Relationship added | blocks 0051152 |
2022-12-15 11:26 | shuehner | Relationship added | blocks 0051153 |
2022-12-21 08:23 | hgbot | Note Added: 0144857 | |
2023-07-21 16:14 | shuehner | Relationship added | blocks 0053029 |
2023-08-06 13:32 | shuehner | Relationship added | blocks 0053170 |
Copyright © 2000 - 2009 MantisBT Group |