Skip to content

Conversation

tomascohen
Copy link

My attempt to do something useful for the project.

DBIx-Class incorrectly warns about missing primary key values when using
scalar references for database functions. This test reproduces the issue
where scalar references like \'ABS(RANDOM())' trigger 'Missing value for
primary key' warnings even though they represent valid database function calls.

The test demonstrates:
- Scalar references should NOT trigger missing PK warnings (currently fails)
- Truly missing PKs should still warn correctly (works)
- Explicit values should not warn (works)
DBIx-Class incorrectly warned about missing primary key values when using
scalar references for database functions like \'UUID()'. The warning logic
only tracked auto-increment columns but was triggered for non-auto-increment
primary keys that weren't properly detected as supplied.

Add tracking for any supplied primary key column using the same logic that
determines literal values, ensuring scalar references are recognized as
supplied values and don't trigger spurious warnings.
@tomascohen tomascohen changed the title Rt 169546 RT 169546 Sep 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant