DirectAdmin update results in endless loop at Dovecot

IT_Architect

Verified User
Joined
Feb 27, 2006
Messages
903
DirectAdmin update results in endless loop at Dovecot

Operating System

FreeBSD 11.2

When I do
Code:
# ./build clean
# ./build update
# ./build all -d

Current dovecot version is: dovecot 2.3.2.1
Attempting to upgrade to: dovecot-2.3.4.1

See snip from output of "./build all -d" output in attachment: dovecot_update_error.txt
The snip starts with the first dovecot compile attempt and trimmed to only include the first 2 repeats of the compile loop because it looped endlessly. Repeat the search: "Trying to make dovecot..." to quickly locate the end of one iteration where it errors out, and the beginning of the next.

Thanks!
 

Attachments

  • dovecot_update_error.txt
    417.7 KB · Views: 26
Last edited:

IT_Architect

Verified User
Joined
Feb 27, 2006
Messages
903
I tried it again and now I have an endless loop in MySQL. I'm going to do clean install, and if it doesn't update then, then this stuff isn't real or maintainable, or at least with FreeBSD it isn't. I'll just transition people elsewhere.
 
Last edited:

smtalk

Administrator
Staff member
Joined
Aug 22, 2006
Messages
9,616
Location
LT, EU
May you create a ticket at tickets.directadmin.com ? I'm sure these cases could be prevented/fixed :)
 

IT_Architect

Verified User
Joined
Feb 27, 2006
Messages
903
Thank you for your reply. The original install took place at the end of last year. I even removed MariaDB and replace it with MySQL 5.6 and everything still worked fine. The a full build work fine. Now updates no longer work. I'm currently make a fresh install with snapshots each step of the way to determine if I can track down what is causing the problem and if I find that I still have it, I will submit a ticket with the full config and the output of:
# ./build update
# ./build all -d
 

Peter Laws

Verified User
Joined
Sep 13, 2008
Messages
2,020
Location
London UK
I see this too (Debian), only Dovecot.... Although it does compile in the end.

Also, when using the CB2 plugin, the output halts at a specific point (maybe at the loop point?)
 

IT_Architect

Verified User
Joined
Feb 27, 2006
Messages
903
I see this too (Debian), only Dovecot.... Although it does compile in the end. Also, when using the CB2 plugin, the output halts at a specific point (maybe at the loop point?)
1. There is nothing different about the 11/2018 install selections that installed perfectly, and the ones selected last week and this week that do not work. The ones that fail to install now are:
__a. ProFTPd - It will fail even if you pre-create the "/var/run/proftpd" directory prior to setup. It will not install under any circumstances if you don't create that directory first. This is a long-reported bug in the setup script. However, before, if you pre-created this directory, the setup script would install it fine. That is no longer the case.
__b. Dovecot - It will fail to install under both setup.sh and build.

2. When I run "./build all -d" on a server that installed fine on 11/2018, it will go into an endless loop on MySQL 5.6. On those servers, I set them up and changed them to MySQL, and then did "./build all -d" afterward and there were no problems with ProFTPd, Dovecot, or MySQL. Thus, I don't believe that the endless loop has anything to do with Dovecot per se. My guess is that the default "-d" is to retry on errors during "./build all -d", and not in setup.sh. If that is true, and the same situation existed prior, one wouldn't encounter it unless they had something fail to install during setup, which I did not. Why there is all of the sudden a MySQL 5.6 error now with those, I don't know. It could be the reason I don't encounter the Dovecot issue on the old servers is because I get locked in the MySQL loop before it gets to Dovecot. Thus, it seems there is either a problem with the script, prerequisites, or an update in binaries that is causing the looping issue, with it looking like a combination of binaries that no longer work and the script's reaction to the error.

3. I can install ProFTPd with "./build proftpd". I don't know if it would survive "./build all -d" afterward or not. If Dovecot generates prior to it, it would stuck in a loop prior to getting there. Based on the fact that the 11/2018 also no longer generate, and fail at MySQL, it seems to point to a binary issue plus the way "./build -d" reacts to it.

4. Dovecot will not install at all.
__a. Every time you do a "./build all -d", you will get an endless loop.
__b. If you do a "./build dovecot", it will end like this every time:
Code:
1 warning and 1 error generated.
gmake[3]: *** [Makefile:638: test-event-stats.o] Error 1
gmake[3]: *** Waiting for unfinished jobs....
libtool: compile:  clang -DHAVE_CONFIG_H -I. -I../.. -I../../src/lib -I../../src/lib-dns -I../../src/lib-test -I../../src/lib-settings -I../../src/lib-ssl-iostream -DPKG_RUNDIR=\"/var/run/dovecot\" -DPKG_STATEDIR=\"/var/lib/dovecot\" -DSYSCONFDIR=\"/etc/dovecot\" -DBINDIR=\"/usr/bin\" -I/usr/local/include -std=gnu99 -g -O2 -fstack-protector-strong -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -Wno-duplicate-decl-specifier -Wstrict-aliasing=2 -MT syslog-util.lo -MD -MP -MF .deps/syslog-util.Tpo -c syslog-util.c -o syslog-util.o >/dev/null 2>&1
mv -f .deps/syslog-util.Tpo .deps/syslog-util.Plo
mv -f .deps/stats-client.Tpo .deps/stats-client.Plo
gmake[3]: Leaving directory '/usr/local/directadmin/custombuild/dovecot-2.3.4.1/src/lib-master'
gmake[2]: *** [Makefile:565: all-recursive] Error 1
gmake[2]: Leaving directory '/usr/local/directadmin/custombuild/dovecot-2.3.4.1/src'
gmake[1]: *** [Makefile:683: all-recursive] Error 1
gmake[1]: Leaving directory '/usr/local/directadmin/custombuild/dovecot-2.3.4.1'
gmake: *** [Makefile:527: all] Error 2

*** The make has failed, would you like to try to make again? (y,n): 
n

5. Yesterday I sent to DA Support,
__a. Documented the FreeBSD 11.2 setup; updated to latest, 4 vcpus, 3GB vRAM, 80 GB vmdk.setup and all OS software pre-installed, plus the DA requirements installed, plus the options selected during install; apache, php 5.6 fpm, php 7.3 fpm, the default MariaDB, RoundCube, Dovecot,
__b. Using the UNIX script utility, I captured full logs of screen output of:
____1.) DA prerequisite install.
____2.) DA install
____3.) The successful after-the-fact ProFTPd install
____4.) The unsuccessful after-the-fact Dovecot install that loops forever.
____5.) Login information to a server that demonstrates the problem that they can play with.

6. I have not heard anything back from DirectAdmin support.

Thanks!
 

IT_Architect

Verified User
Joined
Feb 27, 2006
Messages
903
I received a response from support.
There was a problem with dovecot install, but they also pointed out a problem with my syntax for update.
Note, "./build all d" is the correct syntax, there are no dashes... as that might default to "y" which would keep looping However, the default shouldn't loop.. but the remake might be doing it if ./build all -d is used, rather than ./build all d.
I normally copy and paste commands from my docs so that I don't make any typing errors. Things were correct in my install docs, but on my maintenance docs I had a "./build -d" instead of simply a "./build d".

Proftpd is fine, the script just aborted before it got there

In any case, I can do a:
./build update
and
./build d
and it will not enter and endless loop on dovecot anymore.
 
Last edited:
Top