Johan Andersson: > Jan 19 23:56:21 servername postfix/cleanup[29089]: [ID 947731 mail.crit] > fatal: fstat flow pipe write descriptor: Value too large for defined data type
The logging comes from this code fragment: ssize_t mail_flow_get(ssize_t len) { const char *myname = "mail_flow_get"; char buf[BUFFER_SIZE]; struct stat st; ... if (fstat(MASTER_FLOW_WRITE, &st) < 0) msg_fatal("fstat flow pipe write descriptor: %m"); This is on a pipe between master daemon and child processes. On some UNIX(-like) systems such as 32-bit Solaris and Linux, programs have to be compiled specifically for large (>2GB) files. File handles created in a "large file" process will produce fstat and other errors when inherited by programs that aren't built for "large file" support. Likely cause: you replaced Postfix with a "small file" build, but the "large file" master daemon is still running. Its file handles are inherited by smpd, cleanup, etc., and are causing errors in the "small file" programs. Likely solution: #postfix stop #postfix start Wietse