René's URL Explorer Experiment


Title: Bug: reserve_jobs=True fails when dj.config.jobs.add_job_metadata = True and dj.config.jobs.keep_completed = True · Issue #1379 · datajoint/datajoint-python · GitHub

Open Graph Title: Bug: reserve_jobs=True fails when dj.config.jobs.add_job_metadata = True and dj.config.jobs.keep_completed = True · Issue #1379 · datajoint/datajoint-python

X Title: Bug: reserve_jobs=True fails when dj.config.jobs.add_job_metadata = True and dj.config.jobs.keep_completed = True · Issue #1379 · datajoint/datajoint-python

Description: Bug Report Description When testing the job metadata functionality i encountered following problem: When setting dj.config.jobs.add_job_metadata = True dj.config.jobs.keep_completed = True i cant run populate with reserve_jobs=True. Repr...

Open Graph Description: Bug Report Description When testing the job metadata functionality i encountered following problem: When setting dj.config.jobs.add_job_metadata = True dj.config.jobs.keep_completed = True i cant r...

X Description: Bug Report Description When testing the job metadata functionality i encountered following problem: When setting dj.config.jobs.add_job_metadata = True dj.config.jobs.keep_completed = True i cant r...

Opengraph URL: https://github.com/datajoint/datajoint-python/issues/1379

X: @github

direct link

Domain: github.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Bug: reserve_jobs=True fails when dj.config.jobs.add_job_metadata = True and dj.config.jobs.keep_completed = True","articleBody":"## Bug Report\n\n### Description\nWhen testing the job metadata functionality i encountered following problem:\nWhen setting\n```\ndj.config.jobs.add_job_metadata = True\ndj.config.jobs.keep_completed = True\n```\ni cant run populate with reserve_jobs=True.\n\n### Reproducibility\n```\nimport datajoint as dj\ndj.config.jobs.add_job_metadata = True\ndj.config.jobs.keep_completed = True\ndj.conn() # using datajoint.json\nschema = dj.Schema(\"TEST_\")\n\n@schema\nclass Numbers(dj.Lookup):\n    definition = \"\"\"\n    number: int64\n    \"\"\"\n    contents = [(0,), (1,), (2,), (4,), (8,)]\n\n@schema\nclass NumbersSquared(dj.Computed):\n    definition = \"\"\"\n    -\u003e Numbers\n    ---\n    squared: int64\n    \"\"\"\n\n    def make(self, key):\n        self.insert1({**key, \"squared\": key[\"number\"] ** 2})\n\nNumbersSquared.populate(reserve_jobs=True)\n```\nFails with: \n```\n---------------------------------------------------------------------------\nDataJointError                            Traceback (most recent call last)\nCell In[2], line 1\n----\u003e 1 NumbersSquared.populate(reserve_jobs=True)\n\nFile ~/datajoint-python/src/datajoint/autopopulate.py:366, in AutoPopulate.populate(self, suppress_errors, return_exception_objects, reserve_jobs, max_calls, display_progress, processes, make_kwargs, priority, refresh, *restrictions)\n    363     raise DataJointError(\"Populate cannot be called during a transaction.\")\n    365 if reserve_jobs:\n--\u003e 366     return self._populate_distributed(\n    367         *restrictions,\n    368         suppress_errors=suppress_errors,\n    369         return_exception_objects=return_exception_objects,\n    370         max_calls=max_calls,\n    371         display_progress=display_progress,\n    372         processes=processes,\n    373         make_kwargs=make_kwargs,\n    374         priority=priority,\n    375         refresh=refresh,\n    376     )\n    377 else:\n    378     return self._populate_direct(\n    379         *restrictions,\n    380         suppress_errors=suppress_errors,\n   (...)    385         make_kwargs=make_kwargs,\n    386     )\n\nFile ~/datajoint-python/src/datajoint/autopopulate.py:490, in AutoPopulate._populate_distributed(self, suppress_errors, return_exception_objects, max_calls, display_progress, processes, make_kwargs, priority, refresh, *restrictions)\n    486     refresh = config.jobs.auto_refresh\n    487 if refresh:\n    488     # Use delay=-1 to ensure jobs are immediately schedulable\n    489     # (avoids race condition with scheduled_time \u003c= CURRENT_TIMESTAMP(3) check)\n--\u003e 490     self.jobs.refresh(*restrictions, priority=priority, delay=-1)\n    492 # Fetch pending jobs ordered by priority (use CURRENT_TIMESTAMP(3) for datetime(3) precision)\n    493 pending_query = self.jobs.pending \u0026 \"scheduled_time \u003c= CURRENT_TIMESTAMP(3)\"\n\nFile ~/datajoint-python/src/datajoint/jobs.py:398, in Job.refresh(self, delay, priority, stale_timeout, orphan_timeout, *restrictions)\n    394 # 2. Re-pend success jobs if keep_completed=True\n    395 if config.jobs.keep_completed:\n    396     # Success jobs whose keys are in key_source but not in target\n    397     # Disable semantic_check for Job table operations\n--\u003e 398     success_to_repend = self.completed.restrict(key_source, semantic_check=False) - self._target\n    399     repend_keys = success_to_repend.keys()\n    400     for key in repend_keys:\n\nFile ~/datajoint-python/src/datajoint/expression.py:282, in QueryExpression.__sub__(self, restriction)\n    276 def __sub__(self, restriction):\n    277     \"\"\"\n    278     Inverted restriction e.g. ``q1 - q2``.\n    279     :return: a restricted copy of the input argument\n    280     See QueryExpression.restrict for more detail.\n    281     \"\"\"\n--\u003e 282     return self.restrict(Not(restriction))\n\nFile ~/datajoint-python/src/datajoint/expression.py:234, in QueryExpression.restrict(self, restriction, semantic_check)\n    232         result._top = restriction\n    233     return result\n--\u003e 234 new_condition = make_condition(self, restriction, attributes, semantic_check=semantic_check)\n    235 if new_condition is True:\n    236     return self  # restriction has no effect, return the same object\n\nFile ~/datajoint-python/src/datajoint/condition.py:403, in make_condition(query_expression, condition, columns, semantic_check)\n    401 # restrict by another expression\n    402 if isinstance(condition, QueryExpression):\n--\u003e 403     assert_join_compatibility(query_expression, condition, semantic_check=semantic_check)\n    404     # Match on all non-hidden namesakes (hidden attributes excluded)\n    405     common_attributes = [q for q in condition.heading.names if q in query_expression.heading.names]\n\nFile ~/datajoint-python/src/datajoint/condition.py:256, in assert_join_compatibility(expr1, expr2, semantic_check)\n    254 # Semantic match requires both lineages to be non-None and equal\n    255 if lineage1 is None or lineage2 is None or lineage1 != lineage2:\n--\u003e 256     raise DataJointError(\n    257         f\"Cannot join on attribute `{name}`: \"\n    258         f\"different lineages ({lineage1} vs {lineage2}). \"\n    259         f\"Use .proj() to rename one of the attributes.\"\n    260     )\n\nDataJointError: Cannot join on attribute `number`: different lineages (TEST_.~~numbers_squared.number vs TEST_.#numbers.number). Use .proj() to rename one of the attributes.\n```\n\nUbuntu 24.04, python 3.12.11\nMySQL - remotely accessed myslq-latest docker (MySQL Server 9.6.0-1.el9)\nDataJoint Version : DataJoint 2.0.0a27\n\n\n","author":{"url":"https://github.com/arturoptophys","@type":"Person","name":"arturoptophys"},"datePublished":"2026-02-05T12:34:15.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":1},"url":"https://github.com/1379/datajoint-python/issues/1379"}

route-pattern/_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format)
route-controllervoltron_issues_fragments
route-actionissue_layout
fetch-noncev2:df419e5d-cd85-5b30-6b37-ea5482991753
current-catalog-service-hash81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114
request-idBC78:315724:4C67ED:664659:6A4DA4FB
html-safe-noncefab0825c6d6d6b0ee5be4a946e0ca53e19a2a32c06ed23d7cfc5f777e557c646
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCQzc4OjMxNTcyNDo0QzY3RUQ6NjY0NjU5OjZBNERBNEZCIiwidmlzaXRvcl9pZCI6Ijg5NjM4OTg5MDM3Nzk3MTQyOTkiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmacbd524299ec9024a5a532b542e843fb4752fa351259fa716d1e1fc607a39a5de6
hovercard-subject-tagissue:3901356664
github-keyboard-shortcutsrepository,issues,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/issues_fragments/issue_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/datajoint/datajoint-python/1379/issue_layout
twitter:imagehttps://opengraph.githubassets.com/8e20b1004457ed27cf5513d966aafa8dac5cd4b0c0ce7311e9da1414fe1f9b4a/datajoint/datajoint-python/issues/1379
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/8e20b1004457ed27cf5513d966aafa8dac5cd4b0c0ce7311e9da1414fe1f9b4a/datajoint/datajoint-python/issues/1379
og:image:altBug Report Description When testing the job metadata functionality i encountered following problem: When setting dj.config.jobs.add_job_metadata = True dj.config.jobs.keep_completed = True i cant r...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamearturoptophys
hostnamegithub.com
expected-hostnamegithub.com
None06b8a6144231bf3a234f1c2e9993861e07ce98a905912b114aa386c2d7e84b33
turbo-cache-controlno-preview
go-importgithub.com/datajoint/datajoint-python git https://github.com/datajoint/datajoint-python.git
octolytics-dimension-user_id2375501
octolytics-dimension-user_logindatajoint
octolytics-dimension-repository_id5866704
octolytics-dimension-repository_nwodatajoint/datajoint-python
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id5866704
octolytics-dimension-repository_network_root_nwodatajoint/datajoint-python
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release7f13faa65cccc9b729d674da83335d5dcfdfd193
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/datajoint/datajoint-python/issues/1379#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fdatajoint%2Fdatajoint-python%2Fissues%2F1379
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fdatajoint%2Fdatajoint-python%2Fissues%2F1379
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=datajoint%2Fdatajoint-python
Reloadhttps://github.com/datajoint/datajoint-python/issues/1379
Reloadhttps://github.com/datajoint/datajoint-python/issues/1379
Reloadhttps://github.com/datajoint/datajoint-python/issues/1379
Please reload this pagehttps://github.com/datajoint/datajoint-python/issues/1379
datajoint https://github.com/datajoint
datajoint-pythonhttps://github.com/datajoint/datajoint-python
Notifications https://github.com/login?return_to=%2Fdatajoint%2Fdatajoint-python
Fork 96 https://github.com/login?return_to=%2Fdatajoint%2Fdatajoint-python
Star 194 https://github.com/login?return_to=%2Fdatajoint%2Fdatajoint-python
Code https://github.com/datajoint/datajoint-python
Issues 7 https://github.com/datajoint/datajoint-python/issues
Pull requests 4 https://github.com/datajoint/datajoint-python/pulls
Discussions https://github.com/datajoint/datajoint-python/discussions
Actions https://github.com/datajoint/datajoint-python/actions
Security and quality 0 https://github.com/datajoint/datajoint-python/security
Insights https://github.com/datajoint/datajoint-python/pulse
Code https://github.com/datajoint/datajoint-python
Issues https://github.com/datajoint/datajoint-python/issues
Pull requests https://github.com/datajoint/datajoint-python/pulls
Discussions https://github.com/datajoint/datajoint-python/discussions
Actions https://github.com/datajoint/datajoint-python/actions
Security and quality https://github.com/datajoint/datajoint-python/security
Insights https://github.com/datajoint/datajoint-python/pulse
Bug: reserve_jobs=True fails when dj.config.jobs.add_job_metadata = True and dj.config.jobs.keep_completed = Truehttps://github.com/datajoint/datajoint-python/issues/1379#top
bugIndicates an unexpected problem or unintended behaviorhttps://github.com/datajoint/datajoint-python/issues?q=state%3Aopen%20label%3A%22bug%22
triageIndicates issues, pull requests, or discussions need to be reviewed for the first timehttps://github.com/datajoint/datajoint-python/issues?q=state%3Aopen%20label%3A%22triage%22
https://github.com/arturoptophys
arturoptophyshttps://github.com/arturoptophys
on Feb 5, 2026https://github.com/datajoint/datajoint-python/issues/1379#issue-3901356664
bugIndicates an unexpected problem or unintended behaviorhttps://github.com/datajoint/datajoint-python/issues?q=state%3Aopen%20label%3A%22bug%22
triageIndicates issues, pull requests, or discussions need to be reviewed for the first timehttps://github.com/datajoint/datajoint-python/issues?q=state%3Aopen%20label%3A%22triage%22
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.