Skip to content

bpo-45502: Fix test_shelve #29003

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Oct 22, 2021
Merged

bpo-45502: Fix test_shelve #29003

merged 1 commit into from
Oct 22, 2021

Conversation

serhiy-storchaka
Copy link
Member

@serhiy-storchaka serhiy-storchaka commented Oct 17, 2021

Run test_shelve with all underlying dbm implementations and pickle protocols.
Also make test_shelve discoverable.

https://bugs.python.org/issue45502

Run test_shelve with all underlying dbm implementations and pickle protocols.
Also make test_shelve discoverable.
@serhiy-storchaka serhiy-storchaka added tests Tests in the Lib/test dir skip news needs backport to 3.9 only security fixes needs backport to 3.10 only security fixes labels Oct 17, 2021
@ambv ambv added the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Oct 19, 2021
@bedevere-bot
Copy link

🤖 New build scheduled with the buildbot fleet by @ambv for commit a5436d9 🤖

If you want to schedule another build, you need to add the ":hammer: test-with-buildbots" label again.

@bedevere-bot bedevere-bot removed the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Oct 19, 2021
@ambv
Copy link
Contributor

ambv commented Oct 20, 2021

Gentoo buildbot failures unrelated per BPO-45436 (now fixed).

Re-running https://buildbot.python.org/all/#/builders/721/builds/50 to see if the segfault is reproducible. Looks related since it's a failure in test_shelve which is the subject of this PR.

@serhiy-storchaka
Copy link
Member Author

Crashed again at same place (in _dbm.dbm.keys()). It is either a bug in the dbm.ndbm module or memory corruption in one of previous tests.

@serhiy-storchaka
Copy link
Member Author

@pablogsal could you please run this test separately?

./python -m test -vuall test_shelve
./python -m test -vuall test_shelve -m TestProto0File_ndbmShelve
./python -m test -vuall test_shelve -m test.test_shelve.TestProto0File_ndbmShelve.test_read

@serhiy-storchaka
Copy link
Member Author

I see that tests on this buildbot are ran with option -x test_dbm test_dbm_ndbm. Seems the dbm.ndbm module is broken on this buildbot.

@pablogsal
Copy link
Member

I see that tests on this buildbot are ran with option -x test_dbm test_dbm_ndbm. Seems the dbm.ndbm module is broken on this buildbot.

This is https://bugs.python.org/issue45289 no? This should be deactivated on the buildbot:

https://github.com/python/buildmaster-config/blob/ec3ba6f4866ccc42d98137c82aba48632bfc03c4/master/custom/factories.py#L406

@serhiy-storchaka
Copy link
Member Author

@ned-deily
Copy link
Member

FWIW, I haven't looked much yet into these crashes but I haven't run into them myself yet. I suspect it's an interaction with the Homebrew-installed gdbm which macOS does not ship with. We also don't include gdbm in the python.org macOS binaries.

@ambv
Copy link
Contributor

ambv commented Oct 22, 2021

Since python/buildmaster-config#293 is landed, this can be merged as well.

@ambv ambv merged commit b781cc3 into python:main Oct 22, 2021
@miss-islington
Copy link
Contributor

Thanks @serhiy-storchaka for the PR, and @ambv for merging it 🌮🎉.. I'm working now to backport this PR to: 3.9, 3.10.
🐍🍒⛏🤖

@miss-islington
Copy link
Contributor

Sorry, @serhiy-storchaka and @ambv, I could not cleanly backport this to 3.10 due to a conflict.
Please backport using cherry_picker on command line.
cherry_picker b781cc3bfce7c052728b06aad9f1a467cced289d 3.10

@miss-islington
Copy link
Contributor

Sorry @serhiy-storchaka and @ambv, I had trouble checking out the 3.9 backport branch.
Please backport using cherry_picker on command line.
cherry_picker b781cc3bfce7c052728b06aad9f1a467cced289d 3.9

@serhiy-storchaka serhiy-storchaka deleted the test_shelve branch October 29, 2021 08:54
serhiy-storchaka added a commit to serhiy-storchaka/cpython that referenced this pull request Oct 29, 2021
Run test_shelve with all underlying dbm implementations and pickle protocols.
Also make test_shelve discoverable..
(cherry picked from commit b781cc3)

Co-authored-by: Serhiy Storchaka <[email protected]>
@bedevere-bot
Copy link

GH-29305 is a backport of this pull request to the 3.10 branch.

@bedevere-bot bedevere-bot removed the needs backport to 3.10 only security fixes label Oct 29, 2021
serhiy-storchaka added a commit that referenced this pull request Oct 29, 2021
Run test_shelve with all underlying dbm implementations and pickle protocols.
Also make test_shelve discoverable.
(cherry picked from commit b781cc3)
serhiy-storchaka added a commit to serhiy-storchaka/cpython that referenced this pull request Oct 29, 2021
)

Run test_shelve with all underlying dbm implementations and pickle protocols.
Also make test_shelve discoverable.
(cherry picked from commit b781cc3).
(cherry picked from commit 6b86702)

Co-authored-by: Serhiy Storchaka <[email protected]>
serhiy-storchaka added a commit that referenced this pull request Oct 29, 2021
Run test_shelve with all underlying dbm implementations and pickle protocols.
Also make test_shelve discoverable.
(cherry picked from commit b781cc3).
(cherry picked from commit 6b86702)
@bedevere-bot
Copy link

⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️

Hi! The buildbot AMD64 Arch Linux Asan 3.9 has failed when building commit a043706.

What do you need to do:

  1. Don't panic.
  2. Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
  3. Go to the page of the buildbot that failed (https://buildbot.python.org/all/#builders/579/builds/244) and take a look at the build logs.
  4. Check if the failure is related to this commit (a043706) or if it is a false positive.
  5. If the failure is related to this commit, please, reflect that on the issue and make a new Pull Request with a fix.

You can take a look at the buildbot page here:

https://buildbot.python.org/all/#builders/579/builds/244

Summary of the results of the build (if available):

Click to see traceback logs
Traceback (most recent call last):
  File "/buildbot/buildarea/3.9.pablogsal-arch-x86_64.asan/build/Lib/multiprocessing/resource_tracker.py", line 201, in main
    cache[rtype].remove(name)
KeyError: '/psm_bbb15bda'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
skip news tests Tests in the Lib/test dir
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants