Why Is Something Working on Non-Production But Not Production? | Cloud Platform | Acquia Product Documentation
Cloud Platform
Why Is Something Working on Non-Production But Not Production?
Why Is Something Working on Non-Production But Not Production?
Date Published: April 17, 2025
Issue
Why is my website working on non-production, but not Production?
Resolution
Sometimes a feature you've extensively tested on non-production (dev, test, qa) works, but it doesn't work on production. The usual reason is that Enterprise and Site Factory customers have highly available infrastructure. That means either two dedicated instances, or multiple web instances plus a database instance, and in some cases, a separate file system instance. Code is identical (or should be! If not, file a Support ticket with us) on each web instance or dedicated instance, but they share resources, such as the file system (and in the case of web instances, the database instance), which is in one place only. That said, the settings could be different between production and non-production.
Is Memcache setup on one environment but not the other?
Is JavaScript and/or CSS aggregation turned on in one environment but not the other? Generally speaking, we recommend having it turned on, but in rare cases, it has been known to cause issues (usually because of the order in which they were aggregated).
Are the operating systems on each environment the same? Some underlying libraries (such as for Curl) could be affected by the differences in versions. Visit our instructions on changing operating systems for details on which versions we provide.
Are the platforms of the environments the same? In some cases, non-production environments could be on Cloud Platform (our current platform) and your production environment could be on Cloud Classic (our legacy platform). Some features are available on platform and not the other. An example of this is downloadable scheduled tasks logs are available on Cloud Platform but not on Classic. See our overall platform overview for the differences between the two platforms.
Is the content and configuration of the Drupal sites on each environment (more or less) the same?
Differences between non-production and non-production environments:
Amount of memory and disk space. The memory most affects the amount of PHP processes you can have. Most non-production environments are single instances (with a naming convention of staging-12345). That means they have both the web serving functions, the database system, and the file system all on one instance. This is either spread out (in the case of a setup with web instances), or there's more resources allocated to them (in the case of dedicated instances, and there's failover in that case as well).
Traffic and usage patterns: Production environments almost always have more traffic hitting them, or have more editors creating content, so the amount of caching by Varnish will be different. That could be something we can help determine if you file a Support ticket with us.
PHP runtime assertions settings switched on or off based on the environment type. Non-production environments have assertions turned on and production environments had assertions turned off for CLI and web requests. This setting aligns with Drupal.org guidanceon runtime assertions to assist in identifying code problems during development and testing without affecting performance in production environments. Here are the php.ini values for both types of environments:
production: zend.assertions = -1 (disabled)
non-production: zend.assertions = 1 (enabled)
It could also be an infrastructure problem. Often times we've already alerted you about it via a ticket, but if not, file a Support ticket with us and we'll help you get to the bottom of it.