GSOC Day 20 – Testing Order Queues
Today was a frustrating day, but it ended on a positive note. Llnz had submitted a branch of tpserver-cpp that I could use to test multiple order queues, but I still spent almost the entire day trying to fix bugs enough to actually get to the testing.
First, there was a bug in the tpserver-cpp code that caused a segfault whenever the server was started (lines were missing in the initializations of the second order queues).
Then, another bug caused two “Orders” property groups to be added to each object, which created an odd situation in the client where the second order queue would partially overwrite the first, creating a crash. This took quite some time to figure out, but I was able to resolve it by renaming the second group to “Orders2.”
Then, a client-side bug in the cache’s order queue loading caused me a great deal of trouble, since I had very little experience with how the cache worked internally. I finally realized that it was trying to use the order queue ID to get an object’s modify time, which was incorrect. Switching that to the object’s ID solved that problem.
Finally, I was able to start the client and check the multiple order queue support. It didn’t quite work at first; I had missed some code to re-generate the rest of the panel each time.
Adding that in, I was able to finally see the full, multi-queue support that I had been working on. The best part is, it seems to work.
Here’s a screenshot of the new orders panel:
Tomorrow, I’ll try to fix up any code that Mithro suggests changes on, I’ll try to update the function in the cache that gave me trouble today to clean it up, and then, if I have time, I’ll look at the next part of the project (which will probably be viewing dynamic properties nicely).