:: 30-Mar-1999 19:02 (Tuesday) ::
Team joining code, stage 1 is in progress right now. One of the
components of the team joining code that’s necessary is a query that
will be run each night during the daily update.
The purpose of this query is to retro-actively assign blocks to a team if
that participant has just joined a team and has unallocated blocks in the
database. For example:
A participant fires up a client for the first time on day 1. Days 2 and
3 pass as the client completes more blocks, and on day 4 that participant
decides that it’s come time for them to join a team.
This query identifies the blocks (currently not assigned to a team) from
days 1, 2, and 3 and retroactively allocates them. So, when the
participant finally joins their team, all their _unallocated_ past
activity will go to that team.
This differs from the situation where a person changes from one team to
another. Once blocks have been assigned to a team, that assignment is
permanent.
Why am I telling you all of this? Well, for two reasons. First, It’s
been quite some time since we’ve had a statsbox that did this, so it’s
quite likely that there are people out there who are unfamiliar with how
this works.
Secondly, and far more importantly, I’m about to run this query for the
first time. And there’s a bunch of blocks in the database that will be
affected by this. See, towards the end of the lifespan of the original
statsbox, this query would quite frequently fail to run properly.
There’s actually a non-trivial segment of blocks in the database that
aren’t allocated to a team properly. All those blocks are about to get
assigned in one mad rush.
The result of this will be some pretty strange team ranking issues in
tonight’s stats run. It’s conceivable that dead teams will rise in the
rankings, it’s quite likely that some teams will see their “time working”
date roll back some. I thought it would be remarkably preemptive of me
to warn everyone ahead of time.