Null_User?

Point out errors and hear of new features at http://www.suikosource.com
Post Reply
User avatar
True Wind Bearer
Posts: 674
Joined: Thu Feb 17, 2005 12:55 am
Location: Australia

Null_User?

Post by True Wind Bearer »

I'm not sure if this is exactly an error, but I'm very curious as to what it is.

When you go to the Memberlist (at the top left of the page), you can see several users by the name "Null_User". This is odd, and the even stranger thing is that they appear before billybunny himself, because underneath the column titled "Joined", it says that all of these Null_Users joined on the 31st of December, 1969.

Surely this must be an error? Here's hoping it's only a minor, fixable one.
User avatar
Vextor
Global Admin
Posts: 1867
Joined: Sun Jun 27, 2004 2:45 am
Location: Japan
Contact:

Post by Vextor »

All the Null_Users were created to counter the problem with posts that lacked a user_id. This caused certain threads to not display properly, resulting in a "No posts exist within this topic" error. The reason is that each post is associated to a user_id. When the corresponding user_id is missing from the user database, the program gets confused and decides to simply ignore the request to get the correct user information.

To counter this, I created a number of users to assign these posts against.

I am not sure how these posts lost connections to their corresponding users, but likely it was caused by the users being deleted out of the database. Typically, when a user is deleted from the adminisrtrative console, all of their posts will be given blank ids automatically to ensure that this type of error doesn't happen. However, when this is done directly from within the database, these safeguards are ignored.

That's the gist of the situation.
User avatar
True Wind Bearer
Posts: 674
Joined: Thu Feb 17, 2005 12:55 am
Location: Australia

Post by True Wind Bearer »

Ah, ok, I see, thankyou. Any reason why the joined date is the 31st of December 1969?
User avatar
Vextor
Global Admin
Posts: 1867
Joined: Sun Jun 27, 2004 2:45 am
Location: Japan
Contact:

Post by Vextor »

December 31st, 1969 is where 0 is set for the unix "time ()" function. It'sbasically when UNIX was created (It was actually January 1st, 1970, but the function subtracts one second from the result to compensate for feedback lag. That's why when a user has a registration date of "0" (meaning there is no registration date), the date defaults to 0 and you get this result.
Post Reply