Kalpesh
Kalpesh

Reputation: 5685

Magento importing product error

I am trying without luck on why this error is coming. Only import generates the error, export works well. I am using CSV file to import product data and can't get it to work. I have tried the same CSV in my local test Magento setup and it's working fine. Does anyone ever encountered this error?

enter image description here

On further investigation I found the DOCTYPE HTML code displayed is the HTML of Dashboard. It is loading Dashboard here. What can be the issue?

Upvotes: 4

Views: 2842

Answers (3)

David Stone
David Stone

Reputation: 578

Adding another answer because this is what fixed the problem for me. The Number of records option in the Profile Wizard tab should be set to a low number. I thought it meant the total number of records in the import but it means how many records it should process at once. 1 will always be safe but doing more at once will make the process faster. I set it to 100 and upped the php memory_limit to 1G and everything was fine.

Upvotes: 5

Fabian Blechschmidt
Fabian Blechschmidt

Reputation: 4141

Did you try with a small subset of the CSV?

I would say there is one or more lines are wrong. Find this line and you will find the error.

Upvotes: 1

benmarks
benmarks

Reputation: 23205

You are encountering an error or a timeout during the above process. The error messages in Dataflow are abysmal, meaning that you either break up your input as Fabian suggested, or you drop some logging code to find the trouble data in Mage_Catalog_Model_Convert_Adapter_Product::parse() (link):

public function parse()
{
    $batchModel = Mage::getSingleton('dataflow/batch');
    /* @var $batchModel Mage_Dataflow_Model_Batch */

    $batchImportModel = $batchModel->getBatchImportModel();
    $importIds = $batchImportModel->getIdCollection();

    foreach ($importIds as $importId) {
        //print '<pre>'.memory_get_usage().'</pre>';
        $batchImportModel->load($importId);
        $importData = $batchImportModel->getBatchData();
        /**
         * Temp debug code:
         */
        Mage::log(
            $importData['sku'],
            Zend_Log::DEBUG,
            'dataflow.log',    // find @ var/log/dataflow.log
            true               // force logging
        );
        $this->saveRow($importData);
    }
}

I would make sure that you have the records to import setting in the profile set to something reasonably low to keep each batch small.

Upvotes: 1

Related Questions