[2.11~alpha] can not create new packages - with solution (maybe)
Dear OBS Devs, with obs-api-2.11~alpha.20210618T095403.f2091342ed-lp152.12530.1.noarch I can not create new packages in private instance. osc mkpac packageC cd packageC osc commit -m "initial in obs" Sending meta data... Server returned an error: HTTP Error 500: Internal Server Error Request: https://obs/source/home%3Amgoppold/packageC/_meta Headers: Date: Tue, 22 Jun 2021 17:57:32 GMT Server: Apache X-Request-Id: eea5880f-6f48-4bcf-8272-1a19a2d75d10 X-Runtime: 0.084162 X-Powered-By: Phusion Passenger(R) 6.0.8 Content-Length: 131 Status: 500 Internal Server Error Cache-Control: public Connection: close Content-Type: application/xml; charset=utf-8 Update / modifying existing packages works fine. The Error occur on cmdline and WebUI. production.log: I, [2021-06-22T18:14:57.924545 #2200] INFO -- : [d2b6d7f0-81dd-4e23-a4e6-042eb2f2944c] [2200:325.61] method=POST path=/package/create/home:mgoppold format=html controller=Webui::PackageController action=create status=500 error='ThinkingSphinx::SphinxError: index package_core: does not support DELETE (enabled=1) - DELETE FROM package_core WHERE sphinx_internal_id IN (1226)' duration=28.79 view=0.00 db=5.07 params={"authenticity_token"=>"[FILTERED]", "package"=>{"name"=>"packageC", "title"=>"", "description"=>""}, "commit"=>"Create", "project"=>"home:mgoppold"} host=192.168.156.10 time=522.79 backend=0 user=mgoppold *F, [2021-06-22T18:14:57.929467 #2200] FATAL -- : [d2b6d7f0-81dd-4e23-a4e6-042eb2f2944c] [2200:325.62] ** **[d2b6d7f0-81dd-4e23-a4e6-042eb2f2944c] ThinkingSphinx::SphinxError (index package_core: does not support DELETE (enabled=1) - DELETE FROM package_core WHERE sphinx_internal_id IN (1226)):* [d2b6d7f0-81dd-4e23-a4e6-042eb2f2944c] [d2b6d7f0-81dd-4e23-a4e6-042eb2f2944c] app/controllers/webui/package_controller.rb:295:in `create' [d2b6d7f0-81dd-4e23-a4e6-042eb2f2944c] config/initializers/wrap_parameters.rb:37:in `call' After the update, I also did the following: cd /srv/www/obs/api/ RAILS_ENV=production bin/rake migrate_options_yml RAILS_ENV=production bin/rails db:migrate:with_data Now I read the ReleaseNotes-2.11 ( README.SETUP is a broken link ) an do as suggested chroot --userspec=wwwrun:www / /bin/bash -c "cd /srv/www/obs/api/ && /usr/bin/bundle.ruby2.5 exec rails ts:rt:rebuild RAILS_ENV=production" The last one gives: using config file '/srv/www/obs/api/config/production.sphinx.conf'... listening on 127.0.0.1:9314 precaching index 'package_core' precaching index 'project_core' precached 2 indexes in 0.001 sec Started searchd successfully (pid: 3280). Generating index files for package_core rails aborted! ThinkingSphinx::ConnectionError: Error connecting to Sphinx via the MySQL protocol. Can't connect to MySQL server on '127.0.0.1' (115) bin/rails:4:in `require' bin/rails:4:in `<main>' Caused by: Mysql2::Error::ConnectionError: Can't connect to MySQL server on '127.0.0.1' (115) bin/rails:4:in `require' bin/rails:4:in `<main>' Caused by: Innertube::Pool::BadResource: Innertube::Pool::BadResource bin/rails:4:in `require' bin/rails:4:in `<main>' and the error on commit changes to: I, [2021-06-22T18:34:10.840529 #2200] INFO -- : [ecaffcec-eb7a-443f-a4fa-3cd2e1bfc881] [2200:1478.53] method=PUT path=/source/home:mgoppold/packageD/_meta format=xml controller=SourceProjectPackageMetaController action=update status=500 error='ThinkingSphinx::ConnectionError: Error connecting to Sphinx via the MySQL protocol. Can't connect to MySQL server on '127.0.0.1' (115)' duration=73.23 view=0.00 db=5.89 params={"project"=>"home:mgoppold", "package"=>"packageD"} host=172.17.6.27 time=1675.66 backend=0 user=mgoppold *F, [2021-06-22T18:34:10.861620 #2200] FATAL -- : [ecaffcec-eb7a-443f-a4fa-3cd2e1bfc881] [2200:1478.55] ** **[ecaffcec-eb7a-443f-a4fa-3cd2e1bfc881] ThinkingSphinx::ConnectionError (Error connecting to Sphinx via the MySQL protocol. Can't connect to MySQL server on '127.0.0.1' (115)):* [ecaffcec-eb7a-443f-a4fa-3cd2e1bfc881] [ecaffcec-eb7a-443f-a4fa-3cd2e1bfc881] app/models/package.rb:712:in `block in update_from_xml' [ecaffcec-eb7a-443f-a4fa-3cd2e1bfc881] app/models/package.rb:678:in `update_from_xml' [ecaffcec-eb7a-443f-a4fa-3cd2e1bfc881] app/controllers/source_project_package_meta_controller.rb:55:in `update' [ecaffcec-eb7a-443f-a4fa-3cd2e1bfc881] config/initializers/wrap_parameters.rb:37:in `call' That got me in the right direction: configure searchd (sphinx). Because my search "open build service configure searchd sphinx" didn't come up with anything useful I did: cat > /etc/systemd/system/searchd.service.d/override.conf <<EOF[Service] User=wwwrun Group=www EOF ln -sf /srv/www/obs/api/config/production.sphinx.conf /etc/sphinx/sphinx.conf systemctl enable --now searchd.service chroot --userspec=wwwrun:www / /bin/bash -c "cd /srv/www/obs/api/ && /usr/bin/bundle.ruby2.5 exec rails ts:rt:rebuild RAILS_ENV=production" Which solved my problem. Was that all I had to do or should I set up some more? Shouldn't that be in a README or ReleaseNotes-2.11? Best regards, Mario P.S. Thank you for the nice pice of software!
Hey Mario, On 23.06.21 17:55, Mario Goppold wrote:
That got me in the right direction: configure searchd (sphinx). This is not needed. We ship `obs-sphinx.service` in the obs-api package. It's part of the `obs-api-support.target` target that is enabled if you install the package. You can look at the state of this target with
systemctl list-dependencies obs-api-support.target Now why your obs-sphinx was not running, no idea. You will have to investigate this.
P.S. Thank you for the nice pice of software!
Thank you for contributing by reporting this! :-) Henne -- Henne Vogelsang http://www.opensuse.org Everybody has a plan, until they get hit. - Mike Tyson
Ok, after stopping and disabling the searchd.service, the obs-sphinx.service starts as expected. I think the (not done) ts:rt:rebuild was my problem. It's a good idea to read the README and the release notes. Especially if something does not work as expected after an update. Thank you
participants (2)
-
Henne Vogelsang
-
Mario Goppold