IvanChepurnyi/EcomDev_UrlRewrite — Issue #1: Unrecognized method 'joinStraight()'
Author: davidalexander
Created: 2011-10-09 12:10:07+00:00
State: open

Hi Ivan

This looks like a great extension. Thanks for putting the effort in to create it.

The extension installs fine, however, upon running the 'catalog_url' reindex the following exception occurs:

```sh
# php shell/indexer.php --reindex catalog_url
Catalog URL Rewrites index process unknown error:
exception 'Zend_Db_Select_Exception' with message 'Unrecognized method 'joinStraight()'' in /lib/Zend/Db/Select.php:1332
Stack trace:
#0 /app/code/community/EcomDev/UrlRewrite/Model/Mysql4/Indexer.php(1932): Zend_Db_Select->__call('joinStraight', Array)
#1 /app/code/community/EcomDev/UrlRewrite/Model/Mysql4/Indexer.php(1932): EcomDev_UrlRewrite_Model_Mysql4_Select->joinStraight(Array, 'aggregate.dupli...', Array)
#2 /app/code/community/EcomDev/UrlRewrite/Model/Mysql4/Indexer.php(1981): EcomDev_UrlRewrite_Model_Mysql4_Indexer->_resolveDuplicates()
#3 /app/code/community/EcomDev/UrlRewrite/Model/Mysql4/Indexer.php(2165): EcomDev_UrlRewrite_Model_Mysql4_Indexer->_updateRewrites()
#4 /app/code/community/EcomDev/UrlRewrite/Model/Indexer.php(96): EcomDev_UrlRewrite_Model_Mysql4_Indexer->reindexAll()
#5 /app/code/core/Mage/Index/Model/Process.php(159): EcomDev_UrlRewrite_Model_Indexer->reindexAll()
#6 /app/code/core/Mage/Index/Model/Process.php(187): Mage_Index_Model_Process->reindexAll()
#7 /shell/indexer.php(158): Mage_Index_Model_Process->reindexEverything()
#8 /shell/indexer.php(198): Mage_Shell_Compiler->run()
#9 {main}
```

Line 1927 of '/app/code/community/EcomDev/UrlRewrite/Model/Mysql4/Indexer.php' calls the 'joinStraight' method on the '$select' object.

Doing a get_class_methods() on the class returns the following methods (there is no mention of 'joinStraight')""

* `__construct`
* `getUsedTables`
* `getColumnAliases`
* `getColumns`
* `crossUpdateFromSelectImproved`
* `indexForce`
* `indexUse`
* `indexIgnore`
* `where`
* `resetJoinLeft`
* `limit`
* `crossUpdateFromSelect`
* `insertFromSelect`
* `insertIgnoreFromSelect`
* `deleteFromSelect`
* `setPart`
* `useStraightJoin`
* `orderRand`
* `exists`
* `getBind`
* `bind`
* `distinct`
* `from`
* `columns`
* `union`
* `join`
* `joinInner`
* `joinLeft`
* `joinRight`
* `joinFull`
* `joinCross`
* `joinNatural`
* `orWhere`
* `group`
* `having`
* `orHaving`
* `order`
* `limitPage`
* `forUpdate`
* `getPart`
* `query`
* `assemble`
* `reset`
* `getAdapter`
* `_joinUsing`
* `__call`
* `__toString`

### Test Details

* Magento Enterprise 1.11.0.0
* Nginx
* PHP 5.2.17 (Zend Engine v2.2.0)
* MySQL 5.0.77