Tags I am associated with:

Tags I am associated with: Microsoft SQL Server, IBM Cognos BI and Planning, Deltek Costpoint, Deltek Time & Expense, Magento, Intuit QuickBooks, Visual Basic 6, SSIS, Oracle, SQL development, data warehouse, reporting, eCommerce, accounting, finance, ETL

Monday, September 5, 2011

Magento USPS string is not in UTF-8 error

Issue: After migrating Magento from dev to production environment, USPS shipping method stopped working.

in system.log file, the following error is shown:
Warning: SimpleXMLElement::addAttribute() [simplexmlelement.addattribute]: string is not in UTF-8 in {magento install dir}/app/code/local/Mage/Usa/Model/Shipping/Carrier/Usps.php

Resolved by:
going to Magento Admin console -> Configuration -> System -> Shipping Methods -> USPS, and re-enter/paste your USPS User ID supplied by USPS to you (usually thru email when you first signed up for the account). and hit save configuration.

Magento Error: Base table or view already exists: 1050 Table ’sales_order_status’ already exists

Scenario: After changing permissions on folders/files in var/cache/, the Magento site was crashing with this error:

Base table or view already exists: 1050 Table ’sales_order_status’ already exists

________
It looks as if the software is trying to upgrade from 1.4 to 1.5, but the new tables are already there.

Workaround: Log into database with the MySQL account and run these SQL statements (in the following order to avoid foreign key constraints) to drop the new tables:

drop table sales_order_status_label;
drop table sales_order_status_state;
drop table sales_order_status;
drop table paypal_cert;

After executing these statements, hit the site again via web browser, and the software should recreate the 4 tables along with finishing the upgrade.

Note: I've locked down the permissions on folders and files, but looks like Magento upgrade creates new folder/files with 777 permission owned by apache user. You may have to change the permissions on these new folder/files to your liking...