From fbopensource at gmail.com Sun Jul 9 00:54:46 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Sun, 9 Jul 2017 00:54:46 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 Message-ID: Hello, I am currently running CDash 2.0.2 and I would like to upgrade to 2.4.0. I am using Ubuntu 17.04 with postgresql 9.6.3. I have some questions about steps 5,6,7 as well as the new "public" hierarchy and the required "public" symlink. Side note: https://www.cdash.org/download/ is still saying that 2.2.3 is the current stable release but I downloaded CDash-2.4.0.zip from the wiki: http://public.kitware.com/Wiki/File:CDash-2-4-0.zip I extracted the archive in my home directory at: ~/install/cdash/cdash-2.4.0 therefore the root directory is at: ~/install/cdash/cdash-2.4.0/CDash I see that composer.phar is already part of the archive, I assume that I don't have to apply step 5 of the upgrade, correct? https://public.kitware.com/Wiki/CDash:Upgrade#Upgrading_CDash "step 5: Download composer (if you haven't already) and run php composer.phar install --no-dev --optimize-autoloader." Same question for step 6 (npm install) and 7 (gulp). Are they just here for people using git instead or are they mandatory when using the zip archive as well? If I need to follow step 6, where do I run "npm install" from? Is is from ~/install/cdash/cdash-2.4.0/CDash for me? (Note that I installed the Ubuntu packages for composer and npm, the composer package does not provide a composer.phar but /usr/bin/composer instead). Last question, where do I setup the symlink to public and do I have to do it? To help you answer my question, here are some details about my current 2.0.2 setup: The 2.0.2 is extracted here: ~/install/cdash/CDash-2-0-2 where I have a custom config file in ./cdash/config.local.php Therefore I will copy my config.local.php to ~/install/cdash/cdash-2.4.0/CDash/config/ , right? My /var/www looks like this: drwxr-xr-x 4 root root 152 Apr 27 2014 ./ drwxr-xr-x 16 root root 432 Apr 21 2016 ../ drwx------ 17 www-data www-data 4912 Apr 26 2016 CDash/ drwxr-xr-x 2 root root 48 Apr 3 2014 html/ -rw-r--r-- 1 root root 177 Oct 19 2013 index.html -rw------- 1 www-data www-data 20 Mar 2 2012 test.php In /etc/apache2/, ./sites-enabled/default-ssl.conf and ./sites-enabled/000-default.conf are symlink to files in ./sites.available both having DocumentRoot pointing to /var/www ./conf-enabled/cdash.conf is a symlink to ./conf-available/cdash.conf which is just: Order allow,deny Allow from all Therefore, I will change it to: Order allow,deny Allow from all right? Or is it where I should use "public" instead with the following statement (and not use a symlink) ? Order allow,deny Allow from all Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Mon Jul 10 13:37:09 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Mon, 10 Jul 2017 13:37:09 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hey Francois, On Sun, Jul 9, 2017 at 12:54 AM, Fran?ois Bertel wrote: > I see that composer.phar is already part of the archive, I assume that I > don't > have to apply step 5 of the upgrade, correct? > > https://public.kitware.com/Wiki/CDash:Upgrade#Upgrading_CDash > > "step 5: Download composer (if you haven't already) and run php > composer.phar install --no-dev --optimize-autoloader." > > Same question for step 6 (npm install) and 7 (gulp). Are they just here > for people using git instead or are they mandatory when using the zip > archive as well? > > If I need to follow step 6, where do I run "npm install" from? Is is from > ~/install/cdash/cdash-2.4.0/CDash for me? > > (Note that I installed the Ubuntu packages for composer and npm, the > composer package does not provide a composer.phar but /usr/bin/composer > instead). > I just unpacked CDash-2-4-0.zip to refresh my memory. Long story short, if you are using a release (or the "prebuilt" git branch) you do not have to run composer, npm, or gulp. To clarify, let me briefly explain what these tools are used for. Composer downloads PHP dependencies. Its output lives in the "vendor" subdirectory. npm downloads Javascript dependencies. It places its output in node_modules. gulp is essentially a build step that squashes together all of our .js files and performs some cache busting. It generates public/js/CDash*.js and public/build/. All of these contents are already present in the release zip, so you don't have to generate them yourself. > Last question, where do I setup the symlink to public and do I have to do > it? > The motivating concept here is that you only want to expose the "public" subdirectory to the web. To help you answer my question, here are some details about my current > 2.0.2 setup: > > The 2.0.2 is extracted here: > ~/install/cdash/CDash-2-0-2 where I have a custom config file in > ./cdash/config.local.php > > Therefore I will copy my config.local.php to ~/install/cdash/cdash-2.4.0/CDash/config/ > , right? > That sounds right to me. In general, I recommend that config.local.php contains only the lines that have been changed from the default, rather than a full copy/paste of config.php. But this is mostly an issue of housekeeping / tidiness. > My /var/www looks like this: > drwxr-xr-x 4 root root 152 Apr 27 2014 ./ > drwxr-xr-x 16 root root 432 Apr 21 2016 ../ > drwx------ 17 www-data www-data 4912 Apr 26 2016 CDash/ > drwxr-xr-x 2 root root 48 Apr 3 2014 html/ > -rw-r--r-- 1 root root 177 Oct 19 2013 index.html > -rw------- 1 www-data www-data 20 Mar 2 2012 test.php > > In /etc/apache2/, > > ./sites-enabled/default-ssl.conf and ./sites-enabled/000-default.conf > are symlink to files in ./sites.available both having DocumentRoot pointing > to /var/www > > ./conf-enabled/cdash.conf is a symlink to ./conf-available/cdash.conf > which is just: > > Order allow,deny > Allow from all > > > Therefore, I will change it to: > > Order allow,deny > Allow from all > > > right? Or is it where I should use "public" instead with the following > statement > (and not use a symlink) ? > > > Order allow,deny > Allow from all > > Unless I'm missing something, these elements are only defining permissions, ie whether or not people are allowed to view the files in these directories. Since your DocumentRoot is /var/www, I recommend making a symbolic link (/var/www/CDash or so) to /home/fbertel/install/cdash/ cdash-2.4.0/CDash/public. Please let us know if you need any more help getting this set up correctly. -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Mon Jul 10 13:45:52 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Mon, 10 Jul 2017 13:45:52 -0400 Subject: [CDash] How to connect with Perforce Server? In-Reply-To: <576b2ed1-b5ce-e330-2b70-134816a7ce41@exch.dwd.de> References: <576b2ed1-b5ce-e330-2b70-134816a7ce41@exch.dwd.de> Message-ID: On Mon, Jun 26, 2017 at 4:33 AM, Nils Rathmann wrote: > Hi, > since P4Web is deprecated and no longer supported by Perforce, how should > I connect to a Perforce Server? Partially, the P4Web functionality seems > to be covered by Perforce Helix Swarm. I found an old version of P4Web and > could try to use it, even with my up-to-date Perforce Server. > > What is the latest practice to connect with Perforce? > I'm not entirely sure, I haven't had much experience with Perforce lately. But after reading over this blog post , I think you are correct that Helix Swarm is meant as a replacement for p4web. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Tue Jul 11 22:59:16 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Tue, 11 Jul 2017 22:59:16 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, Thanks for the explanation. I was confused about my old setup (I have not dug into it for years). My 2.0.2 setup is actually only involving /var/www/CDash, everything is there, including the minimal config.local.php. Forget everything I said about whatever is in my home directory, this was my first try a long time ago. Unfortunately, I am not able to log as administrator in the new CDash (step 10 below) Now here is what I did to move to 2.4.0: 1. Stop apache2: sudo systemctl stop apache2 2. Save the CDash DB: sudo -u postgres pg_dump -U postgres cdash > cdashbackup.sql 3. Move the old cdash: cd /var/www ; mv CDash CDashOld 4. unpack cdash 2.4.0 at /var/www/CDashRoot, making sure the owner and group are www-data recursively (to match the values in /etc/apache2/envvars APACHE_RUN_USER and APACHE_RUN_GROUP) 5. Copy the old minimal /var/www/CDashOld/cdash/config.local.php into /var/www/CDashRoot/config/ 6. Create a symlink /var/www/CDash->/var/www/CDashRoot/public 7. Restart apache2: sudo systemctl start apache2 8. Open the CDash home page, which redirects to CDash/viewProjects.php (by the way, the open page says 2.5.0 not 2.4.0) 9. As documented on the wiki, I have the page with the warning message:The current database schema doesn't match the version of CDash you are running, upgrade your database structure in the Administration/CDash maintenance panel of CDash. So far so good. 10. I click on "Login" in the upper left corner to be able to log as administrator, which redirects to CDash/user.php but this is a totally empty page so I cannot proceed further as I cannot even log in as administrator... What am I missing here? Best, -- Fran?ois Bertel On Sun, Jul 9, 2017 at 12:54 AM, Fran?ois Bertel wrote: > Hello, > > I am currently running CDash 2.0.2 and I would like to upgrade to 2.4.0. > I am using Ubuntu 17.04 with postgresql 9.6.3. > > I have some questions about steps 5,6,7 as well as the new "public" > hierarchy and > the required "public" symlink. > > Side note: https://www.cdash.org/download/ is still saying that 2.2.3 is > the > current stable release but I downloaded CDash-2.4.0.zip from the wiki: > http://public.kitware.com/Wiki/File:CDash-2-4-0.zip > > I extracted the archive in my home directory at: > > ~/install/cdash/cdash-2.4.0 > > therefore the root directory is at: ~/install/cdash/cdash-2.4.0/CDash > > I see that composer.phar is already part of the archive, I assume that I > don't > have to apply step 5 of the upgrade, correct? > > https://public.kitware.com/Wiki/CDash:Upgrade#Upgrading_CDash > > "step 5: Download composer (if you haven't already) and run php > composer.phar install --no-dev --optimize-autoloader." > > Same question for step 6 (npm install) and 7 (gulp). Are they just here > for people using git instead or are they mandatory when using the zip > archive as well? > > If I need to follow step 6, where do I run "npm install" from? Is is from > ~/install/cdash/cdash-2.4.0/CDash for me? > > (Note that I installed the Ubuntu packages for composer and npm, the > composer package does not provide a composer.phar but /usr/bin/composer > instead). > > Last question, where do I setup the symlink to public and do I have to do > it? To help you answer my question, here are some details about my current > 2.0.2 setup: > > The 2.0.2 is extracted here: > ~/install/cdash/CDash-2-0-2 where I have a custom config file in > ./cdash/config.local.php > > Therefore I will copy my config.local.php to ~/install/cdash/cdash-2.4.0/CDash/config/ > , right? > > My /var/www looks like this: > drwxr-xr-x 4 root root 152 Apr 27 2014 ./ > drwxr-xr-x 16 root root 432 Apr 21 2016 ../ > drwx------ 17 www-data www-data 4912 Apr 26 2016 CDash/ > drwxr-xr-x 2 root root 48 Apr 3 2014 html/ > -rw-r--r-- 1 root root 177 Oct 19 2013 index.html > -rw------- 1 www-data www-data 20 Mar 2 2012 test.php > > In /etc/apache2/, > > ./sites-enabled/default-ssl.conf and ./sites-enabled/000-default.conf > are symlink to files in ./sites.available both having DocumentRoot pointing > to /var/www > > ./conf-enabled/cdash.conf is a symlink to ./conf-available/cdash.conf > which is just: > > Order allow,deny > Allow from all > > > Therefore, I will change it to: > > Order allow,deny > Allow from all > > > right? Or is it where I should use "public" instead with the following > statement > (and not use a symlink) ? > > > Order allow,deny > Allow from all > > > Best, > > -- > Fran?ois Bertel > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Thu Jul 13 10:39:58 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Thu, 13 Jul 2017 10:39:58 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Tue, Jul 11, 2017 at 10:59 PM, Fran?ois Bertel wrote: > I click on "Login" in the upper left corner to be able to log as > administrator, which redirects to CDash/user.php but this is a totally > empty page so I cannot proceed further as I cannot even log in as > administrator... What am I missing here? > Hmm, that's odd. My hunch is that the server is throwing an error. Could you check the logs? I think that by default PHP logs its errors in /var/log/syslog. One thing that might be going wrong is permissions. The user running your web server (typically apache or www-data) needs to have write permissions to the following subdirectories: backup, log, public/rss, and public/upload. CDash typically lets you know when these permissions are lacking, but I figured I'd mention it here anyway. Another thing that might be worth trying is installing CDash in an empty database. If you create a new postgres database and point CDash at it (via config.local.php), the install script will handle creating all the tables & such for you. Of course, this solution might not be viable for you if there is information in your old CDash database that you'd like to keep. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Thu Jul 13 21:27:18 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Thu, 13 Jul 2017 21:27:18 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, I figured out that the php-mbstring package was not installed on my Ubuntu. That fixed the issue. Even after upgrading the DB I still see the warning message. Here are the details of my investigation: 1. I checked all the write permissions you listed and they were all correct. 2. I did not find anything relevant in /var/log/syslog. However, I saw the following error in /var/log/apache2/error.log (I masked the IP address and port with *): Call to undefined function mb_detect_encoding() [:error] [pid 3726] [client *.*.*.*:*] PHP Fatal error: Uncaught Error: Call to undefined function mb_detect_encoding() in /var/www/CDashRoot/include/common.php:139\nStack trace:\n#0 /var/www/CDashRoot/include/common.php(324): XMLStrFormat('css/cdash.css')\n#1 /var/www/CDashRoot/include/common.php(1838): add_XML_value('cssfile', 'css/cdash.css')\n#2 /var/www/CDashRoot/include/login_functions.php(383): begin_XML_for_XSLT()\n#3 /var/www/CDashRoot/public/login.php(61): LoginForm('')\n#4 /var/www/CDashRoot/public/user.php(20): include('/var/www/CDashR...')\n#5 {main}\n thrown in /var/www/CDashRoot/include/common.php on line 139, referer: http:// *.*/CDash/viewProjects.php Using grep in /var/www/CDashRoot for mb_detect_encoding gave the following result: $ find . -name '*' -print0 | xargs -r -0 grep -n mb_detect_encoding | less Binary file ./composer.phar matches ./public/install.php:50:if (function_exists('mb_detect_encoding') === false) { ./include/common.php:139: if (mb_detect_encoding($str, 'UTF-8', true) === false) { ./include/common.php:2072: if (function_exists('mb_detect_encoding') && ./include/common.php:2073: mb_detect_encoding($value, 'UTF-8', true) === false Searching around, I found that this php function is provided by the php-mbstring package, which was not installed on my Ubuntu machine. 3. I installed the php-mbstring package and restarted apache2. 4. I went back the CDash main page and was able to login as administrator! I was able to go the maintenance page and clicked on the push button at the bottom "Upgrade CDash" . Now the CDash maintenance page says: *Current CDash database schema: *2.5 Upgrading tables: Applying 2.6 patches: *CDash Upgrade Successful.* 5. However, if I go back again the CDash homepage, I have the same red message: "The current database schema doesn't match the version of CDash you are running, upgrade your database structure in the Administration/CDash maintenance panel of CDash" Of course the weird thing is I installed 2.4.0 but the maintenance page says current schema 2.5 and there is also this line "Applying 2.6 patches". Each time a different version number. That could explain why I am still seeing this message. I did not find anything new the apache2 log this time. Any idea? Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Thu Jul 13 21:40:30 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Thu, 13 Jul 2017 21:40:30 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: I don't think I have a valid state yet: The main CDash page lists 0 project. Then if I click on "My CDash" in the upper left corner, a new page open where my project is listed but as soon as I click on it, it is an empty project page with a line that says "Feed::GetFeed(): 0 not set". There is some messages in /var/log/apache2/error.log PHP Notice: Undefined index: sharelabelfilters in /var/www/CDashRoot/models/project.php on line 435, referer: http://myserver.home/CDash/index.php?project=MyProject PHP Warning: array_merge(): Argument #2 is not an array in /var/www/CDashRoot/public/api/v1/index.php on line 451, referer: http://myserver.home/CDash/index.php?project=MyProject PHP Warning: Invalid argument supplied for foreach() in /var/www/CDashRoot/public/api/v1/index.php on line 493, referer: http://myserver.home/CDash/index.php?project=MyProject PHP Warning: Invalid argument supplied for foreach() in /var/www/CDashRoot/public/ajax/getfeed.php on line 101, referer: http://myserver.home/CDash/index.php?project=MyProject On Thu, Jul 13, 2017 at 9:27 PM, Fran?ois Bertel wrote: > Hi Zack, > > I figured out that the php-mbstring package was not installed on my > Ubuntu. That fixed the issue. Even after upgrading the DB I still see the > warning message. > > > Here are the details of my investigation: > > 1. I checked all the write permissions you listed and they were all > correct. > 2. I did not find anything relevant in /var/log/syslog. However, I saw the > following error in /var/log/apache2/error.log (I masked the IP address and > port with *): Call to undefined function mb_detect_encoding() > > [:error] [pid 3726] [client *.*.*.*:*] PHP Fatal error: Uncaught Error: > Call to undefined function mb_detect_encoding() in > /var/www/CDashRoot/include/common.php:139\nStack trace:\n#0 > /var/www/CDashRoot/include/common.php(324): XMLStrFormat('css/cdash.css')\n#1 > /var/www/CDashRoot/include/common.php(1838): add_XML_value('cssfile', > 'css/cdash.css')\n#2 /var/www/CDashRoot/include/login_functions.php(383): > begin_XML_for_XSLT()\n#3 /var/www/CDashRoot/public/login.php(61): > LoginForm('')\n#4 /var/www/CDashRoot/public/user.php(20): > include('/var/www/CDashR...')\n#5 {main}\n thrown in > /var/www/CDashRoot/include/common.php on line 139, referer: http:// > *.*/CDash/viewProjects.php > > Using grep in /var/www/CDashRoot for mb_detect_encoding gave the following > result: > $ find . -name '*' -print0 | xargs -r -0 grep -n mb_detect_encoding | less > > Binary file ./composer.phar matches > ./public/install.php:50:if (function_exists('mb_detect_encoding') === > false) { > ./include/common.php:139: if (mb_detect_encoding($str, 'UTF-8', true) > === false) { > ./include/common.php:2072: if (function_exists('mb_detect_encoding') > && > ./include/common.php:2073: mb_detect_encoding($value, 'UTF-8', > true) === false > > Searching around, I found that this php function is provided by the > php-mbstring package, which was not installed on my Ubuntu machine. > > 3. I installed the php-mbstring package and restarted apache2. > 4. I went back the CDash main page and was able to login as administrator! > I was able to go the maintenance page and clicked on the push button at the > bottom "Upgrade CDash" . Now the CDash maintenance page says: > *Current CDash database schema: *2.5 > Upgrading tables: > Applying 2.6 patches: > > > > *CDash Upgrade Successful.* > 5. However, if I go back again the CDash homepage, I have the same red > message: "The current database schema doesn't match the version of CDash > you are running, upgrade your database structure in the > Administration/CDash maintenance panel of CDash" > > Of course the weird thing is I installed 2.4.0 but the maintenance page > says current schema 2.5 and there is also this line "Applying 2.6 patches". > Each time a different version number. That could explain why I am still > seeing this message. I did not find anything new the apache2 log this time. > Any idea? > > > Best, > > -- > Fran?ois Bertel > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Sat Jul 22 17:52:26 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Sat, 22 Jul 2017 17:52:26 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hello, With the hope of solving the DB upgrade issue, I changed strategy by moving from version to version instead of jumping directly from 2.0.2 to 2.4.0. Therefore I am trying first to upgrade from 2.0.2 to 2.2.2. I used the git repo and checked out the Release-2-2-2 tag as the link from the wiki ( http://public.kitware.com/Wiki/CDash:Installation#Previous_versions_of_CDash) to CDash-2.2.0.zip is not a valid link: http://www.cdash.org/download/CDash-2.0.2.zip First, I moved back to 2.0.2 (stopped apache, restored my saved DB, change the CDash symlink to point back to CDash-2.0.2 and restarted apache). CDash 2.0.2 is working fine, I can see some old submissions and my subprojects are listed properly. Then I attempted to move to 2.2.2. The CDash link opened properly with the message about the DB being from a previous version. I was able to log as admin and started performing the DB upgrade. At this point I got the following error message on the admin page in red: "Your rss directory is not writable, make sure that the web process can write into the directory." I checked that the CDash-2.2.2 hierarchy is entirely owned by the user www-data user and the group www-data. The www-data user has read and write access to the entire hierarchy. I don't see any rss directory in the hierarchy anyway. Where should I look for this rss directory? Best, -- Fran?ois Bertel On Thu, Jul 13, 2017 at 9:40 PM, Fran?ois Bertel wrote: > I don't think I have a valid state yet: > > The main CDash page lists 0 project. Then if I click on "My CDash" in the > upper left corner, a new page open where my project is listed but as soon > as I click on it, it is an empty project page with a line that says > "Feed::GetFeed(): 0 not set". > > There is some messages in /var/log/apache2/error.log > > PHP Notice: Undefined index: sharelabelfilters in > /var/www/CDashRoot/models/project.php on line 435, referer: > http://myserver.home/CDash/index.php?project=MyProject > PHP Warning: array_merge(): Argument #2 is not an array in > /var/www/CDashRoot/public/api/v1/index.php on line 451, referer: > http://myserver.home/CDash/index.php?project=MyProject > PHP Warning: Invalid argument supplied for foreach() in > /var/www/CDashRoot/public/api/v1/index.php on line 493, referer: > http://myserver.home/CDash/index.php?project=MyProject > PHP Warning: Invalid argument supplied for foreach() in > /var/www/CDashRoot/public/ajax/getfeed.php on line 101, referer: > http://myserver.home/CDash/index.php?project=MyProject > > On Thu, Jul 13, 2017 at 9:27 PM, Fran?ois Bertel > wrote: > >> Hi Zack, >> >> I figured out that the php-mbstring package was not installed on my >> Ubuntu. That fixed the issue. Even after upgrading the DB I still see the >> warning message. >> >> >> Here are the details of my investigation: >> >> 1. I checked all the write permissions you listed and they were all >> correct. >> 2. I did not find anything relevant in /var/log/syslog. However, I saw >> the following error in /var/log/apache2/error.log (I masked the IP address >> and port with *): Call to undefined function mb_detect_encoding() >> >> [:error] [pid 3726] [client *.*.*.*:*] PHP Fatal error: Uncaught Error: >> Call to undefined function mb_detect_encoding() in >> /var/www/CDashRoot/include/common.php:139\nStack trace:\n#0 >> /var/www/CDashRoot/include/common.php(324): >> XMLStrFormat('css/cdash.css')\n#1 /var/www/CDashRoot/include/common.php(1838): >> add_XML_value('cssfile', 'css/cdash.css')\n#2 /var/www/CDashRoot/include/login_functions.php(383): >> begin_XML_for_XSLT()\n#3 /var/www/CDashRoot/public/login.php(61): >> LoginForm('')\n#4 /var/www/CDashRoot/public/user.php(20): >> include('/var/www/CDashR...')\n#5 {main}\n thrown in >> /var/www/CDashRoot/include/common.php on line 139, referer: http:// >> *.*/CDash/viewProjects.php >> >> Using grep in /var/www/CDashRoot for mb_detect_encoding gave the >> following result: >> $ find . -name '*' -print0 | xargs -r -0 grep -n mb_detect_encoding | less >> >> Binary file ./composer.phar matches >> ./public/install.php:50:if (function_exists('mb_detect_encoding') === >> false) { >> ./include/common.php:139: if (mb_detect_encoding($str, 'UTF-8', true) >> === false) { >> ./include/common.php:2072: if (function_exists('mb_detect_encoding') >> && >> ./include/common.php:2073: mb_detect_encoding($value, >> 'UTF-8', true) === false >> >> Searching around, I found that this php function is provided by the >> php-mbstring package, which was not installed on my Ubuntu machine. >> >> 3. I installed the php-mbstring package and restarted apache2. >> 4. I went back the CDash main page and was able to login as >> administrator! I was able to go the maintenance page and clicked on the >> push button at the bottom "Upgrade CDash" . Now the CDash maintenance page >> says: >> *Current CDash database schema: *2.5 >> Upgrading tables: >> Applying 2.6 patches: >> >> >> >> *CDash Upgrade Successful.* >> 5. However, if I go back again the CDash homepage, I have the same red >> message: "The current database schema doesn't match the version of CDash >> you are running, upgrade your database structure in the >> Administration/CDash maintenance panel of CDash" >> >> Of course the weird thing is I installed 2.4.0 but the maintenance page >> says current schema 2.5 and there is also this line "Applying 2.6 patches". >> Each time a different version number. That could explain why I am still >> seeing this message. I did not find anything new the apache2 log this time. >> Any idea? >> >> >> Best, >> >> -- >> Fran?ois Bertel >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Mon Jul 24 11:27:03 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Mon, 24 Jul 2017 11:27:03 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Sat, Jul 22, 2017 at 5:52 PM, Fran?ois Bertel wrote: > Where should I look for this rss directory? > Depending on the version of CDash you have, it will either be CDash/rss or CDash/public/rss. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Tue Jul 25 20:45:37 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Tue, 25 Jul 2017 20:45:37 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, Note that the rss directory does not exist after "git checkout Release-2-2-2". I had to add it manually as CDash/rss. I have a new error when I click on the "Upgrade Cdash" button: I can see "Upgrading tables:" with the green check icon and the line below with the spinning wheel icon and "Applying 2.2 patches..." but a modal dialog with the following message pops up: "error Internal Server Error [OK]" When I close it, I still see the spinning wheel and it gets stuck there. I have the following error message in /var/log/apache2/error.log: PHP Fatal error: Uncaught Error: Call to a member function fetch() on boolean in /var/www/CDash-2.2.2/cdash/pdocore.php:140\nStack trace:\n#0 /var/www/CDash-2.2.2/upgrade.php(881): pdo_fetch_array(false)\n#1 {main}\n thrown in /var/www/CDash-2.2.2/cdash/pdocore.php on line 140, referer: http://myserver.home/CDash/upgrade.php Note that the symlink in /var/www is CDash -> CDash-2.2.2 Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Wed Jul 26 09:30:36 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Wed, 26 Jul 2017 09:30:36 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Tue, Jul 25, 2017 at 8:45 PM, Fran?ois Bertel wrote: > I have a new error when I click on the "Upgrade Cdash" button: I can see > "Upgrading tables:" with the green check icon and the line below with > the spinning wheel icon and "Applying 2.2 patches..." but a modal dialog > with the following message pops up: > "error Internal Server Error > [OK]" > > When I close it, I still see the spinning wheel and it gets stuck there. > > I have the following error message in /var/log/apache2/error.log: > > Call to a member function fetch() on boolean in pdocore.php > This error typically means you don't have a database connection. Instead of trying to fetch results from an active DB connection, it's trying to fetch them from FALSE (the error return value). Since you got this far, I assume that CDash can normally connect to the database, and somehow the connection slipped during the upgrade process. Looking at the v2.2 upgrade path , it doesn't seem like it's doing anything that should strain your database too hard. The only thing that isn't completely routine is the while() loop over buildupdate::buildid. This is just a guess, but you could try running this query manually: SELECT buildid FROM buildupdate If this returns something crazy like millions of rows, then perhaps that's the problem here. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Wed Jul 26 18:01:52 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Wed, 26 Jul 2017 18:01:52 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, The output is empty: $ sudo -u mypostgresuser psql cdash mypostgresuser cdash=# \conninfo You are connected to database "cdash" as user "mypostgresuser" via socket in "/var/run/postgresql" at port "5432". cdash=# SELECT buildin FROM buildupdate I also tried build2update instead buildupdate (is it a typo?) but this gives the same empty line. Note that the section in github that you are pointing at is the master branch. I compared it with the Release-2-2-2 tag: I don't see much difference besides styling/formatting with some extra whitespaces added to master, notably at the pdo_query() line. master: pdo_query("INSERT INTO build2update (buildid,updateid) VALUES ('" . $query_array['buildid'] . "','" . $query_array['buildid'] . "')"); Release-2-2-2: pdo_query("INSERT INTO build2update (buildid,updateid) VALUES ('".$query_array['buildid']."','".$query_array['buildid']."')"); On Wed, Jul 26, 2017 at 9:30 AM, Zack Galbreath wrote: > On Tue, Jul 25, 2017 at 8:45 PM, Fran?ois Bertel > wrote: > >> I have a new error when I click on the "Upgrade Cdash" button: I can see >> "Upgrading tables:" with the green check icon and the line below with >> the spinning wheel icon and "Applying 2.2 patches..." but a modal dialog >> with the following message pops up: >> "error Internal Server Error >> [OK]" >> >> When I close it, I still see the spinning wheel and it gets stuck there. >> >> I have the following error message in /var/log/apache2/error.log: >> >> Call to a member function fetch() on boolean in pdocore.php >> > > This error typically means you don't have a database connection. Instead > of trying to fetch results from an active DB connection, it's trying to > fetch them from FALSE (the error return value). Since you got this far, I > assume that CDash can normally connect to the database, and somehow the > connection slipped during the upgrade process. > > Looking at the v2.2 upgrade path > , > it doesn't seem like it's doing anything that should strain your database > too hard. The only thing that isn't completely routine is the while() loop > over buildupdate::buildid. This is just a guess, but you could try running > this query manually: > > SELECT buildid FROM buildupdate > > If this returns something crazy like millions of rows, then perhaps that's > the problem here. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Thu Jul 27 09:54:51 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Thu, 27 Jul 2017 09:54:51 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Wed, Jul 26, 2017 at 6:01 PM, Fran?ois Bertel wrote: > Hi Zack, > > The output is empty: > > $ sudo -u mypostgresuser psql cdash mypostgresuser > cdash=# \conninfo > You are connected to database "cdash" as user "mypostgresuser" via socket > in "/var/run/postgresql" at port "5432". > cdash=# SELECT buildin FROM buildupdate > > I also tried build2update instead buildupdate (is it a typo?) but this > gives the same empty line. > > Note that the section in github that you are pointing at is the master > branch. I compared it with the Release-2-2-2 tag: I don't see much > difference besides styling/formatting with some extra whitespaces added to > master, notably at the pdo_query() line. > > master: > pdo_query("INSERT INTO build2update (buildid,updateid) VALUES ('" . > $query_array['buildid'] . "','" . $query_array['buildid'] . "')"); > Release-2-2-2: > pdo_query("INSERT INTO build2update (buildid,updateid) VALUES > ('".$query_array['buildid']."','".$query_array['buildid']."')"); > Great, sounds like that section worked then. The idea behind this upgrade step was to remove the "buildid" column from the "buildupdate" table and store this info in "build2update" instead. Still, I'm not sure why the upgrade step errored out for you. Maybe try clicking the "Upgrade CDash" button again to see if this behavior repeats itself? -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Thu Jul 27 23:40:22 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Thu, 27 Jul 2017 23:40:22 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, I clicked on "Upgrade CDash" again but I got the same behavior and the same error message in /var/log/apache2/error.log. As I used CDash 2.2.2 from a git clone/git checkout Release-2-2-2, is there anything first to run or build inside the git repo maybe? Could it be different from the CDash-2.2.2.zip archive? (which, again, is not available for download). For example, the rss directory was missing maybe something else is missing in a fresh repo? Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Sun Jul 9 04:54:46 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Sun, 9 Jul 2017 00:54:46 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 Message-ID: Hello, I am currently running CDash 2.0.2 and I would like to upgrade to 2.4.0. I am using Ubuntu 17.04 with postgresql 9.6.3. I have some questions about steps 5,6,7 as well as the new "public" hierarchy and the required "public" symlink. Side note: https://www.cdash.org/download/ is still saying that 2.2.3 is the current stable release but I downloaded CDash-2.4.0.zip from the wiki: http://public.kitware.com/Wiki/File:CDash-2-4-0.zip I extracted the archive in my home directory at: ~/install/cdash/cdash-2.4.0 therefore the root directory is at: ~/install/cdash/cdash-2.4.0/CDash I see that composer.phar is already part of the archive, I assume that I don't have to apply step 5 of the upgrade, correct? https://public.kitware.com/Wiki/CDash:Upgrade#Upgrading_CDash "step 5: Download composer (if you haven't already) and run php composer.phar install --no-dev --optimize-autoloader." Same question for step 6 (npm install) and 7 (gulp). Are they just here for people using git instead or are they mandatory when using the zip archive as well? If I need to follow step 6, where do I run "npm install" from? Is is from ~/install/cdash/cdash-2.4.0/CDash for me? (Note that I installed the Ubuntu packages for composer and npm, the composer package does not provide a composer.phar but /usr/bin/composer instead). Last question, where do I setup the symlink to public and do I have to do it? To help you answer my question, here are some details about my current 2.0.2 setup: The 2.0.2 is extracted here: ~/install/cdash/CDash-2-0-2 where I have a custom config file in ./cdash/config.local.php Therefore I will copy my config.local.php to ~/install/cdash/cdash-2.4.0/CDash/config/ , right? My /var/www looks like this: drwxr-xr-x 4 root root 152 Apr 27 2014 ./ drwxr-xr-x 16 root root 432 Apr 21 2016 ../ drwx------ 17 www-data www-data 4912 Apr 26 2016 CDash/ drwxr-xr-x 2 root root 48 Apr 3 2014 html/ -rw-r--r-- 1 root root 177 Oct 19 2013 index.html -rw------- 1 www-data www-data 20 Mar 2 2012 test.php In /etc/apache2/, ./sites-enabled/default-ssl.conf and ./sites-enabled/000-default.conf are symlink to files in ./sites.available both having DocumentRoot pointing to /var/www ./conf-enabled/cdash.conf is a symlink to ./conf-available/cdash.conf which is just: Order allow,deny Allow from all Therefore, I will change it to: Order allow,deny Allow from all right? Or is it where I should use "public" instead with the following statement (and not use a symlink) ? Order allow,deny Allow from all Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Mon Jul 10 17:37:09 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Mon, 10 Jul 2017 13:37:09 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hey Francois, On Sun, Jul 9, 2017 at 12:54 AM, Fran?ois Bertel wrote: > I see that composer.phar is already part of the archive, I assume that I > don't > have to apply step 5 of the upgrade, correct? > > https://public.kitware.com/Wiki/CDash:Upgrade#Upgrading_CDash > > "step 5: Download composer (if you haven't already) and run php > composer.phar install --no-dev --optimize-autoloader." > > Same question for step 6 (npm install) and 7 (gulp). Are they just here > for people using git instead or are they mandatory when using the zip > archive as well? > > If I need to follow step 6, where do I run "npm install" from? Is is from > ~/install/cdash/cdash-2.4.0/CDash for me? > > (Note that I installed the Ubuntu packages for composer and npm, the > composer package does not provide a composer.phar but /usr/bin/composer > instead). > I just unpacked CDash-2-4-0.zip to refresh my memory. Long story short, if you are using a release (or the "prebuilt" git branch) you do not have to run composer, npm, or gulp. To clarify, let me briefly explain what these tools are used for. Composer downloads PHP dependencies. Its output lives in the "vendor" subdirectory. npm downloads Javascript dependencies. It places its output in node_modules. gulp is essentially a build step that squashes together all of our .js files and performs some cache busting. It generates public/js/CDash*.js and public/build/. All of these contents are already present in the release zip, so you don't have to generate them yourself. > Last question, where do I setup the symlink to public and do I have to do > it? > The motivating concept here is that you only want to expose the "public" subdirectory to the web. To help you answer my question, here are some details about my current > 2.0.2 setup: > > The 2.0.2 is extracted here: > ~/install/cdash/CDash-2-0-2 where I have a custom config file in > ./cdash/config.local.php > > Therefore I will copy my config.local.php to ~/install/cdash/cdash-2.4.0/CDash/config/ > , right? > That sounds right to me. In general, I recommend that config.local.php contains only the lines that have been changed from the default, rather than a full copy/paste of config.php. But this is mostly an issue of housekeeping / tidiness. > My /var/www looks like this: > drwxr-xr-x 4 root root 152 Apr 27 2014 ./ > drwxr-xr-x 16 root root 432 Apr 21 2016 ../ > drwx------ 17 www-data www-data 4912 Apr 26 2016 CDash/ > drwxr-xr-x 2 root root 48 Apr 3 2014 html/ > -rw-r--r-- 1 root root 177 Oct 19 2013 index.html > -rw------- 1 www-data www-data 20 Mar 2 2012 test.php > > In /etc/apache2/, > > ./sites-enabled/default-ssl.conf and ./sites-enabled/000-default.conf > are symlink to files in ./sites.available both having DocumentRoot pointing > to /var/www > > ./conf-enabled/cdash.conf is a symlink to ./conf-available/cdash.conf > which is just: > > Order allow,deny > Allow from all > > > Therefore, I will change it to: > > Order allow,deny > Allow from all > > > right? Or is it where I should use "public" instead with the following > statement > (and not use a symlink) ? > > > Order allow,deny > Allow from all > > Unless I'm missing something, these elements are only defining permissions, ie whether or not people are allowed to view the files in these directories. Since your DocumentRoot is /var/www, I recommend making a symbolic link (/var/www/CDash or so) to /home/fbertel/install/cdash/ cdash-2.4.0/CDash/public. Please let us know if you need any more help getting this set up correctly. -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Mon Jul 10 17:45:52 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Mon, 10 Jul 2017 13:45:52 -0400 Subject: [CDash] How to connect with Perforce Server? In-Reply-To: <576b2ed1-b5ce-e330-2b70-134816a7ce41@exch.dwd.de> References: <576b2ed1-b5ce-e330-2b70-134816a7ce41@exch.dwd.de> Message-ID: On Mon, Jun 26, 2017 at 4:33 AM, Nils Rathmann wrote: > Hi, > since P4Web is deprecated and no longer supported by Perforce, how should > I connect to a Perforce Server? Partially, the P4Web functionality seems > to be covered by Perforce Helix Swarm. I found an old version of P4Web and > could try to use it, even with my up-to-date Perforce Server. > > What is the latest practice to connect with Perforce? > I'm not entirely sure, I haven't had much experience with Perforce lately. But after reading over this blog post , I think you are correct that Helix Swarm is meant as a replacement for p4web. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Wed Jul 12 02:59:16 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Tue, 11 Jul 2017 22:59:16 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, Thanks for the explanation. I was confused about my old setup (I have not dug into it for years). My 2.0.2 setup is actually only involving /var/www/CDash, everything is there, including the minimal config.local.php. Forget everything I said about whatever is in my home directory, this was my first try a long time ago. Unfortunately, I am not able to log as administrator in the new CDash (step 10 below) Now here is what I did to move to 2.4.0: 1. Stop apache2: sudo systemctl stop apache2 2. Save the CDash DB: sudo -u postgres pg_dump -U postgres cdash > cdashbackup.sql 3. Move the old cdash: cd /var/www ; mv CDash CDashOld 4. unpack cdash 2.4.0 at /var/www/CDashRoot, making sure the owner and group are www-data recursively (to match the values in /etc/apache2/envvars APACHE_RUN_USER and APACHE_RUN_GROUP) 5. Copy the old minimal /var/www/CDashOld/cdash/config.local.php into /var/www/CDashRoot/config/ 6. Create a symlink /var/www/CDash->/var/www/CDashRoot/public 7. Restart apache2: sudo systemctl start apache2 8. Open the CDash home page, which redirects to CDash/viewProjects.php (by the way, the open page says 2.5.0 not 2.4.0) 9. As documented on the wiki, I have the page with the warning message:The current database schema doesn't match the version of CDash you are running, upgrade your database structure in the Administration/CDash maintenance panel of CDash. So far so good. 10. I click on "Login" in the upper left corner to be able to log as administrator, which redirects to CDash/user.php but this is a totally empty page so I cannot proceed further as I cannot even log in as administrator... What am I missing here? Best, -- Fran?ois Bertel On Sun, Jul 9, 2017 at 12:54 AM, Fran?ois Bertel wrote: > Hello, > > I am currently running CDash 2.0.2 and I would like to upgrade to 2.4.0. > I am using Ubuntu 17.04 with postgresql 9.6.3. > > I have some questions about steps 5,6,7 as well as the new "public" > hierarchy and > the required "public" symlink. > > Side note: https://www.cdash.org/download/ is still saying that 2.2.3 is > the > current stable release but I downloaded CDash-2.4.0.zip from the wiki: > http://public.kitware.com/Wiki/File:CDash-2-4-0.zip > > I extracted the archive in my home directory at: > > ~/install/cdash/cdash-2.4.0 > > therefore the root directory is at: ~/install/cdash/cdash-2.4.0/CDash > > I see that composer.phar is already part of the archive, I assume that I > don't > have to apply step 5 of the upgrade, correct? > > https://public.kitware.com/Wiki/CDash:Upgrade#Upgrading_CDash > > "step 5: Download composer (if you haven't already) and run php > composer.phar install --no-dev --optimize-autoloader." > > Same question for step 6 (npm install) and 7 (gulp). Are they just here > for people using git instead or are they mandatory when using the zip > archive as well? > > If I need to follow step 6, where do I run "npm install" from? Is is from > ~/install/cdash/cdash-2.4.0/CDash for me? > > (Note that I installed the Ubuntu packages for composer and npm, the > composer package does not provide a composer.phar but /usr/bin/composer > instead). > > Last question, where do I setup the symlink to public and do I have to do > it? To help you answer my question, here are some details about my current > 2.0.2 setup: > > The 2.0.2 is extracted here: > ~/install/cdash/CDash-2-0-2 where I have a custom config file in > ./cdash/config.local.php > > Therefore I will copy my config.local.php to ~/install/cdash/cdash-2.4.0/CDash/config/ > , right? > > My /var/www looks like this: > drwxr-xr-x 4 root root 152 Apr 27 2014 ./ > drwxr-xr-x 16 root root 432 Apr 21 2016 ../ > drwx------ 17 www-data www-data 4912 Apr 26 2016 CDash/ > drwxr-xr-x 2 root root 48 Apr 3 2014 html/ > -rw-r--r-- 1 root root 177 Oct 19 2013 index.html > -rw------- 1 www-data www-data 20 Mar 2 2012 test.php > > In /etc/apache2/, > > ./sites-enabled/default-ssl.conf and ./sites-enabled/000-default.conf > are symlink to files in ./sites.available both having DocumentRoot pointing > to /var/www > > ./conf-enabled/cdash.conf is a symlink to ./conf-available/cdash.conf > which is just: > > Order allow,deny > Allow from all > > > Therefore, I will change it to: > > Order allow,deny > Allow from all > > > right? Or is it where I should use "public" instead with the following > statement > (and not use a symlink) ? > > > Order allow,deny > Allow from all > > > Best, > > -- > Fran?ois Bertel > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Thu Jul 13 14:39:58 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Thu, 13 Jul 2017 10:39:58 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Tue, Jul 11, 2017 at 10:59 PM, Fran?ois Bertel wrote: > I click on "Login" in the upper left corner to be able to log as > administrator, which redirects to CDash/user.php but this is a totally > empty page so I cannot proceed further as I cannot even log in as > administrator... What am I missing here? > Hmm, that's odd. My hunch is that the server is throwing an error. Could you check the logs? I think that by default PHP logs its errors in /var/log/syslog. One thing that might be going wrong is permissions. The user running your web server (typically apache or www-data) needs to have write permissions to the following subdirectories: backup, log, public/rss, and public/upload. CDash typically lets you know when these permissions are lacking, but I figured I'd mention it here anyway. Another thing that might be worth trying is installing CDash in an empty database. If you create a new postgres database and point CDash at it (via config.local.php), the install script will handle creating all the tables & such for you. Of course, this solution might not be viable for you if there is information in your old CDash database that you'd like to keep. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Fri Jul 14 01:27:18 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Thu, 13 Jul 2017 21:27:18 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, I figured out that the php-mbstring package was not installed on my Ubuntu. That fixed the issue. Even after upgrading the DB I still see the warning message. Here are the details of my investigation: 1. I checked all the write permissions you listed and they were all correct. 2. I did not find anything relevant in /var/log/syslog. However, I saw the following error in /var/log/apache2/error.log (I masked the IP address and port with *): Call to undefined function mb_detect_encoding() [:error] [pid 3726] [client *.*.*.*:*] PHP Fatal error: Uncaught Error: Call to undefined function mb_detect_encoding() in /var/www/CDashRoot/include/common.php:139\nStack trace:\n#0 /var/www/CDashRoot/include/common.php(324): XMLStrFormat('css/cdash.css')\n#1 /var/www/CDashRoot/include/common.php(1838): add_XML_value('cssfile', 'css/cdash.css')\n#2 /var/www/CDashRoot/include/login_functions.php(383): begin_XML_for_XSLT()\n#3 /var/www/CDashRoot/public/login.php(61): LoginForm('')\n#4 /var/www/CDashRoot/public/user.php(20): include('/var/www/CDashR...')\n#5 {main}\n thrown in /var/www/CDashRoot/include/common.php on line 139, referer: http:// *.*/CDash/viewProjects.php Using grep in /var/www/CDashRoot for mb_detect_encoding gave the following result: $ find . -name '*' -print0 | xargs -r -0 grep -n mb_detect_encoding | less Binary file ./composer.phar matches ./public/install.php:50:if (function_exists('mb_detect_encoding') === false) { ./include/common.php:139: if (mb_detect_encoding($str, 'UTF-8', true) === false) { ./include/common.php:2072: if (function_exists('mb_detect_encoding') && ./include/common.php:2073: mb_detect_encoding($value, 'UTF-8', true) === false Searching around, I found that this php function is provided by the php-mbstring package, which was not installed on my Ubuntu machine. 3. I installed the php-mbstring package and restarted apache2. 4. I went back the CDash main page and was able to login as administrator! I was able to go the maintenance page and clicked on the push button at the bottom "Upgrade CDash" . Now the CDash maintenance page says: *Current CDash database schema: *2.5 Upgrading tables: Applying 2.6 patches: *CDash Upgrade Successful.* 5. However, if I go back again the CDash homepage, I have the same red message: "The current database schema doesn't match the version of CDash you are running, upgrade your database structure in the Administration/CDash maintenance panel of CDash" Of course the weird thing is I installed 2.4.0 but the maintenance page says current schema 2.5 and there is also this line "Applying 2.6 patches". Each time a different version number. That could explain why I am still seeing this message. I did not find anything new the apache2 log this time. Any idea? Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Fri Jul 14 01:40:30 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Thu, 13 Jul 2017 21:40:30 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: I don't think I have a valid state yet: The main CDash page lists 0 project. Then if I click on "My CDash" in the upper left corner, a new page open where my project is listed but as soon as I click on it, it is an empty project page with a line that says "Feed::GetFeed(): 0 not set". There is some messages in /var/log/apache2/error.log PHP Notice: Undefined index: sharelabelfilters in /var/www/CDashRoot/models/project.php on line 435, referer: http://myserver.home/CDash/index.php?project=MyProject PHP Warning: array_merge(): Argument #2 is not an array in /var/www/CDashRoot/public/api/v1/index.php on line 451, referer: http://myserver.home/CDash/index.php?project=MyProject PHP Warning: Invalid argument supplied for foreach() in /var/www/CDashRoot/public/api/v1/index.php on line 493, referer: http://myserver.home/CDash/index.php?project=MyProject PHP Warning: Invalid argument supplied for foreach() in /var/www/CDashRoot/public/ajax/getfeed.php on line 101, referer: http://myserver.home/CDash/index.php?project=MyProject On Thu, Jul 13, 2017 at 9:27 PM, Fran?ois Bertel wrote: > Hi Zack, > > I figured out that the php-mbstring package was not installed on my > Ubuntu. That fixed the issue. Even after upgrading the DB I still see the > warning message. > > > Here are the details of my investigation: > > 1. I checked all the write permissions you listed and they were all > correct. > 2. I did not find anything relevant in /var/log/syslog. However, I saw the > following error in /var/log/apache2/error.log (I masked the IP address and > port with *): Call to undefined function mb_detect_encoding() > > [:error] [pid 3726] [client *.*.*.*:*] PHP Fatal error: Uncaught Error: > Call to undefined function mb_detect_encoding() in > /var/www/CDashRoot/include/common.php:139\nStack trace:\n#0 > /var/www/CDashRoot/include/common.php(324): XMLStrFormat('css/cdash.css')\n#1 > /var/www/CDashRoot/include/common.php(1838): add_XML_value('cssfile', > 'css/cdash.css')\n#2 /var/www/CDashRoot/include/login_functions.php(383): > begin_XML_for_XSLT()\n#3 /var/www/CDashRoot/public/login.php(61): > LoginForm('')\n#4 /var/www/CDashRoot/public/user.php(20): > include('/var/www/CDashR...')\n#5 {main}\n thrown in > /var/www/CDashRoot/include/common.php on line 139, referer: http:// > *.*/CDash/viewProjects.php > > Using grep in /var/www/CDashRoot for mb_detect_encoding gave the following > result: > $ find . -name '*' -print0 | xargs -r -0 grep -n mb_detect_encoding | less > > Binary file ./composer.phar matches > ./public/install.php:50:if (function_exists('mb_detect_encoding') === > false) { > ./include/common.php:139: if (mb_detect_encoding($str, 'UTF-8', true) > === false) { > ./include/common.php:2072: if (function_exists('mb_detect_encoding') > && > ./include/common.php:2073: mb_detect_encoding($value, 'UTF-8', > true) === false > > Searching around, I found that this php function is provided by the > php-mbstring package, which was not installed on my Ubuntu machine. > > 3. I installed the php-mbstring package and restarted apache2. > 4. I went back the CDash main page and was able to login as administrator! > I was able to go the maintenance page and clicked on the push button at the > bottom "Upgrade CDash" . Now the CDash maintenance page says: > *Current CDash database schema: *2.5 > Upgrading tables: > Applying 2.6 patches: > > > > *CDash Upgrade Successful.* > 5. However, if I go back again the CDash homepage, I have the same red > message: "The current database schema doesn't match the version of CDash > you are running, upgrade your database structure in the > Administration/CDash maintenance panel of CDash" > > Of course the weird thing is I installed 2.4.0 but the maintenance page > says current schema 2.5 and there is also this line "Applying 2.6 patches". > Each time a different version number. That could explain why I am still > seeing this message. I did not find anything new the apache2 log this time. > Any idea? > > > Best, > > -- > Fran?ois Bertel > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Sat Jul 22 21:52:26 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Sat, 22 Jul 2017 17:52:26 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hello, With the hope of solving the DB upgrade issue, I changed strategy by moving from version to version instead of jumping directly from 2.0.2 to 2.4.0. Therefore I am trying first to upgrade from 2.0.2 to 2.2.2. I used the git repo and checked out the Release-2-2-2 tag as the link from the wiki ( http://public.kitware.com/Wiki/CDash:Installation#Previous_versions_of_CDash) to CDash-2.2.0.zip is not a valid link: http://www.cdash.org/download/CDash-2.0.2.zip First, I moved back to 2.0.2 (stopped apache, restored my saved DB, change the CDash symlink to point back to CDash-2.0.2 and restarted apache). CDash 2.0.2 is working fine, I can see some old submissions and my subprojects are listed properly. Then I attempted to move to 2.2.2. The CDash link opened properly with the message about the DB being from a previous version. I was able to log as admin and started performing the DB upgrade. At this point I got the following error message on the admin page in red: "Your rss directory is not writable, make sure that the web process can write into the directory." I checked that the CDash-2.2.2 hierarchy is entirely owned by the user www-data user and the group www-data. The www-data user has read and write access to the entire hierarchy. I don't see any rss directory in the hierarchy anyway. Where should I look for this rss directory? Best, -- Fran?ois Bertel On Thu, Jul 13, 2017 at 9:40 PM, Fran?ois Bertel wrote: > I don't think I have a valid state yet: > > The main CDash page lists 0 project. Then if I click on "My CDash" in the > upper left corner, a new page open where my project is listed but as soon > as I click on it, it is an empty project page with a line that says > "Feed::GetFeed(): 0 not set". > > There is some messages in /var/log/apache2/error.log > > PHP Notice: Undefined index: sharelabelfilters in > /var/www/CDashRoot/models/project.php on line 435, referer: > http://myserver.home/CDash/index.php?project=MyProject > PHP Warning: array_merge(): Argument #2 is not an array in > /var/www/CDashRoot/public/api/v1/index.php on line 451, referer: > http://myserver.home/CDash/index.php?project=MyProject > PHP Warning: Invalid argument supplied for foreach() in > /var/www/CDashRoot/public/api/v1/index.php on line 493, referer: > http://myserver.home/CDash/index.php?project=MyProject > PHP Warning: Invalid argument supplied for foreach() in > /var/www/CDashRoot/public/ajax/getfeed.php on line 101, referer: > http://myserver.home/CDash/index.php?project=MyProject > > On Thu, Jul 13, 2017 at 9:27 PM, Fran?ois Bertel > wrote: > >> Hi Zack, >> >> I figured out that the php-mbstring package was not installed on my >> Ubuntu. That fixed the issue. Even after upgrading the DB I still see the >> warning message. >> >> >> Here are the details of my investigation: >> >> 1. I checked all the write permissions you listed and they were all >> correct. >> 2. I did not find anything relevant in /var/log/syslog. However, I saw >> the following error in /var/log/apache2/error.log (I masked the IP address >> and port with *): Call to undefined function mb_detect_encoding() >> >> [:error] [pid 3726] [client *.*.*.*:*] PHP Fatal error: Uncaught Error: >> Call to undefined function mb_detect_encoding() in >> /var/www/CDashRoot/include/common.php:139\nStack trace:\n#0 >> /var/www/CDashRoot/include/common.php(324): >> XMLStrFormat('css/cdash.css')\n#1 /var/www/CDashRoot/include/common.php(1838): >> add_XML_value('cssfile', 'css/cdash.css')\n#2 /var/www/CDashRoot/include/login_functions.php(383): >> begin_XML_for_XSLT()\n#3 /var/www/CDashRoot/public/login.php(61): >> LoginForm('')\n#4 /var/www/CDashRoot/public/user.php(20): >> include('/var/www/CDashR...')\n#5 {main}\n thrown in >> /var/www/CDashRoot/include/common.php on line 139, referer: http:// >> *.*/CDash/viewProjects.php >> >> Using grep in /var/www/CDashRoot for mb_detect_encoding gave the >> following result: >> $ find . -name '*' -print0 | xargs -r -0 grep -n mb_detect_encoding | less >> >> Binary file ./composer.phar matches >> ./public/install.php:50:if (function_exists('mb_detect_encoding') === >> false) { >> ./include/common.php:139: if (mb_detect_encoding($str, 'UTF-8', true) >> === false) { >> ./include/common.php:2072: if (function_exists('mb_detect_encoding') >> && >> ./include/common.php:2073: mb_detect_encoding($value, >> 'UTF-8', true) === false >> >> Searching around, I found that this php function is provided by the >> php-mbstring package, which was not installed on my Ubuntu machine. >> >> 3. I installed the php-mbstring package and restarted apache2. >> 4. I went back the CDash main page and was able to login as >> administrator! I was able to go the maintenance page and clicked on the >> push button at the bottom "Upgrade CDash" . Now the CDash maintenance page >> says: >> *Current CDash database schema: *2.5 >> Upgrading tables: >> Applying 2.6 patches: >> >> >> >> *CDash Upgrade Successful.* >> 5. However, if I go back again the CDash homepage, I have the same red >> message: "The current database schema doesn't match the version of CDash >> you are running, upgrade your database structure in the >> Administration/CDash maintenance panel of CDash" >> >> Of course the weird thing is I installed 2.4.0 but the maintenance page >> says current schema 2.5 and there is also this line "Applying 2.6 patches". >> Each time a different version number. That could explain why I am still >> seeing this message. I did not find anything new the apache2 log this time. >> Any idea? >> >> >> Best, >> >> -- >> Fran?ois Bertel >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Mon Jul 24 15:27:03 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Mon, 24 Jul 2017 11:27:03 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Sat, Jul 22, 2017 at 5:52 PM, Fran?ois Bertel wrote: > Where should I look for this rss directory? > Depending on the version of CDash you have, it will either be CDash/rss or CDash/public/rss. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Wed Jul 26 00:45:37 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Tue, 25 Jul 2017 20:45:37 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, Note that the rss directory does not exist after "git checkout Release-2-2-2". I had to add it manually as CDash/rss. I have a new error when I click on the "Upgrade Cdash" button: I can see "Upgrading tables:" with the green check icon and the line below with the spinning wheel icon and "Applying 2.2 patches..." but a modal dialog with the following message pops up: "error Internal Server Error [OK]" When I close it, I still see the spinning wheel and it gets stuck there. I have the following error message in /var/log/apache2/error.log: PHP Fatal error: Uncaught Error: Call to a member function fetch() on boolean in /var/www/CDash-2.2.2/cdash/pdocore.php:140\nStack trace:\n#0 /var/www/CDash-2.2.2/upgrade.php(881): pdo_fetch_array(false)\n#1 {main}\n thrown in /var/www/CDash-2.2.2/cdash/pdocore.php on line 140, referer: http://myserver.home/CDash/upgrade.php Note that the symlink in /var/www is CDash -> CDash-2.2.2 Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Wed Jul 26 13:30:36 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Wed, 26 Jul 2017 09:30:36 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Tue, Jul 25, 2017 at 8:45 PM, Fran?ois Bertel wrote: > I have a new error when I click on the "Upgrade Cdash" button: I can see > "Upgrading tables:" with the green check icon and the line below with > the spinning wheel icon and "Applying 2.2 patches..." but a modal dialog > with the following message pops up: > "error Internal Server Error > [OK]" > > When I close it, I still see the spinning wheel and it gets stuck there. > > I have the following error message in /var/log/apache2/error.log: > > Call to a member function fetch() on boolean in pdocore.php > This error typically means you don't have a database connection. Instead of trying to fetch results from an active DB connection, it's trying to fetch them from FALSE (the error return value). Since you got this far, I assume that CDash can normally connect to the database, and somehow the connection slipped during the upgrade process. Looking at the v2.2 upgrade path , it doesn't seem like it's doing anything that should strain your database too hard. The only thing that isn't completely routine is the while() loop over buildupdate::buildid. This is just a guess, but you could try running this query manually: SELECT buildid FROM buildupdate If this returns something crazy like millions of rows, then perhaps that's the problem here. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Wed Jul 26 22:01:52 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Wed, 26 Jul 2017 18:01:52 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, The output is empty: $ sudo -u mypostgresuser psql cdash mypostgresuser cdash=# \conninfo You are connected to database "cdash" as user "mypostgresuser" via socket in "/var/run/postgresql" at port "5432". cdash=# SELECT buildin FROM buildupdate I also tried build2update instead buildupdate (is it a typo?) but this gives the same empty line. Note that the section in github that you are pointing at is the master branch. I compared it with the Release-2-2-2 tag: I don't see much difference besides styling/formatting with some extra whitespaces added to master, notably at the pdo_query() line. master: pdo_query("INSERT INTO build2update (buildid,updateid) VALUES ('" . $query_array['buildid'] . "','" . $query_array['buildid'] . "')"); Release-2-2-2: pdo_query("INSERT INTO build2update (buildid,updateid) VALUES ('".$query_array['buildid']."','".$query_array['buildid']."')"); On Wed, Jul 26, 2017 at 9:30 AM, Zack Galbreath wrote: > On Tue, Jul 25, 2017 at 8:45 PM, Fran?ois Bertel > wrote: > >> I have a new error when I click on the "Upgrade Cdash" button: I can see >> "Upgrading tables:" with the green check icon and the line below with >> the spinning wheel icon and "Applying 2.2 patches..." but a modal dialog >> with the following message pops up: >> "error Internal Server Error >> [OK]" >> >> When I close it, I still see the spinning wheel and it gets stuck there. >> >> I have the following error message in /var/log/apache2/error.log: >> >> Call to a member function fetch() on boolean in pdocore.php >> > > This error typically means you don't have a database connection. Instead > of trying to fetch results from an active DB connection, it's trying to > fetch them from FALSE (the error return value). Since you got this far, I > assume that CDash can normally connect to the database, and somehow the > connection slipped during the upgrade process. > > Looking at the v2.2 upgrade path > , > it doesn't seem like it's doing anything that should strain your database > too hard. The only thing that isn't completely routine is the while() loop > over buildupdate::buildid. This is just a guess, but you could try running > this query manually: > > SELECT buildid FROM buildupdate > > If this returns something crazy like millions of rows, then perhaps that's > the problem here. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Thu Jul 27 13:54:51 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Thu, 27 Jul 2017 09:54:51 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Wed, Jul 26, 2017 at 6:01 PM, Fran?ois Bertel wrote: > Hi Zack, > > The output is empty: > > $ sudo -u mypostgresuser psql cdash mypostgresuser > cdash=# \conninfo > You are connected to database "cdash" as user "mypostgresuser" via socket > in "/var/run/postgresql" at port "5432". > cdash=# SELECT buildin FROM buildupdate > > I also tried build2update instead buildupdate (is it a typo?) but this > gives the same empty line. > > Note that the section in github that you are pointing at is the master > branch. I compared it with the Release-2-2-2 tag: I don't see much > difference besides styling/formatting with some extra whitespaces added to > master, notably at the pdo_query() line. > > master: > pdo_query("INSERT INTO build2update (buildid,updateid) VALUES ('" . > $query_array['buildid'] . "','" . $query_array['buildid'] . "')"); > Release-2-2-2: > pdo_query("INSERT INTO build2update (buildid,updateid) VALUES > ('".$query_array['buildid']."','".$query_array['buildid']."')"); > Great, sounds like that section worked then. The idea behind this upgrade step was to remove the "buildid" column from the "buildupdate" table and store this info in "build2update" instead. Still, I'm not sure why the upgrade step errored out for you. Maybe try clicking the "Upgrade CDash" button again to see if this behavior repeats itself? -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Fri Jul 28 03:40:22 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Thu, 27 Jul 2017 23:40:22 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, I clicked on "Upgrade CDash" again but I got the same behavior and the same error message in /var/log/apache2/error.log. As I used CDash 2.2.2 from a git clone/git checkout Release-2-2-2, is there anything first to run or build inside the git repo maybe? Could it be different from the CDash-2.2.2.zip archive? (which, again, is not available for download). For example, the rss directory was missing maybe something else is missing in a fresh repo? Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Sun Jul 9 04:54:46 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Sun, 9 Jul 2017 00:54:46 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 Message-ID: Hello, I am currently running CDash 2.0.2 and I would like to upgrade to 2.4.0. I am using Ubuntu 17.04 with postgresql 9.6.3. I have some questions about steps 5,6,7 as well as the new "public" hierarchy and the required "public" symlink. Side note: https://www.cdash.org/download/ is still saying that 2.2.3 is the current stable release but I downloaded CDash-2.4.0.zip from the wiki: http://public.kitware.com/Wiki/File:CDash-2-4-0.zip I extracted the archive in my home directory at: ~/install/cdash/cdash-2.4.0 therefore the root directory is at: ~/install/cdash/cdash-2.4.0/CDash I see that composer.phar is already part of the archive, I assume that I don't have to apply step 5 of the upgrade, correct? https://public.kitware.com/Wiki/CDash:Upgrade#Upgrading_CDash "step 5: Download composer (if you haven't already) and run php composer.phar install --no-dev --optimize-autoloader." Same question for step 6 (npm install) and 7 (gulp). Are they just here for people using git instead or are they mandatory when using the zip archive as well? If I need to follow step 6, where do I run "npm install" from? Is is from ~/install/cdash/cdash-2.4.0/CDash for me? (Note that I installed the Ubuntu packages for composer and npm, the composer package does not provide a composer.phar but /usr/bin/composer instead). Last question, where do I setup the symlink to public and do I have to do it? To help you answer my question, here are some details about my current 2.0.2 setup: The 2.0.2 is extracted here: ~/install/cdash/CDash-2-0-2 where I have a custom config file in ./cdash/config.local.php Therefore I will copy my config.local.php to ~/install/cdash/cdash-2.4.0/CDash/config/ , right? My /var/www looks like this: drwxr-xr-x 4 root root 152 Apr 27 2014 ./ drwxr-xr-x 16 root root 432 Apr 21 2016 ../ drwx------ 17 www-data www-data 4912 Apr 26 2016 CDash/ drwxr-xr-x 2 root root 48 Apr 3 2014 html/ -rw-r--r-- 1 root root 177 Oct 19 2013 index.html -rw------- 1 www-data www-data 20 Mar 2 2012 test.php In /etc/apache2/, ./sites-enabled/default-ssl.conf and ./sites-enabled/000-default.conf are symlink to files in ./sites.available both having DocumentRoot pointing to /var/www ./conf-enabled/cdash.conf is a symlink to ./conf-available/cdash.conf which is just: Order allow,deny Allow from all Therefore, I will change it to: Order allow,deny Allow from all right? Or is it where I should use "public" instead with the following statement (and not use a symlink) ? Order allow,deny Allow from all Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Mon Jul 10 17:37:09 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Mon, 10 Jul 2017 13:37:09 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hey Francois, On Sun, Jul 9, 2017 at 12:54 AM, Fran?ois Bertel wrote: > I see that composer.phar is already part of the archive, I assume that I > don't > have to apply step 5 of the upgrade, correct? > > https://public.kitware.com/Wiki/CDash:Upgrade#Upgrading_CDash > > "step 5: Download composer (if you haven't already) and run php > composer.phar install --no-dev --optimize-autoloader." > > Same question for step 6 (npm install) and 7 (gulp). Are they just here > for people using git instead or are they mandatory when using the zip > archive as well? > > If I need to follow step 6, where do I run "npm install" from? Is is from > ~/install/cdash/cdash-2.4.0/CDash for me? > > (Note that I installed the Ubuntu packages for composer and npm, the > composer package does not provide a composer.phar but /usr/bin/composer > instead). > I just unpacked CDash-2-4-0.zip to refresh my memory. Long story short, if you are using a release (or the "prebuilt" git branch) you do not have to run composer, npm, or gulp. To clarify, let me briefly explain what these tools are used for. Composer downloads PHP dependencies. Its output lives in the "vendor" subdirectory. npm downloads Javascript dependencies. It places its output in node_modules. gulp is essentially a build step that squashes together all of our .js files and performs some cache busting. It generates public/js/CDash*.js and public/build/. All of these contents are already present in the release zip, so you don't have to generate them yourself. > Last question, where do I setup the symlink to public and do I have to do > it? > The motivating concept here is that you only want to expose the "public" subdirectory to the web. To help you answer my question, here are some details about my current > 2.0.2 setup: > > The 2.0.2 is extracted here: > ~/install/cdash/CDash-2-0-2 where I have a custom config file in > ./cdash/config.local.php > > Therefore I will copy my config.local.php to ~/install/cdash/cdash-2.4.0/CDash/config/ > , right? > That sounds right to me. In general, I recommend that config.local.php contains only the lines that have been changed from the default, rather than a full copy/paste of config.php. But this is mostly an issue of housekeeping / tidiness. > My /var/www looks like this: > drwxr-xr-x 4 root root 152 Apr 27 2014 ./ > drwxr-xr-x 16 root root 432 Apr 21 2016 ../ > drwx------ 17 www-data www-data 4912 Apr 26 2016 CDash/ > drwxr-xr-x 2 root root 48 Apr 3 2014 html/ > -rw-r--r-- 1 root root 177 Oct 19 2013 index.html > -rw------- 1 www-data www-data 20 Mar 2 2012 test.php > > In /etc/apache2/, > > ./sites-enabled/default-ssl.conf and ./sites-enabled/000-default.conf > are symlink to files in ./sites.available both having DocumentRoot pointing > to /var/www > > ./conf-enabled/cdash.conf is a symlink to ./conf-available/cdash.conf > which is just: > > Order allow,deny > Allow from all > > > Therefore, I will change it to: > > Order allow,deny > Allow from all > > > right? Or is it where I should use "public" instead with the following > statement > (and not use a symlink) ? > > > Order allow,deny > Allow from all > > Unless I'm missing something, these elements are only defining permissions, ie whether or not people are allowed to view the files in these directories. Since your DocumentRoot is /var/www, I recommend making a symbolic link (/var/www/CDash or so) to /home/fbertel/install/cdash/ cdash-2.4.0/CDash/public. Please let us know if you need any more help getting this set up correctly. -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Mon Jul 10 17:45:52 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Mon, 10 Jul 2017 13:45:52 -0400 Subject: [CDash] How to connect with Perforce Server? In-Reply-To: <576b2ed1-b5ce-e330-2b70-134816a7ce41@exch.dwd.de> References: <576b2ed1-b5ce-e330-2b70-134816a7ce41@exch.dwd.de> Message-ID: On Mon, Jun 26, 2017 at 4:33 AM, Nils Rathmann wrote: > Hi, > since P4Web is deprecated and no longer supported by Perforce, how should > I connect to a Perforce Server? Partially, the P4Web functionality seems > to be covered by Perforce Helix Swarm. I found an old version of P4Web and > could try to use it, even with my up-to-date Perforce Server. > > What is the latest practice to connect with Perforce? > I'm not entirely sure, I haven't had much experience with Perforce lately. But after reading over this blog post , I think you are correct that Helix Swarm is meant as a replacement for p4web. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Wed Jul 12 02:59:16 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Tue, 11 Jul 2017 22:59:16 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, Thanks for the explanation. I was confused about my old setup (I have not dug into it for years). My 2.0.2 setup is actually only involving /var/www/CDash, everything is there, including the minimal config.local.php. Forget everything I said about whatever is in my home directory, this was my first try a long time ago. Unfortunately, I am not able to log as administrator in the new CDash (step 10 below) Now here is what I did to move to 2.4.0: 1. Stop apache2: sudo systemctl stop apache2 2. Save the CDash DB: sudo -u postgres pg_dump -U postgres cdash > cdashbackup.sql 3. Move the old cdash: cd /var/www ; mv CDash CDashOld 4. unpack cdash 2.4.0 at /var/www/CDashRoot, making sure the owner and group are www-data recursively (to match the values in /etc/apache2/envvars APACHE_RUN_USER and APACHE_RUN_GROUP) 5. Copy the old minimal /var/www/CDashOld/cdash/config.local.php into /var/www/CDashRoot/config/ 6. Create a symlink /var/www/CDash->/var/www/CDashRoot/public 7. Restart apache2: sudo systemctl start apache2 8. Open the CDash home page, which redirects to CDash/viewProjects.php (by the way, the open page says 2.5.0 not 2.4.0) 9. As documented on the wiki, I have the page with the warning message:The current database schema doesn't match the version of CDash you are running, upgrade your database structure in the Administration/CDash maintenance panel of CDash. So far so good. 10. I click on "Login" in the upper left corner to be able to log as administrator, which redirects to CDash/user.php but this is a totally empty page so I cannot proceed further as I cannot even log in as administrator... What am I missing here? Best, -- Fran?ois Bertel On Sun, Jul 9, 2017 at 12:54 AM, Fran?ois Bertel wrote: > Hello, > > I am currently running CDash 2.0.2 and I would like to upgrade to 2.4.0. > I am using Ubuntu 17.04 with postgresql 9.6.3. > > I have some questions about steps 5,6,7 as well as the new "public" > hierarchy and > the required "public" symlink. > > Side note: https://www.cdash.org/download/ is still saying that 2.2.3 is > the > current stable release but I downloaded CDash-2.4.0.zip from the wiki: > http://public.kitware.com/Wiki/File:CDash-2-4-0.zip > > I extracted the archive in my home directory at: > > ~/install/cdash/cdash-2.4.0 > > therefore the root directory is at: ~/install/cdash/cdash-2.4.0/CDash > > I see that composer.phar is already part of the archive, I assume that I > don't > have to apply step 5 of the upgrade, correct? > > https://public.kitware.com/Wiki/CDash:Upgrade#Upgrading_CDash > > "step 5: Download composer (if you haven't already) and run php > composer.phar install --no-dev --optimize-autoloader." > > Same question for step 6 (npm install) and 7 (gulp). Are they just here > for people using git instead or are they mandatory when using the zip > archive as well? > > If I need to follow step 6, where do I run "npm install" from? Is is from > ~/install/cdash/cdash-2.4.0/CDash for me? > > (Note that I installed the Ubuntu packages for composer and npm, the > composer package does not provide a composer.phar but /usr/bin/composer > instead). > > Last question, where do I setup the symlink to public and do I have to do > it? To help you answer my question, here are some details about my current > 2.0.2 setup: > > The 2.0.2 is extracted here: > ~/install/cdash/CDash-2-0-2 where I have a custom config file in > ./cdash/config.local.php > > Therefore I will copy my config.local.php to ~/install/cdash/cdash-2.4.0/CDash/config/ > , right? > > My /var/www looks like this: > drwxr-xr-x 4 root root 152 Apr 27 2014 ./ > drwxr-xr-x 16 root root 432 Apr 21 2016 ../ > drwx------ 17 www-data www-data 4912 Apr 26 2016 CDash/ > drwxr-xr-x 2 root root 48 Apr 3 2014 html/ > -rw-r--r-- 1 root root 177 Oct 19 2013 index.html > -rw------- 1 www-data www-data 20 Mar 2 2012 test.php > > In /etc/apache2/, > > ./sites-enabled/default-ssl.conf and ./sites-enabled/000-default.conf > are symlink to files in ./sites.available both having DocumentRoot pointing > to /var/www > > ./conf-enabled/cdash.conf is a symlink to ./conf-available/cdash.conf > which is just: > > Order allow,deny > Allow from all > > > Therefore, I will change it to: > > Order allow,deny > Allow from all > > > right? Or is it where I should use "public" instead with the following > statement > (and not use a symlink) ? > > > Order allow,deny > Allow from all > > > Best, > > -- > Fran?ois Bertel > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Thu Jul 13 14:39:58 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Thu, 13 Jul 2017 10:39:58 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Tue, Jul 11, 2017 at 10:59 PM, Fran?ois Bertel wrote: > I click on "Login" in the upper left corner to be able to log as > administrator, which redirects to CDash/user.php but this is a totally > empty page so I cannot proceed further as I cannot even log in as > administrator... What am I missing here? > Hmm, that's odd. My hunch is that the server is throwing an error. Could you check the logs? I think that by default PHP logs its errors in /var/log/syslog. One thing that might be going wrong is permissions. The user running your web server (typically apache or www-data) needs to have write permissions to the following subdirectories: backup, log, public/rss, and public/upload. CDash typically lets you know when these permissions are lacking, but I figured I'd mention it here anyway. Another thing that might be worth trying is installing CDash in an empty database. If you create a new postgres database and point CDash at it (via config.local.php), the install script will handle creating all the tables & such for you. Of course, this solution might not be viable for you if there is information in your old CDash database that you'd like to keep. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Fri Jul 14 01:27:18 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Thu, 13 Jul 2017 21:27:18 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, I figured out that the php-mbstring package was not installed on my Ubuntu. That fixed the issue. Even after upgrading the DB I still see the warning message. Here are the details of my investigation: 1. I checked all the write permissions you listed and they were all correct. 2. I did not find anything relevant in /var/log/syslog. However, I saw the following error in /var/log/apache2/error.log (I masked the IP address and port with *): Call to undefined function mb_detect_encoding() [:error] [pid 3726] [client *.*.*.*:*] PHP Fatal error: Uncaught Error: Call to undefined function mb_detect_encoding() in /var/www/CDashRoot/include/common.php:139\nStack trace:\n#0 /var/www/CDashRoot/include/common.php(324): XMLStrFormat('css/cdash.css')\n#1 /var/www/CDashRoot/include/common.php(1838): add_XML_value('cssfile', 'css/cdash.css')\n#2 /var/www/CDashRoot/include/login_functions.php(383): begin_XML_for_XSLT()\n#3 /var/www/CDashRoot/public/login.php(61): LoginForm('')\n#4 /var/www/CDashRoot/public/user.php(20): include('/var/www/CDashR...')\n#5 {main}\n thrown in /var/www/CDashRoot/include/common.php on line 139, referer: http:// *.*/CDash/viewProjects.php Using grep in /var/www/CDashRoot for mb_detect_encoding gave the following result: $ find . -name '*' -print0 | xargs -r -0 grep -n mb_detect_encoding | less Binary file ./composer.phar matches ./public/install.php:50:if (function_exists('mb_detect_encoding') === false) { ./include/common.php:139: if (mb_detect_encoding($str, 'UTF-8', true) === false) { ./include/common.php:2072: if (function_exists('mb_detect_encoding') && ./include/common.php:2073: mb_detect_encoding($value, 'UTF-8', true) === false Searching around, I found that this php function is provided by the php-mbstring package, which was not installed on my Ubuntu machine. 3. I installed the php-mbstring package and restarted apache2. 4. I went back the CDash main page and was able to login as administrator! I was able to go the maintenance page and clicked on the push button at the bottom "Upgrade CDash" . Now the CDash maintenance page says: *Current CDash database schema: *2.5 Upgrading tables: Applying 2.6 patches: *CDash Upgrade Successful.* 5. However, if I go back again the CDash homepage, I have the same red message: "The current database schema doesn't match the version of CDash you are running, upgrade your database structure in the Administration/CDash maintenance panel of CDash" Of course the weird thing is I installed 2.4.0 but the maintenance page says current schema 2.5 and there is also this line "Applying 2.6 patches". Each time a different version number. That could explain why I am still seeing this message. I did not find anything new the apache2 log this time. Any idea? Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Fri Jul 14 01:40:30 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Thu, 13 Jul 2017 21:40:30 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: I don't think I have a valid state yet: The main CDash page lists 0 project. Then if I click on "My CDash" in the upper left corner, a new page open where my project is listed but as soon as I click on it, it is an empty project page with a line that says "Feed::GetFeed(): 0 not set". There is some messages in /var/log/apache2/error.log PHP Notice: Undefined index: sharelabelfilters in /var/www/CDashRoot/models/project.php on line 435, referer: http://myserver.home/CDash/index.php?project=MyProject PHP Warning: array_merge(): Argument #2 is not an array in /var/www/CDashRoot/public/api/v1/index.php on line 451, referer: http://myserver.home/CDash/index.php?project=MyProject PHP Warning: Invalid argument supplied for foreach() in /var/www/CDashRoot/public/api/v1/index.php on line 493, referer: http://myserver.home/CDash/index.php?project=MyProject PHP Warning: Invalid argument supplied for foreach() in /var/www/CDashRoot/public/ajax/getfeed.php on line 101, referer: http://myserver.home/CDash/index.php?project=MyProject On Thu, Jul 13, 2017 at 9:27 PM, Fran?ois Bertel wrote: > Hi Zack, > > I figured out that the php-mbstring package was not installed on my > Ubuntu. That fixed the issue. Even after upgrading the DB I still see the > warning message. > > > Here are the details of my investigation: > > 1. I checked all the write permissions you listed and they were all > correct. > 2. I did not find anything relevant in /var/log/syslog. However, I saw the > following error in /var/log/apache2/error.log (I masked the IP address and > port with *): Call to undefined function mb_detect_encoding() > > [:error] [pid 3726] [client *.*.*.*:*] PHP Fatal error: Uncaught Error: > Call to undefined function mb_detect_encoding() in > /var/www/CDashRoot/include/common.php:139\nStack trace:\n#0 > /var/www/CDashRoot/include/common.php(324): XMLStrFormat('css/cdash.css')\n#1 > /var/www/CDashRoot/include/common.php(1838): add_XML_value('cssfile', > 'css/cdash.css')\n#2 /var/www/CDashRoot/include/login_functions.php(383): > begin_XML_for_XSLT()\n#3 /var/www/CDashRoot/public/login.php(61): > LoginForm('')\n#4 /var/www/CDashRoot/public/user.php(20): > include('/var/www/CDashR...')\n#5 {main}\n thrown in > /var/www/CDashRoot/include/common.php on line 139, referer: http:// > *.*/CDash/viewProjects.php > > Using grep in /var/www/CDashRoot for mb_detect_encoding gave the following > result: > $ find . -name '*' -print0 | xargs -r -0 grep -n mb_detect_encoding | less > > Binary file ./composer.phar matches > ./public/install.php:50:if (function_exists('mb_detect_encoding') === > false) { > ./include/common.php:139: if (mb_detect_encoding($str, 'UTF-8', true) > === false) { > ./include/common.php:2072: if (function_exists('mb_detect_encoding') > && > ./include/common.php:2073: mb_detect_encoding($value, 'UTF-8', > true) === false > > Searching around, I found that this php function is provided by the > php-mbstring package, which was not installed on my Ubuntu machine. > > 3. I installed the php-mbstring package and restarted apache2. > 4. I went back the CDash main page and was able to login as administrator! > I was able to go the maintenance page and clicked on the push button at the > bottom "Upgrade CDash" . Now the CDash maintenance page says: > *Current CDash database schema: *2.5 > Upgrading tables: > Applying 2.6 patches: > > > > *CDash Upgrade Successful.* > 5. However, if I go back again the CDash homepage, I have the same red > message: "The current database schema doesn't match the version of CDash > you are running, upgrade your database structure in the > Administration/CDash maintenance panel of CDash" > > Of course the weird thing is I installed 2.4.0 but the maintenance page > says current schema 2.5 and there is also this line "Applying 2.6 patches". > Each time a different version number. That could explain why I am still > seeing this message. I did not find anything new the apache2 log this time. > Any idea? > > > Best, > > -- > Fran?ois Bertel > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Sat Jul 22 21:52:26 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Sat, 22 Jul 2017 17:52:26 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hello, With the hope of solving the DB upgrade issue, I changed strategy by moving from version to version instead of jumping directly from 2.0.2 to 2.4.0. Therefore I am trying first to upgrade from 2.0.2 to 2.2.2. I used the git repo and checked out the Release-2-2-2 tag as the link from the wiki ( http://public.kitware.com/Wiki/CDash:Installation#Previous_versions_of_CDash) to CDash-2.2.0.zip is not a valid link: http://www.cdash.org/download/CDash-2.0.2.zip First, I moved back to 2.0.2 (stopped apache, restored my saved DB, change the CDash symlink to point back to CDash-2.0.2 and restarted apache). CDash 2.0.2 is working fine, I can see some old submissions and my subprojects are listed properly. Then I attempted to move to 2.2.2. The CDash link opened properly with the message about the DB being from a previous version. I was able to log as admin and started performing the DB upgrade. At this point I got the following error message on the admin page in red: "Your rss directory is not writable, make sure that the web process can write into the directory." I checked that the CDash-2.2.2 hierarchy is entirely owned by the user www-data user and the group www-data. The www-data user has read and write access to the entire hierarchy. I don't see any rss directory in the hierarchy anyway. Where should I look for this rss directory? Best, -- Fran?ois Bertel On Thu, Jul 13, 2017 at 9:40 PM, Fran?ois Bertel wrote: > I don't think I have a valid state yet: > > The main CDash page lists 0 project. Then if I click on "My CDash" in the > upper left corner, a new page open where my project is listed but as soon > as I click on it, it is an empty project page with a line that says > "Feed::GetFeed(): 0 not set". > > There is some messages in /var/log/apache2/error.log > > PHP Notice: Undefined index: sharelabelfilters in > /var/www/CDashRoot/models/project.php on line 435, referer: > http://myserver.home/CDash/index.php?project=MyProject > PHP Warning: array_merge(): Argument #2 is not an array in > /var/www/CDashRoot/public/api/v1/index.php on line 451, referer: > http://myserver.home/CDash/index.php?project=MyProject > PHP Warning: Invalid argument supplied for foreach() in > /var/www/CDashRoot/public/api/v1/index.php on line 493, referer: > http://myserver.home/CDash/index.php?project=MyProject > PHP Warning: Invalid argument supplied for foreach() in > /var/www/CDashRoot/public/ajax/getfeed.php on line 101, referer: > http://myserver.home/CDash/index.php?project=MyProject > > On Thu, Jul 13, 2017 at 9:27 PM, Fran?ois Bertel > wrote: > >> Hi Zack, >> >> I figured out that the php-mbstring package was not installed on my >> Ubuntu. That fixed the issue. Even after upgrading the DB I still see the >> warning message. >> >> >> Here are the details of my investigation: >> >> 1. I checked all the write permissions you listed and they were all >> correct. >> 2. I did not find anything relevant in /var/log/syslog. However, I saw >> the following error in /var/log/apache2/error.log (I masked the IP address >> and port with *): Call to undefined function mb_detect_encoding() >> >> [:error] [pid 3726] [client *.*.*.*:*] PHP Fatal error: Uncaught Error: >> Call to undefined function mb_detect_encoding() in >> /var/www/CDashRoot/include/common.php:139\nStack trace:\n#0 >> /var/www/CDashRoot/include/common.php(324): >> XMLStrFormat('css/cdash.css')\n#1 /var/www/CDashRoot/include/common.php(1838): >> add_XML_value('cssfile', 'css/cdash.css')\n#2 /var/www/CDashRoot/include/login_functions.php(383): >> begin_XML_for_XSLT()\n#3 /var/www/CDashRoot/public/login.php(61): >> LoginForm('')\n#4 /var/www/CDashRoot/public/user.php(20): >> include('/var/www/CDashR...')\n#5 {main}\n thrown in >> /var/www/CDashRoot/include/common.php on line 139, referer: http:// >> *.*/CDash/viewProjects.php >> >> Using grep in /var/www/CDashRoot for mb_detect_encoding gave the >> following result: >> $ find . -name '*' -print0 | xargs -r -0 grep -n mb_detect_encoding | less >> >> Binary file ./composer.phar matches >> ./public/install.php:50:if (function_exists('mb_detect_encoding') === >> false) { >> ./include/common.php:139: if (mb_detect_encoding($str, 'UTF-8', true) >> === false) { >> ./include/common.php:2072: if (function_exists('mb_detect_encoding') >> && >> ./include/common.php:2073: mb_detect_encoding($value, >> 'UTF-8', true) === false >> >> Searching around, I found that this php function is provided by the >> php-mbstring package, which was not installed on my Ubuntu machine. >> >> 3. I installed the php-mbstring package and restarted apache2. >> 4. I went back the CDash main page and was able to login as >> administrator! I was able to go the maintenance page and clicked on the >> push button at the bottom "Upgrade CDash" . Now the CDash maintenance page >> says: >> *Current CDash database schema: *2.5 >> Upgrading tables: >> Applying 2.6 patches: >> >> >> >> *CDash Upgrade Successful.* >> 5. However, if I go back again the CDash homepage, I have the same red >> message: "The current database schema doesn't match the version of CDash >> you are running, upgrade your database structure in the >> Administration/CDash maintenance panel of CDash" >> >> Of course the weird thing is I installed 2.4.0 but the maintenance page >> says current schema 2.5 and there is also this line "Applying 2.6 patches". >> Each time a different version number. That could explain why I am still >> seeing this message. I did not find anything new the apache2 log this time. >> Any idea? >> >> >> Best, >> >> -- >> Fran?ois Bertel >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Mon Jul 24 15:27:03 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Mon, 24 Jul 2017 11:27:03 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Sat, Jul 22, 2017 at 5:52 PM, Fran?ois Bertel wrote: > Where should I look for this rss directory? > Depending on the version of CDash you have, it will either be CDash/rss or CDash/public/rss. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Wed Jul 26 00:45:37 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Tue, 25 Jul 2017 20:45:37 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, Note that the rss directory does not exist after "git checkout Release-2-2-2". I had to add it manually as CDash/rss. I have a new error when I click on the "Upgrade Cdash" button: I can see "Upgrading tables:" with the green check icon and the line below with the spinning wheel icon and "Applying 2.2 patches..." but a modal dialog with the following message pops up: "error Internal Server Error [OK]" When I close it, I still see the spinning wheel and it gets stuck there. I have the following error message in /var/log/apache2/error.log: PHP Fatal error: Uncaught Error: Call to a member function fetch() on boolean in /var/www/CDash-2.2.2/cdash/pdocore.php:140\nStack trace:\n#0 /var/www/CDash-2.2.2/upgrade.php(881): pdo_fetch_array(false)\n#1 {main}\n thrown in /var/www/CDash-2.2.2/cdash/pdocore.php on line 140, referer: http://myserver.home/CDash/upgrade.php Note that the symlink in /var/www is CDash -> CDash-2.2.2 Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Wed Jul 26 13:30:36 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Wed, 26 Jul 2017 09:30:36 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Tue, Jul 25, 2017 at 8:45 PM, Fran?ois Bertel wrote: > I have a new error when I click on the "Upgrade Cdash" button: I can see > "Upgrading tables:" with the green check icon and the line below with > the spinning wheel icon and "Applying 2.2 patches..." but a modal dialog > with the following message pops up: > "error Internal Server Error > [OK]" > > When I close it, I still see the spinning wheel and it gets stuck there. > > I have the following error message in /var/log/apache2/error.log: > > Call to a member function fetch() on boolean in pdocore.php > This error typically means you don't have a database connection. Instead of trying to fetch results from an active DB connection, it's trying to fetch them from FALSE (the error return value). Since you got this far, I assume that CDash can normally connect to the database, and somehow the connection slipped during the upgrade process. Looking at the v2.2 upgrade path , it doesn't seem like it's doing anything that should strain your database too hard. The only thing that isn't completely routine is the while() loop over buildupdate::buildid. This is just a guess, but you could try running this query manually: SELECT buildid FROM buildupdate If this returns something crazy like millions of rows, then perhaps that's the problem here. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Wed Jul 26 22:01:52 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Wed, 26 Jul 2017 18:01:52 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, The output is empty: $ sudo -u mypostgresuser psql cdash mypostgresuser cdash=# \conninfo You are connected to database "cdash" as user "mypostgresuser" via socket in "/var/run/postgresql" at port "5432". cdash=# SELECT buildin FROM buildupdate I also tried build2update instead buildupdate (is it a typo?) but this gives the same empty line. Note that the section in github that you are pointing at is the master branch. I compared it with the Release-2-2-2 tag: I don't see much difference besides styling/formatting with some extra whitespaces added to master, notably at the pdo_query() line. master: pdo_query("INSERT INTO build2update (buildid,updateid) VALUES ('" . $query_array['buildid'] . "','" . $query_array['buildid'] . "')"); Release-2-2-2: pdo_query("INSERT INTO build2update (buildid,updateid) VALUES ('".$query_array['buildid']."','".$query_array['buildid']."')"); On Wed, Jul 26, 2017 at 9:30 AM, Zack Galbreath wrote: > On Tue, Jul 25, 2017 at 8:45 PM, Fran?ois Bertel > wrote: > >> I have a new error when I click on the "Upgrade Cdash" button: I can see >> "Upgrading tables:" with the green check icon and the line below with >> the spinning wheel icon and "Applying 2.2 patches..." but a modal dialog >> with the following message pops up: >> "error Internal Server Error >> [OK]" >> >> When I close it, I still see the spinning wheel and it gets stuck there. >> >> I have the following error message in /var/log/apache2/error.log: >> >> Call to a member function fetch() on boolean in pdocore.php >> > > This error typically means you don't have a database connection. Instead > of trying to fetch results from an active DB connection, it's trying to > fetch them from FALSE (the error return value). Since you got this far, I > assume that CDash can normally connect to the database, and somehow the > connection slipped during the upgrade process. > > Looking at the v2.2 upgrade path > , > it doesn't seem like it's doing anything that should strain your database > too hard. The only thing that isn't completely routine is the while() loop > over buildupdate::buildid. This is just a guess, but you could try running > this query manually: > > SELECT buildid FROM buildupdate > > If this returns something crazy like millions of rows, then perhaps that's > the problem here. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zack.galbreath at kitware.com Thu Jul 27 13:54:51 2017 From: zack.galbreath at kitware.com (Zack Galbreath) Date: Thu, 27 Jul 2017 09:54:51 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: On Wed, Jul 26, 2017 at 6:01 PM, Fran?ois Bertel wrote: > Hi Zack, > > The output is empty: > > $ sudo -u mypostgresuser psql cdash mypostgresuser > cdash=# \conninfo > You are connected to database "cdash" as user "mypostgresuser" via socket > in "/var/run/postgresql" at port "5432". > cdash=# SELECT buildin FROM buildupdate > > I also tried build2update instead buildupdate (is it a typo?) but this > gives the same empty line. > > Note that the section in github that you are pointing at is the master > branch. I compared it with the Release-2-2-2 tag: I don't see much > difference besides styling/formatting with some extra whitespaces added to > master, notably at the pdo_query() line. > > master: > pdo_query("INSERT INTO build2update (buildid,updateid) VALUES ('" . > $query_array['buildid'] . "','" . $query_array['buildid'] . "')"); > Release-2-2-2: > pdo_query("INSERT INTO build2update (buildid,updateid) VALUES > ('".$query_array['buildid']."','".$query_array['buildid']."')"); > Great, sounds like that section worked then. The idea behind this upgrade step was to remove the "buildid" column from the "buildupdate" table and store this info in "build2update" instead. Still, I'm not sure why the upgrade step errored out for you. Maybe try clicking the "Upgrade CDash" button again to see if this behavior repeats itself? -------------- next part -------------- An HTML attachment was scrubbed... URL: From fbopensource at gmail.com Fri Jul 28 03:40:22 2017 From: fbopensource at gmail.com (=?UTF-8?Q?Fran=C3=A7ois_Bertel?=) Date: Thu, 27 Jul 2017 23:40:22 -0400 Subject: [CDash] Upgrading from 2.0.2 to 2.4.0 In-Reply-To: References: Message-ID: Hi Zack, I clicked on "Upgrade CDash" again but I got the same behavior and the same error message in /var/log/apache2/error.log. As I used CDash 2.2.2 from a git clone/git checkout Release-2-2-2, is there anything first to run or build inside the git repo maybe? Could it be different from the CDash-2.2.2.zip archive? (which, again, is not available for download). For example, the rss directory was missing maybe something else is missing in a fresh repo? Best, -- Fran?ois Bertel -------------- next part -------------- An HTML attachment was scrubbed... URL: