Ra100:
Yes, it is about performance. In one category there are more than 4000 puzzles , in solving table there are 44 millions records. Each time you are browsing the puzzle list, the database server must take these 40000 puzzles, find YOUR records of solving for them, remove that solved puzzles and sort the rest. Once the server show the list, it can throw it away because nobody else, nor you , will wan to see the same result again. So no caching is possible.
This takes 5 seconds. So if there are 1300 users online and everyone wants to see list of puzzles once per hour it is ..... 7500 seconds per hour , oops one hour has only 3600 seconds.
Browsing without solving filters uses cache on database level, because there are hundred users which are browsing the same category as you, this query takes only 0.05 sec.
Well I agree it is not really convenient and I'll try to find better solution. Maybe I can do filtering different way but then for sure I have to change paging, e.g. I won't count how many pages and filtered puzzles are there, I'll only calculate if there is next page.
Bye Ra100
Okay, taking this into consideration, I can understand your argument... I still think it makes the site quite a bit more useless then before, but thinking back to my courses about database theory I see your problem...
Personally I like what you proposed in the last paragraph... just creating one page of results and maybe a next button... Another thing I could think of is maybe not always updating the filter, meaning you filtered results on your first access but then if you solve an griddler it just gets maked as solved without a new db access... that way it could just weed out the solved puzzles every few reloads or something...