Hi Pierangelo
Let me note that the patch doesn't build fine (you need to declare in advance the static functions you're only defining at the end), and it seems to work incorrectly. By running the simple sql-test000 with mysql (which fails because now the order has changed; my fault: should have added -S "" to searches), if I search without the control, I correctly get 6 entries and a referral; if I search with paged results and a page size less than 6, I only get 5 entries. The root entry is missing, but I have no idea of the reason, I couldn't infer anything from the code or the logs. Can you check?
When I checked on the patch file in my Emacs window this morning I saw the "modified buffer" flag was still on because I hadn't saved the final version. Grrrr. It included the function declarations and one last fix. Sorry about that. When I extract the last ID number from the cookie, I have to make sure we're in the same objectClass as when the ID number was saved. I've replaced the patch file on my web server. If it doesn't fix the root entry bug you're seeing, could you show me the search you're performing? I'll have to more closely follow what's happening in the switch ( bsi.bsi_scope ) { segment around line 2115 in backsql_search() to see if there is some special case for the root entry.
-Mark Adamson Carnegie Mellon