Month: January 2023

PostfixAdmin Blank Page Error

Postfix is a free and open-source mail transfer agent (MTA) that routes and delivers electronic mail. PostfixAdmin is a web-based management tool created for Postfix. It is a PHP based application that handles Postfix Style Virtual Domains and Users that are stored in a database.

I have this PostFixAdmin install that leads to a blank page after login. A peek at the web server error log identified the problem:

Got error 'PHP message: Invalid query: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'superadmin' in...

I fixed it. Then I encountered another blank page. Another peek at the web server:

Got error 'PHP message: Invalid query: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'password_expiry' in...

It appears that during an upgrade from an older version, the database portion of the upgrade got botched somehow. So the fix was to get into the SQL console and manually run the following updates:

ALTER TABLE admin ADD COLUMN superadmin bool after password;
ALTER TABLE mailbox ADD COLUMN password_expiry TIMESTAMP DEFAULT now() not null;
ALTER TABLE domain ADD COLUMN password_expiry int DEFAULT 0;

And that was it. Simple but might help someone.

Gaslighting

One of the good things that came out of this pandemic is an increased awareness of mental health. One of the few things I picked up on during this time is the concept of gaslighting.

Gaslighting is when one person unintentionally or intentionally misleads another, creating a false narrative and making them question the validity of their own thoughts, perception of reality, or memories and typically leads to confusion, loss of confidence and self-esteem, even uncertainty of one’s emotional or mental stability. 

No two people remember an event in exactly the same way. Everyone may have different memories of the same event. Gaslighting can happen when you challenge, question, or discredit another’s memories based solely on your perspective, on your say so. 

This can happen between parents and kids. The parent has a view of what happened, the kid has a different story. The parent would insist that their version is the way it happened. And because of the parent/authority relationship, the kid ends up believing it even if it really wasn’t so. Unfortunately, this is very damaging to the child’s mental health. 

To avoid unintentionally gaslighting, you should not insist on your perspective of an event if there is no empirical evidence or record of how it transpired. Rather, respect each others’ perspectives, agree to disagree, or at least give it the benefit of the doubt. Even if, or especially if, you’re talking to a child.