taskSavannah Administration - Tasks: task #16101, Python warnings on push and...


task #16101: Python warnings on push and groff-commit list not getting mails

Submitter:  G. Branden Robinson <gbranden>
Submitted:  Mon 27 Dec 2021 09:10:09 AM UTC
Should Start On:  Mon 27 Dec 2021 12:00:00 AM UTC Should be Finished on:  Mon 27 Dec 2021 12:00:00 AM UTC
Category:  System Priority:  * 5 - Normal
Status:  Done Privacy:  Public
Percent Complete:  0% Assigned to:  rwp
Open/Closed:  Closed Effort:  0.00
* Mandatory Fields

Add a New Comment (Rich Markup)

Comment Type & Canned Response:


( Jump to the original submission )

Thu 30 Dec 2021 07:53:23 PM UTC, comment #7: 

Yay!  Thanks for helping! :-)

Bob Proulx <rwp>
Site Administrator
Thu 30 Dec 2021 06:07:09 AM UTC, comment #6: 

Thanks, Bob!

It does indeed seem fixed.  I just got notifications for 34
commits (one test, 33 real) to the groff-commit list.

I greatly appreciate the quick assistance.  Have a happy new year!

G. Branden Robinson <gbranden>
Thu 30 Dec 2021 01:54:50 AM UTC, comment #5: 

I think maybe it is fixed.  Maybe.  The problem is that the hook was a symlink to a shared /usr/src/git_multimail/... directory and that directory did not exist on the new server.  I had missed it in the setup.

I don't have an easy way to test this but once again please let me know if this is still not working. :-(

Bob Proulx <rwp>
Site Administrator
Thu 30 Dec 2021 01:37:40 AM UTC, comment #4: 

Drat!  But that is at least a problem I understand and can fix.  I'll get it sorted out.  Sorry for the trouble.

Bob Proulx <rwp>
Site Administrator
Tue 28 Dec 2021 02:38:19 AM UTC, comment #3: 

Hi Bob,

Thanks for looking into this so quickly.

Unfortunately I am continuing to have trouble.

I have a little bit of experience with Python.
It seems possible to me that a "package trigger" or something
similar is in place to cause root-owned byte-compiled files to
be generated.  But that is speculation.  The immediate trouble is
that the Savannah host now seems to believe that the Python
package (module) required by the hook is not installed at all.

$ git push --set-upstream origin temp-mail-fail
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 4 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 547 bytes | 547.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: Traceback (most recent call last):
remote:   File "hooks/post-receive", line 6, in <module>
remote:     import git_multimail
remote: ImportError: No module named git_multimail
To git.sv.gnu.org:/srv/git/groff.git
 * [new branch]          temp-mail-fail -> temp-mail-fail
Branch 'temp-mail-fail' set up to track remote branch 'temp-mail-fail' from 'origin'.

Please advise.

G. Branden Robinson <gbranden>
Tue 28 Dec 2021 12:30:05 AM UTC, comment #2: 

Thanks for the problem report.  Regardless of the bug tracker confusion.  I think if we were to try to change it that it would only close this one and open another one in the other tracker.

When you started noticing the problem was when the server handling the git service was switched from the old server to the new one.  It's now running on a fully updated Trisquel 9 LTS system.  This resolves other problems such as the SHA1 obsolescence in newer OpenSSH releases.

But the new server has a newer version of Python.  That's the problem seen here.

root@vcs2:~# file /net/vcs/git/groff.git/hooks/git_multimail.pyc
/net/vcs/git/groff.git/hooks/git_multimail.pyc: python 2.6 byte-compiled

root@vcs2:~# ll /net/vcs/git/groff.git/hooks/git_multimail.pyc
-rw-r--r-- 1 root root  79898 Jan 29  2014 /net/vcs/git/groff.git/hooks/git_multimail.pyc

I am not really a python person so it is a mystery to me why that file was byte-compiled.  It sits in a hooks directory that has no write permissions from anyone other than root.  And the file was owned by root.  Therefore someone intentionally byte compiled that file.  Have no idea why.  As it is definitely undesirable in such a situation.

I renamed it out of the way.  Won't Python work okay without having that file byte-compiled?  Because then it won't depend upon the specific version of Python that happens to be installed.  And certainly there will continue to be upgrades in the future.

In addition to the above file I found the following files too.  I similarly moved them all out of the way as well.  Because I assume that each of them would have the same problem.

root@vcs2:/net/vcs/git# find . -name '*.pyc' -ls
-rw-r--r--   1 ksterker adonthell    90447 Jun 22  2017 ./adonthell/adonthell-wastesedge.git/hooks/git_multimail.pyc
-rw-r--r--   1 karl     automake    140163 Jan  6  2020 ./automake.git/hooks/git_multimail.pyc
-rw-r--r--   1 root     root         85815 Apr  6  2019 ./emacs/elpa.git/hooks/git_multimail.pyc

Thanks again for reporting this problem.  It wasn't something I had known about or even thought about.

Bob Proulx <rwp>
Site Administrator
Mon 27 Dec 2021 09:11:30 AM UTC, comment #1: 

Hmm, I'm sorry--I guess this should have been an "sr", but I could only browse support items, and could not locate the control for submitting a new one.  In my confusion, I assumed that submitting a "task" would end up producing an "sr".

G. Branden Robinson <gbranden>
Mon 27 Dec 2021 09:10:09 AM UTC, original submission:  

My last two pushes (over the past few days) have not produced any emails to the groff-commit list.

At the same time, my pushes have produced the following diagnostic output, which may be related.

The repository seems to be updated correctly; it is only the bridge from the repository to the groff-commit list that seems to be having any failure.

$ git push
Enumerating objects: 97, done.
Counting objects: 100% (97/97), done.
Delta compression using up to 4 threads
Compressing objects: 100% (78/78), done.
Writing objects: 100% (78/78), 16.41 KiB | 1.82 MiB/s, done.
Total 78 (delta 62), reused 0 (delta 0)
remote: Traceback (most recent call last):
remote:   File "hooks/post-receive", line 6, in <module>
remote:     import git_multimail
remote: ImportError: Bad magic number in /net/vcs/git/groff.git/hooks/git_multimail.pyc
To git.sv.gnu.org:/srv/git/groff.git
   f7886c566..88fa95b68  master -> master

Please let me know if I can provide any further useful information.

G. Branden Robinson <gbranden>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by rwp (Posted a comment)
  • -email is unavailable- added by gbranden (Submitted the item)

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.





    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2021-12-28 rwp StatusNone Done
        Assigned toNone rwp
        Open/ClosedOpen Closed

    Back to the top

    Powered by Savane 3.9