Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Removed Mage_Backup module #2259

Closed
wants to merge 65 commits into from
Closed

Conversation

fballiano
Copy link
Contributor

Mage_Backup was disabled by "the old management" years ago, this PR removes it and clean all its files (and related ones).

Note that this PR also solves a big problem, when deleting a website there's no confirmation prompt ask, press the button and the website is gone. This PR adds the confirmation prompt back.

@github-actions github-actions bot added Component: Adminhtml Relates to Mage_Adminhtml Component: Backup Relates to Mage_Backup Component: Core Relates to Mage_Core Component: lib/Mage Relates to lib/Mage Component: lib/* Relates to lib/* JavaScript Relates to js/* Template : admin Relates to admin template translations Relates to app/locale environment labels Jun 26, 2022
@sreichel
Copy link
Contributor

Some people still use it (re-enabled).

@ADDISON74
Copy link
Contributor

My opinion is to keep this module for a while in OpenMage.

If you have identified issues related to its functionality it would be good to fix them.

@fballiano
Copy link
Contributor Author

In my opinion this module is useless in 2022, with big catalogs it WILL crash your servers (and I saw it happen multiple times) and it was deactivated for a reason, it was inactive for years and nobody complained so... ;-)

@justinbeaty
Copy link
Contributor

Very nice work @fballiano! I haven’t tested the PR, but I agree with its removal.

Perhaps a compromise is that we put it into a separate repo with a modman file for it to be installable. We could even install it into the release zip with the build tool so it stays available unless you use composer and don’t specifically require it.

@ADDISON74
Copy link
Contributor

ADDISON74 commented Jun 29, 2022

We cannot evaluate the impact of removing, but we can make it a separate module for everyone who cries after it. Not all stores are big, there are small stores that could use this feature to backup/restore a database without having access to Terminal. It could be extensions that use it too. At least in my tests it works as expected.

@fballiano
Copy link
Contributor Author

It is hard to make it an external module, it had parts that were hardcoded in the store management masks.

It was disabled during a security patch, probably because they didn't have time to remove it completely (because of the hardcoded pieces in the core). I don't know precisely why but it seems to me that the original authors evaluated that it wasn't safe or something.

@github-actions github-actions bot added Component: Index Relates to Mage_Index Component: lib/Varien Relates to lib/Varien Component: Oauth Relates to Mage_Oauth Component: PageCache Relates to Mage_PageCache Component: Paygate Relates to Mage_Paygate Component: Payment Relates to Mage_Payment Component: Rating Relates to Mage_Rating Component: Rss Relates to Mage_Rss Component: Rule Relates to Mage_Rule Component: Sales Relates to Mage_Sales Component: SalesRule Relates to Mage_SalesRule Component: Tag Relates to Mage_Tag Component: Tax Relates to Mage_Tax Component: Uploader Relates to Mage_Uploader Component: Usa Relates to Mage_Usa Component: Weee Relates to Mage_Weee Component: Widget Relates to Mage_Widget Component: Wishlist Relates to Mage_Wishlist composer Relates to composer.json htaccess Mage.php Relates to app/Mage.php phpstan Template : base Relates to base template XML Layout labels Aug 12, 2022
@fballiano
Copy link
Contributor Author

ok it's broken, i'll close it

@fballiano fballiano closed this Aug 12, 2022
@ADDISON74
Copy link
Contributor

Copied from here #2024 (comment).

I tried to understand why this module was disabled in 1.9.4.0, given that backing up this way from Backend was a handy solution for small and medium-sized stores. The Magento team made only a brief statement: "It no longer meets compliance requirements. Saved backups should be encrypted".

Instead of finding a solution to this issue they chose to disable it. Over time starting with November 2018 there have been discussions that if it is enabled it creates a security hole in Magento. This created a false impression about this module, when in fact the issue was completely different. If someone gets backups they can use the information, some of them confidential about sales, customers.

If what is saved by this module is secured and protected from being accessed from outside then there would be no issues. Whoever has access to a server will not be interested in the files located in /var/backup when he can access any information in the file system and database.

This module can be left alone in OpenMage and if data security over backups is ensured it can be enabled by those who need it. Reading the forums of the time there were enough who missed it. If you choose to remove it please offer in README.md alternative solutions for making backups. At that time Magento showed a couple but the link is no longer available and it doesn't exist in the Internet Archive.

Addendum: What I wrote above refers to a small store where Backup/Restore feature can be done through Backend. I have never tested the performance of this module in the case of a large store. Every time I used the command line when I manually saved data or restored them. If the database is corrupted there is little chance that the Backend will still work.

@fballiano
Copy link
Contributor Author

I kinda broke the PR trying to fix the conflicts and, since the consensus was that nobody wants it removed I'll leave it as it is.

@sreichel sreichel mentioned this pull request Dec 4, 2022
4 tasks
@sreichel sreichel mentioned this pull request Dec 16, 2022
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Admin Relates to Mage_Admin Component: Adminhtml Relates to Mage_Adminhtml Component: AdminNotification Relates to Mage_AdminNotification Component: Api PageRelates to Mage_Api Component: Api2 Relates to Mage_Api2 Component: Authorizenet Relates to Mage_Authorizenet Component: Backup Relates to Mage_Backup Component: Bundle Relates to Mage_Bundle Component: Captcha Relates to Mage_Captcha Component: Catalog Relates to Mage_Catalog Component: CatalogIndex Relates to Mage_CatalogIndex Component: CatalogInventory Relates to Mage_CatalogInventory Component: CatalogSearch Relates to Mage_CatalogSearch Component: Centinel Relates to Mage_Centinel Component: Checkout Relates to Mage_Checkout Component: Core Relates to Mage_Core Component: CurrencySymbol Relates to Mage_CurrencySymbol Component: Customer Relates to Mage_Customer Component: Dataflow Relates to Mage_Dataflow Component: Directory Relates to Mage_Directory Component: Downloadable Relates to Mage_Downloadable Component: Eav Relates to Mage_Eav Component: ImportExport Relates to Mage_ImportExport Component: Index Relates to Mage_Index Component: lib/Mage Relates to lib/Mage Component: lib/Varien Relates to lib/Varien Component: lib/* Relates to lib/* Component: Oauth Relates to Mage_Oauth Component: PageCache Relates to Mage_PageCache Component: Paygate Relates to Mage_Paygate Component: Payment Relates to Mage_Payment Component: PayPal Relates to Mage_Paypal Component: Rating Relates to Mage_Rating Component: Rss Relates to Mage_Rss Component: Rule Relates to Mage_Rule Component: Sales Relates to Mage_Sales Component: SalesRule Relates to Mage_SalesRule Component: Tag Relates to Mage_Tag Component: Tax Relates to Mage_Tax Component: Uploader Relates to Mage_Uploader Component: Usa Relates to Mage_Usa Component: Weee Relates to Mage_Weee Component: Widget Relates to Mage_Widget Component: Wishlist Relates to Mage_Wishlist composer Relates to composer.json documentation environment htaccess JavaScript Relates to js/* Mage.php Relates to app/Mage.php phpstan Template : admin Relates to admin template Template : base Relates to base template translations Relates to app/locale XML Layout
Projects
None yet
Development

Successfully merging this pull request may close these issues.