© 2015 X2Engine Inc.
Difference between revisions of "Known Issues"
(→Troubleshooting) |
|||
(31 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:Support]] | [[Category:Support]] | ||
− | |||
− | + | The following is a list of problems that both arise under very specific circumstances and cannot be fixed by updating to the latest version (due to how they either prevent updating or cause fatal errors, or because updates cannot fix the issue). | |
− | |||
− | |||
− | |||
− | |||
{|class="wikitable" align="left" | {|class="wikitable" align="left" | ||
Line 13: | Line 8: | ||
! scope="col" | Affected Instances | ! scope="col" | Affected Instances | ||
! scope="col" | How to Fix | ! scope="col" | How to Fix | ||
+ | |- | ||
+ | ! scope="row" | Failed to update with "ResponseUtil.php: No such file or directory" before 3.7.5 | ||
+ | | Instances between versions 3.0.1 and 3.7.5 | ||
+ | | Modify protected/components/UpdaterBehavior.php, and add the value "components/util/ResponseUtil.php" to the array $updaterFiles and proceed to update: | ||
+ | <syntaxhighlight lang="php"> | ||
+ | public $updaterFiles = array( | ||
+ | // ... | ||
+ | "components/util/ResponseUtil.php", | ||
+ | ); | ||
+ | </syntaxhighlight> | ||
+ | |- | ||
+ | ! scope="row" | Primary administrator user has lost permissions | ||
+ | | After updating to 4.0.1, having a username that isn't "admin" | ||
+ | | Run the following database command (SQL) on X2Engine's database, '''REPLACING <tt>{user}</tt> WITH THE ADMINISTRATOR'S USERNAME''': | ||
+ | <syntaxhighlight lang="sql"> | ||
+ | UPDATE `x2_auth_item` SET `bizrule`='return Yii::app()->user->name === "{user}";' WHERE `name`='admin'; | ||
+ | DELETE FROM `x2_auth_cache` WHERE 1; | ||
+ | </syntaxhighlight> | ||
+ | Once administrative access has been restored, update to 4.0.2 or later. ''Alternatively, you can use the [[Software_Updates_and_Upgrades#Using_the_Command_Line_Updater|command line update method]].'' | ||
+ | |- | ||
+ | ! scope="row" | "failed to copy from tmp" error message on update page | ||
+ | | Versions 3.5.5, and in some cases, from 3.5.6 to 3.7.5 | ||
+ | | There was a bug in 3.5.5 caused this particular error, but it was later fixed. If you are on 3.5.5, you can fix this by [[Software_Updates_and_Upgrades#Refreshing_and_Updating_the_Updater_Utility|updating the updater utility to the latest version.]] In all other versions, the only two legitimate causes of this error that could be found were: | ||
+ | * The list of updater dependency files to download is actually empty (this should almost never happen when the updater utility refreshes) | ||
+ | * (In X2Engine Professional Edition): the installation's number of users exceeds the amount of users for which the license is authorized. This causes the server to return something other than the list of file digests, and the updater interprets it as being empty. | ||
+ | In both of these cases, the "tmp" folder simply does not get created due to the file list being empty (which was problematic). In the case that you are using X2Engine Open Source Edition, or the number of users does not exceed the number that your license is authorized for, you can attempt to circumvent this by creating the folder manually. In both cases, you can get past this issue if you have access to the CRM's files. | ||
+ | |- | ||
+ | ! scope="row" | Cannot update, and requirements check script passes | ||
+ | | Installed at or updated to version 3.5.5 | ||
+ | | [[Software_Updates_and_Upgrades#Refreshing_and_Updating_the_Updater_Utility|Update the updater utility to the latest version.]] | ||
|- | |- | ||
! scope="row" | Prompt to update doesn't go away after updating | ! scope="row" | Prompt to update doesn't go away after updating | ||
− | | | + | | X2Engine versions before 2.1 (check for the version number being the same as before the update) |
| '''After updating,''' edit the file <tt>protected/config/X2Config.php</tt>. For the <tt>$version</tt> variable, put the current version between the pair of single quotes. For example, for version x.y.z, it should look like this: <syntaxhighlight lang="php">$version = 'x.y.z';</syntaxhighlight> | | '''After updating,''' edit the file <tt>protected/config/X2Config.php</tt>. For the <tt>$version</tt> variable, put the current version between the pair of single quotes. For example, for version x.y.z, it should look like this: <syntaxhighlight lang="php">$version = 'x.y.z';</syntaxhighlight> | ||
|- | |- | ||
! scope="row" | Cannot log in after update | ! scope="row" | Cannot log in after update | ||
− | | | + | | X2Engine versions before 2.0, after updating to a version after 2.0 |
| Empty the x2_sessions table (delete all records) | | Empty the x2_sessions table (delete all records) | ||
<syntaxhighlight lang="sql"> | <syntaxhighlight lang="sql"> | ||
Line 39: | Line 64: | ||
All versions up to 2.2.1 on some servers | All versions up to 2.2.1 on some servers | ||
| | | | ||
− | + | '''Install a newer version of X2Engine''' (recommended) or replace all instances of "mysql_escape_string" with "addslashes" in initialize.php, or simply remove those function calls. Note that if you perform the latter action, you must ensure that the values you put in the "Application Name" and "Administrator Email" fields of the installation form do not contain any apostrophes (otherwise, the resulting installation will be broken). | |
|- | |- | ||
! scope="row" | "No input file specified" | ! scope="row" | "No input file specified" | ||
Line 53: | Line 78: | ||
Installed at 1.6.1 or earlier and updated to a version in the range 1.6.5 - 2.0 | Installed at 1.6.1 or earlier and updated to a version in the range 1.6.5 - 2.0 | ||
| | | | ||
− | |||
* Set value of the column <tt>unique_id</tt> in table <tt>x2_admin</tt> to "none", i.e. <syntaxhighlight lang="sql">UPDATE `x2_admin` SET `unique_id`='none'</syntaxhighlight> Then, go to "Updater Settings" ("General Settings" in versions earlier than 2.0), ensure "Enable Software Update Notifications" is checked, and submit the form. | * Set value of the column <tt>unique_id</tt> in table <tt>x2_admin</tt> to "none", i.e. <syntaxhighlight lang="sql">UPDATE `x2_admin` SET `unique_id`='none'</syntaxhighlight> Then, go to "Updater Settings" ("General Settings" in versions earlier than 2.0), ensure "Enable Software Update Notifications" is checked, and submit the form. | ||
− | * Run the update manually | + | * Run the update manually if all else fails |
|- | |- | ||
! scope="row" | Cannot view or create quotes | ! scope="row" | Cannot view or create quotes | ||
Line 77: | Line 101: | ||
|- | |- | ||
|} | |} | ||
− | |||
− | |||
− | |||
− | |||
− |
Latest revision as of 01:30, 5 December 2014
The following is a list of problems that both arise under very specific circumstances and cannot be fixed by updating to the latest version (due to how they either prevent updating or cause fatal errors, or because updates cannot fix the issue).
Description | Affected Instances | How to Fix |
---|---|---|
Failed to update with "ResponseUtil.php: No such file or directory" before 3.7.5 | Instances between versions 3.0.1 and 3.7.5 | Modify protected/components/UpdaterBehavior.php, and add the value "components/util/ResponseUtil.php" to the array $updaterFiles and proceed to update:
public $updaterFiles = array(
// ...
"components/util/ResponseUtil.php",
);
|
Primary administrator user has lost permissions | After updating to 4.0.1, having a username that isn't "admin" | Run the following database command (SQL) on X2Engine's database, REPLACING {user} WITH THE ADMINISTRATOR'S USERNAME:
UPDATE `x2_auth_item` SET `bizrule`='return Yii::app()->user->name === "{user}";' WHERE `name`='admin';
DELETE FROM `x2_auth_cache` WHERE 1;
Once administrative access has been restored, update to 4.0.2 or later. Alternatively, you can use the command line update method. |
"failed to copy from tmp" error message on update page | Versions 3.5.5, and in some cases, from 3.5.6 to 3.7.5 | There was a bug in 3.5.5 caused this particular error, but it was later fixed. If you are on 3.5.5, you can fix this by updating the updater utility to the latest version. In all other versions, the only two legitimate causes of this error that could be found were:
In both of these cases, the "tmp" folder simply does not get created due to the file list being empty (which was problematic). In the case that you are using X2Engine Open Source Edition, or the number of users does not exceed the number that your license is authorized for, you can attempt to circumvent this by creating the folder manually. In both cases, you can get past this issue if you have access to the CRM's files. |
Cannot update, and requirements check script passes | Installed at or updated to version 3.5.5 | Update the updater utility to the latest version. |
Prompt to update doesn't go away after updating | X2Engine versions before 2.1 (check for the version number being the same as before the update) | After updating, edit the file protected/config/X2Config.php. For the $version variable, put the current version between the pair of single quotes. For example, for version x.y.z, it should look like this: $version = 'x.y.z';
|
Cannot log in after update | X2Engine versions before 2.0, after updating to a version after 2.0 | Empty the x2_sessions table (delete all records)
DELETE FROM `x2_sessions`;
|
Invalid path in "protected/runtime/..." |
|
This is caused by installing with a directory ownership mismatch that wasn't caught and reported in the requirements check. In some PHP builds, the necessary POSIX functions for running this check are unavailable due to one of the following reasons:
To see if this is the case, upload requirements.php to your server again and search for "posix" in the phpinfo() output. |
Installation error: deprecated function "mysql_escape_string" |
All versions up to 2.2.1 on some servers |
Install a newer version of X2Engine (recommended) or replace all instances of "mysql_escape_string" with "addslashes" in initialize.php, or simply remove those function calls. Note that if you perform the latter action, you must ensure that the values you put in the "Application Name" and "Administrator Email" fields of the installation form do not contain any apostrophes (otherwise, the resulting installation will be broken). |
"No input file specified" |
All versions, on GoDaddy hosting |
All web applications featuring human-friendly URLs (i.e. Joomla!, Drupal, Wordpress) will have this issue on GoDaddy. The error is caused by the URL rewriting engine being disabled in GoDaddy's hosting environment. See the following articles on how to rectify the issue using .htaccess overrides: |
Update notifications do not work, cannot enable them |
Installed at 1.6.1 or earlier and updated to a version in the range 1.6.5 - 2.0 |
|
Cannot view or create quotes |
Installed at 1.6.1 or earlier and updated to a version in the range 1.6.5 - 1.6.6 |
Run the following SQL: Versions earlier than 2.0: INSERT INTO x2_fields (modelName, fieldName, attributeLabel, modified, custom, type, required, readOnly, linkType, searchable, relevance)
VALUES ("Quote", "products", "Products", 0, 0, "varchar", 0, 0, NULL, 0, ""),
("Quote", "existingProducts", "Existing Products", 0, 0, "varchar", 0, 0, NULL, 0, "")
Versions 2.0 and later: INSERT INTO x2_fields (modelName, fieldName, attributeLabel, modified, custom, type, required, readOnly, linkType, searchable, relevance,isVirtual)
VALUES ("Quote", "products", "Products", 0, 0, "varchar", 0, 0, NULL, 0, "", 1),
("Quote", "existingProducts", "Existing Products", 0, 0, "varchar", 0, 0, NULL, 0, "", 1)
|