DOMjudge / domjudge-packaging

DOMjudge packaging for (Linux) distributions and live image
31 stars 37 forks source link

Problem running domjudge after installing from apt-get install domjudge #60

Closed baziorek closed 3 years ago

baziorek commented 4 years ago

I've installed domjudge from debian package repository according to: https://www.domjudge.org/download but when I try to enter the webpage: localhost/domjudge I see blank webpage.

I thing that the problem is with database connection. I see in domserver install documentation that I need to run: dj_setup_database but I don't have than script on my computer. I don't have also file: dbpasswords.secret I see only file: /etc/domjudge/initial_admin_password.secret but it is rather not to database.

eldering commented 4 years ago

Just for completeness: which version of the DOMjudge package did you install? And what version of Debian or Ubuntu (or other Debian derivative) are you using?

baziorek commented 4 years ago

I'm using Ubuntu 20.04. Installed version of domjudge is (installed about a week ago):

$ apt list | grep domjudge
domjudge-common/main,now 7.0.3-1 all [zainstalowany]
domjudge-doc/main,now 7.0.3-1 all [zainstalowany]
domjudge-domserver/main,now 7.0.3-1 all [zainstalowany]
domjudge-judgehost-dbgsym/main 7.0.3-1 amd64
domjudge-judgehost/main 7.0.3-1 amd64

Details:

$ apt show domjudge-domserver
Package: domjudge-domserver
Version: 7.0.3-1
Priority: optional
Section: misc
Source: domjudge
Maintainer: DOMjudge Developers <team@domjudge.org>
Installed-Size: 28,8 MB
Depends: domjudge-common (= 7.0.3-1), apache2 | httpd, php, php-mysql, php-xml, php-intl, php-curl, php-mbstring, php-cli, php-json, php-gd, php-zip, zip, unzip, dbconfig-common, default-mysql-client | virtual-mysql-client, debconf (>= 0.5) | debconf-2.0
Recommends: ntp, default-mysql-server | virtual-mysql-server
Suggests: enscript, lpr
Homepage: https://www.domjudge.org
Download-Size: 4 572 kB
APT-Manual-Installed: yes
APT-Sources: https://domjudge.org/debian unstable/ Packages
Description: programming contest jury system (server)
 DOMjudge is a jury system for running a programming contest. It allows
 teams to submit solutions to problems, which will be compiled, ran and
 tested in a secured environment. For communications with teams, judges
 and the general public, a web interface is provided.
 .
 DOMjudge has been developed for and used in ICPC-style contests around
 the world.
 .
 This package contains the central server.
thijskh commented 4 years ago

Note: the manual on the link you provide is for a more recent version of DOMjudge. Please use at the documentation provided with your own system (e.g. /usr/share/doc/domjudge-doc/) to avoid looking for the wrong things. (We expect to provide Debian packages for the most recent DOMjudge version within a few weeks.)

The Debian package already sets up the database so the dj_setup_database tool should not be necessary. I recommend to look into the error log of Apache (/var/log/apache2/) to see why you get a white screen. There should be a more concreet error message there.

baziorek commented 4 years ago

Thanks for information, I've checked in file /usr/share/doc/domjudge-doc/admin/admin-manual.pdf and information about database configuration looks the same If it would be in few weeks please tell me where I can set user and password to database for domjudge server?

About white screen and logs - it is problem with database:

agh@agh-sprawdzarka:/var/log/apache2$ cat error.log
[Tue Jun 16 17:11:24.551187 2020] [php7:error] [pid 80876] [client 10.130.26.44:34842] PHP Fatal error:  Uncaught PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 't0.category' in 'field list' in /usr/share/domjudge/lib/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:104\nStack trace:\n#0 /usr/share/domjudge/lib/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php(104): PDO->query()\n#1 /usr/share/domjudge/lib/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(852): Doctrine\\DBAL\\Driver\\PDOConnection->query()\n#2 /usr/share/domjudge/lib/vendor/doctrine/orm/lib/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php(884): Doctrine\\DBAL\\Connection->executeQuery()\n#3 /usr/share/domjudge/lib/vendor/doctrine/orm/lib/Doctrine/ORM/EntityRepository.php(181): Doctrine\\ORM\\Persisters\\Entity\\BasicEntityPersister->loadAll()\n#4 /usr/share/domjudge/lib/vendor/doctrine/orm/lib/Doctrine/ORM/EntityRepository.php(164): Doctrine\\ORM\\EntityRepository->findBy()\n#5 /usr/share/domjudge/webapp/src/DOMJudgeBundle/Service/DOMJudgeService.php(78): Doctrine\\ORM\\EntityRepository->findAll()\n#6 /u in /usr/share/domjudge/lib/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php on line 71
agh@agh-sprawdzarka:/var/log/apache2$ cat access.log
10.130.26.44 - - [16/Jun/2020:17:11:20 +0200] "GET /domjudge/ HTTP/1.1" 500 185 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:77.0) Gecko/20100101 Firefox/77.0"
thijskh commented 3 years ago

I’m sorry this thread died out. I’m curious if you solved the issue. We have much more modern packages now which should be less fragile in this regard. For now I’ll close this issue bur can reopen if there’s something to do.

baziorek commented 3 years ago

I've solved this with docker image:D, not with *.deb package. But it is good to know that the packages are now new and I can check them.