Jump to content
thirty bees forum

Auto-update to newest version is working again


Recommended Posts

I'm happy to announce that the tbupdater module has been fixed, and can be used to update your thirtybees store to the latest version 1.0.6. There's no need for manual update anymore.

To update your store, you will first need to update thirty bees updater module to the 1.3.2 version: 0_1536053378028_553220ed-8b56-4fdd-b4a4-7c75407fe521-image.png

Then you can open the module's configuration page, and migrate to the latest thirtybees version:

0_1536053573858_67c107b9-e044-437c-9d04-fb7cc6866902-image.png

Link to comment
Share on other sites

@Troy-Roberts Error code 503:Service Unavailable can be returned by your server / proxy when it's under heavy load. The ajax request to upgrade database probably never made it through to the php layer. Most likely, sql migrates were not processed at all.

What version did you migrate from? There weren't any sql migrates since 1.0.4, so if you have migrated from 1.0.4 or newer, it's safe to ignore this.

Link to comment
Share on other sites

Thanks for updating this.

I'm not sure if it matters but the module does tell me TB cache is turned off even when it is turned on in 1.0.4 before updating. I assume I should turn it off anyway, but should I be worried about this or do you think I'm safe to proceed?

Link to comment
Share on other sites

@Purity it's probably the shared hosting thing.

There is a really huge amount of work that updater needs to perform, and it takes considerate amount of server's resources to do so. Updater tries to be smart about it, and splits the work into series of small work items / chunks. The size of work item is determined by the Server performance settings option:

0_1536123427847_8f8e9e48-47df-4cef-811e-ff1df9c4d331-image.png

But in the end, your server is expected to complete every chunk atomically - in one request. That means, for example, that your server must be powerful enough to to add 400 files to the backup zip file within once request.

Shared hostings can employ multiple measures to ensure that one site will not consume all the server's resource. It can calculate how much CPU/Disk IO your site used within the last few minutes, and it can start throttling resource allocation to your site if you exceeded some limit. That can include decreasing of max-execution time, lower priority for IO operation, lower priority for PHP process, etc...

This resource throttling is only fair --- your hosting provider have to ensure that other sites hosted on the same server won't be affected by your actions. But it can mean that long-running tasks like updates / data import / export / image regeneration / cache indexing / ... can fail.

This is definitely a red flag, and you should consider different hosting solution.

Link to comment
Share on other sites

@datakick I have had that disagreement (re: shared hosting) happen to me several times already. Unfortunately, for most shops, if you want some level of freedom, a dedicated host or at least a VPS is necessary nowadays. Big learning curve but I would never go back!

Thanks for all the hard work fixing the updater guys!!!

Link to comment
Share on other sites

I took a fresh 1.01 install and upgraded it to 1.06. I compared the result to a fresh 1.06 install. Not every difference may be significant but I hope the overview of the differences is helpful in fixing things. Note that I took fresh installs. I didn't even look at the front:

The results of comparing files: - translations (both nl.php files and files under \translations) are not updated. Maybe this should become an option? - It looks like nothing under the \vendor directory is updated. Changed were ezyang, greenlion,guzzlehttp,jakeasmith,mrclay,pear and swiftmailed. Geoip had disappeared in the fresh 1.06. - I had indicated that the theme should be updated. However, its Modules, Css and Sass subdirectories seem not changed. This also happened to gulpfile.js and package.json. 1.01 had a Stylesheets subdirectory that has disappeared in 1.06. The Tools subdirectory contains three javascript files in 1.06 and one in the updated 1.01. In the root advanced-payment-api.js is missing in the updated 1.01. - the mails directory is not updated. Again: should this be optional? - nothing in the config directory is replaced - the .sass files of the admin theme are not replaced

The modules directory: - Nine not installed modules have all files in the updated 1.01 and only a translations directory in 1.06 - many new modules cannot be found in the updated 1.01. The fresh 1.06 Modules directory has 87 subdirectories. The updated 1.01 only 54. Fixerio is the only modules that was present in the updated 1.01 and not in the fresh 1.06.

The updated 1.01 offers mails in all languages. 1.06 only in those installed.

The result of comparing database structures: - On quite a few places 1.06 has default dates of "1970-01-01" where the upgraded 1.01 has "0000-00-00" - On quite a few fields 1.06 has field length 11 where the upgraded 1.01 has 10. - some of the upgraded 1.01 tables have charset utf8 while 1.06 has utf8mb4 everywhere - the table with the most differences is tbpagecache. The upgraded 1.01 has much more keys. See image.

In the configuration table: - PSVERSIONDB is 1.6.1.999 in the upgraded 1.01 and 1.06 in the fresh 1.06 - PSSHIPPINGHANDLING is 2 in the upgraded 1.01 and 0 in 1.06 - PSSTATSRENDER', 'statsmodule' in 1.06 and graphnvd3 in upgraded 1.01 - PSSTATSGRIDRENDER 'statsmodule' in 1.06 and gridhtml in upgraded 1.01 - The 1.06 configuration table has 11 more entries. Examples that are found in 1.06 and not in the updated 1.01 are BLOCKSOCIALAMAZON and TBUSEWEBP

Link to comment
Share on other sites

On top of my wishlist for any upgrader module is to be forced to make a choice whether I want a backup or not. Too often I find myself clicking Upgrade and backupping while I really don't want. And then I have to wait forever... Making no backup the default is not really an option. But you can force the user to make an explicit choice and if he forgets to do so give him a popup "please choose your backup option".

It is rather simple to implement and I can have a look at it when find some time. But what do other people think about this modification?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...