Details
-
Type:
Bug
-
Status:
Resolved
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 1.8.2
-
Fix Version/s: Next Minor Release
-
Component/s: Zend_Paginator
Description
When using Zend_Db_Profiler_Firebug there are a few properties that store microtime values which when serializing the DbSelect adapter cause it to produce a different hash value each time. Because this hash value is used to identify what cached data to load, Zend_Cache is unable to find any cache associated to this identifier.
The solution is to use __sleep() or Serializable interface
Attachments
Issue Links
| This issue is duplicated by: | ||||
| ZF-8731 | Zend_Paginator bug with caching |
|
|
|
| ZF-7366 | Zend_Paginator does not use cached Zend_Db_Select correctly |
|
|
|
| ZF-7379 | Problem with Zend_Paginator Cache. |
|
|
|
| ZF-8019 | Zend_Paginator get Cache ID Error |
|
|
|
| ZF-11668 | Zend_Paginator still buggy in release-1.11.7 |
|
|
|
| ZF-10447 | Paginator and cache |
|
|
|
| ZF-11318 | Zend_Paginator cache ( related to ZF-10447 ) |
|
|
|
| This issue is related to: | ||||
| ZF-9947 | Zend_Paginator - problem with _getCacheInternalId |
|
|
|
| ZF-10447 | Paginator and cache |
|
|
|
right. We can use __sleep at any object join point. In PaginatorDbSelectAdapter, or in Zend_Db_Select, or again in Zend_Db_Adapter_Abstract , or last in Zend_Db_Profiler.
I suggest using the Serializable interface on the Zend_Paginator_Adapter_DBSelect.
Patch attached