[BUG]: Joomla Component Builder: In the options, saving is slow. #1204
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What Happened?
I have a clean installation of Joomla with JCB 5.0.3 installed (the same issue occurs with version 5.0.4-beta3). When saving settings in the options, for example, when modifying/filling out the "company" section, the saving process is very slow. In fact, I receive an alert from the browser (Chrome) warning me that the page is not responding and that I can either wait or exit the page. In the Chrome console, I don’t detect any errors except the following:
"The Cross-Origin-Opener-Policy header has been ignored because the URL's origin was untrustworthy. It was defined either in the final response or a redirect. Please deliver the response using the HTTPS protocol. You can also use the 'localhost' origin instead. See https://www.w3.org/TR/powerful-features/#potentially-trustworthy-origin and https://html.spec.whatwg.org/#the-cross-origin-opener-policy-header."
However, this error should not be related to JCB.
I am working locally with Laragon.
Apache: 2.4.62
MySQL: 8.4.3
PHP: 8.3.14
Xdebug is disabled.
max_execution_time 3600
memory_limit 1024M
Xdebug
Steps to reproduce the Bug
Go to the dashboard options, change the settings, and save.
Which Joomla version are you compiling in?
v5.2.3
Which PHP version are you compiling in?
8.3.14
Which Joomla versions are you targeting?
v5.2.3
Which PHP version are you targeting?
8.3
Which Web server is JCB running on?
Laragon - apache 2.4.62
Which Relational Database is JCB running on?
MySQL: 8.4.3
Which OS is JCB running on?
windws 11 localhost
Which JCB version are you using?
5.0.3 and 5.0.4beta
Where in JCB did this issue occur?
Dashboard(admin_view)
On which browsers did you encounter the issue?
Firefox, Chrome
Additional Comments
No response
JCB has not been tested on PHP 8.3.14 (buy our internal team), can you please use PHP 8.2 instead? and let us know if the issue continue? so we can identify if this is PHP version related issue?
Also, I have never worked with Laragon, is it possible for you to use Docker instead? so that Joomla runs in the same environment as the one we are working in? We are working in the official Joomla docker container.
If not, then please try to set the Laragon environment as close as you can to the official setup of PHP in the Docker container.
While JCB is a very large application, and extremely powerful, we are a small team of core maintainers and so we can't yet cover all the bases out there. This is why we just focus for now on the Docker environment as our base-line.
Then we are about to release a new stable version... keep an eye out for the next release_candidate it might resolve some of the mentioned issues. Since we have massively improved the overall stability of the project.
Unfortunately, I am not familiar with the Docker platform, although I tried the online one provided by GitHub. I installed Docker with Joomla 5, but once I entered the back-end, I couldn’t get rid of the Joomla tour on any page, so I gave up.
I tried changing the PHP version on Laragon, but the issue persists, along with other things I haven’t mentioned yet.
I installed a clean version of Joomla on a subdomain, a standard web space with standard hosting, also PHP 8.2, and all the necessary features. The same problem occurs here as well.
One of the issues I mentioned earlier involves a series of locked tables that appear in Joomla under global unlock: these do not unlock and remain there even after pressing the button to unlock them… Once again, the browser freezes due to excessive RAM consumption by Chrome.
To clarify, JCB is actively used (by only our internal team) across at least 30 different systems, supporting hundreds of components for various companies. Neither we, nor our clients, nor well-established members of the JCB community have reported similar issues. This suggests that something in your specific environment is not aligned with the configurations we use and support.
Browser Compatibility
One important note: we do not recommend using Chrome or Chromium-based browsers with JCB. These browsers tend to cache paths aggressively, introduce extra peering requests, and attempt to optimize server-side interactions in ways that interfere with JCB’s functionality. For a stable experience, we strongly advise using Firefox or LibreWolf, which have been tested extensively and have proven to work without issues.
Database Compatibility
JCB officially supports MySQL and MariaDB. Since you're using MySQL 8.4, this should not be the source of your problem. However, issues related to database locking or performance are highly dependent on server configuration, resource availability, and specific MySQL settings, which are beyond the scope of what we can troubleshoot remotely.
Environment Consistency
For over 15 years, we’ve been developing and maintaining JCB exclusively on Ubuntu Linux, which aligns with the infrastructure of the vast majority of our clients. As such, our expertise, testing, and optimizations are focused on that ecosystem. If your environment significantly differs, unexpected behaviors might arise that we cannot account for.
Recent Fixes & Next Release
That said, we do acknowledge a cross-origin opening policy header issue, which has been addressed and removed in the latest version that is set to be released within the next hour. This fix might resolve at least part of the issues you're encountering. However, as for database locking problems or general slow performance, we have not observed such issues in our controlled environments, and thus, we are unable to provide a direct resolution.
Conclusion
Unfortunately, given these circumstances, we are unable to assist further. We recommend verifying your environment against the official JCB Docker setup, as this remains the most stable and supported deployment method. However, we understand that this may not be feasible in your case.
We will keep the issue open for a while in case someone from the community can offer insights, but from our side, this is where our support ends.
We regret that we cannot provide a more direct solution, but we hope this guidance helps. Wishing you the best in resolving the issue.
From someone who used to use Laragon. I really like Laragon, and felt that is was a great tool/platform, but I was routinely encountering some issues when compiling my components.
I, too, am unfamiliar with Docker, but I took a recommendation from Llewellyn, and created a VM. I'm running Windows 11, and since I have Pro I used Hyper-V, but you could use VirtualBox. Create a VM with Ubuntu Desktop, then from the command prompt install Octojoom [https://git.vdm.dev/octoleo/octojoom](Octojoom URL).
This is a learning curve, but I have found that I have very few issues now when compiling, and the speed is much much faster than Laragon. I still have Laragon on my computer, but I basically only use it to reference components that I had created in a much older version of JCB, that was going to take too much time to try to convert them to the newest version, and found it faster just to recreate them, and copy/paste my code in views.
I would highly suggest trying out an Octojoom setup. And remember, Google is your friend. If you are unsure of how to do something, for example editing the php.ini file, there are instructions out there on how to do that. I did that, and until I know Docker better, have the instructions saved in a text file in my VM that I can reference.
I miss the convenience of Laragon, but haven't really looked back since trying out Octojoom. It was a game changer for me.
I have installed Docker on Windows 11, and it works, but every time I restart the system, I lose all my work. I searched on Google and tried many solutions, but nothing improved. The database either stops responding, doesn't connect, or I have to install a new one, which then suffers the same fate.
I installed VirtualBox with Debian, set up Joomla, but the problems remain. The configuration settings in JCB take forever to save… The browser freezes—every browser, from Chrome to Firefox, Opera, and Edge.
I created a subdomain on my VPS, where I host multiple websites. It's a solid VPS with 32GB RAM and 8 cores… but the same problem persists. When saving options, the browser freezes.
So, I wonder: What are the real server requirements? What special configuration does the server need to run JCB smoothly? Is it possible that there is no official list of PHP.ini settings and required PHP extensions? What is the best database version to install—MySQL xy or MariaDB xy?