Brion Vibber wrote:
On 04/01/2010 07:31 AM, Thomas Lecavelier wrote:

My statusnet instance is rather ok, but I just can't use groups and favorites feature, hit by errors like:

DB Error: syntax error

Turn on the debug log and check what you see there...

The log show statusnet try to get an offset of -20 because $this->page was set to -1...

I attach a patch against gito...@0.9.x which fix the problem in the prepare function, fallingback page to 1 if it's under 1.

For KB, here the trace:

2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: Config / CHECK autofetchd / find 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: Config / DONE / find 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: Config / No data returned from FIND (eg. N is 0) / FETCH 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: Config / Clearing Cache for config / 1 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: Config / Clearing Cache for config / 1 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: User / Checking for database specific ini ('') : database_ in options / CONNECT 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: User / USING CACHED CONNECTION / CONNECT 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: User / Clearing Cache for user / 1 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: User / Clearing Cache for user / 1 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: User_group / Checking for database specific ini ('') : database_ in options / CONNECT 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: User_group / USING CACHED CONNECTION / CONNECT 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: User_group / SELECT user_group.* from user_group join local_group on user_group.id = local_group.group_id order by user_group.created desc limit 21 offset -20 / QUERY 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: User_group / [db_error: message="DB Error: syntax error" code=-2 mode=callback callback=handleError prefix="" info="SELECT user_group.* from user_group join local_group on user_group.id = local_group.group_id order by user_group.created desc limit 21 offset -20 [nativecode=1064 ** You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-20' at line 1]"] / Query Error 2010-04-02 05:26:44 LOG_ERR: [statusnet.bearnaise.net:29091.5fa455aa GET /group] ServerErrorAction: 400 [User_group] DB_DataObject error []: DB Error: syntax error #0 /home/ook/statusnet.bearnaise.net/extlib/DB/DataObject.php(2434): Memcached_DataObject->raiseError(Object(DB_Error)) #1 /home/ook/statusnet.bearnaise.net/classes/Memcached_DataObject.php(334): DB_DataObject->_query('SELECT user_gro...') #2 /home/ook/statusnet.bearnaise.net/extlib/DB/DataObject.php(1592): Memcached_DataObject->_query('SELECT user_gro...') #3 /home/ook/statusnet.bearnaise.net/actions/groups.php(123): DB_DataObject->query('SELECT user_gro...') #4 /home/ook/statusnet.bearnaise.net/lib/action.php(609): GroupsAction->showContent() #5 /home/ook/statusnet.bearnaise.net/lib/action.php(560): Action->showContentBlock()
#6 /home/ook/statusnet.bearnaise.net/lib/action.php(348): Action->showCore()
#7 /home/ook/statusnet.bearnaise.net/lib/action.php(105): Action->showBody()
#8 /home/ook/statusnet.bearnaise.net/actions/groups.php(78): Action->showPage() #9 /home/ook/statusnet.bearnaise.net/index.php(321): GroupsAction->handle(Array)
#10 /home/ook/statusnet.bearnaise.net/index.php(336): main()
#11 {main}
2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: Design / Clearing Cache for design / 1 2010-04-02 05:26:44 LOG_DEBUG: [statusnet.bearnaise.net:29091.5fa455aa GET /group] DB: User_group / Clearing Cache for user_group / 1

>From 206da6ed85ee108dd6d0ebbd73084b68b775613f Mon Sep 17 00:00:00 2001
From: Thomas Lecavelier <tho...@lecavelier.name>
Date: Fri, 2 Apr 2010 09:35:29 +0200
Subject: [PATCH] Fix Favorited and groups tabs for new installation

---
 actions/favorited.php |    3 +++
 actions/groups.php    |    3 +++
 2 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/actions/favorited.php b/actions/favorited.php
index d898044..88cf083 100644
--- a/actions/favorited.php
+++ b/actions/favorited.php
@@ -104,6 +104,9 @@ class FavoritedAction extends Action
     {
         parent::prepare($args);
         $this->page = ($this->arg('page')) ? ($this->arg('page')+0) : 1;
+        if ($this->page < 1) {
+          $this->page = 1;
+        }
 
         common_set_returnto($this->selfUrl());
 
diff --git a/actions/groups.php b/actions/groups.php
index 8aacff8..d661ea1 100644
--- a/actions/groups.php
+++ b/actions/groups.php
@@ -69,6 +69,9 @@ class GroupsAction extends Action
     {
         parent::prepare($args);
         $this->page = ($this->arg('page')) ? ($this->arg('page')+0) : 1;
+        if ($this->page < 1) {
+          $this->page = 1;
+        }
         return true;
     }
 
-- 
1.7.0

_______________________________________________
StatusNet-dev mailing list
StatusNet-dev@lists.status.net
http://lists.status.net/mailman/listinfo/statusnet-dev

Reply via email to