Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit e5475a8

Browse files
committed
Add "Reason code" prefix to internal SSI error messages
This makes it clearer that the error message is perhaps not supposed to be understood by users, and it also makes it somewhat clearer that it was not accidentally omitted from translation. Idea from Heikki Linnakangas, except that we don't mark "Reason code" for translation at this point, because that would make the implementation too cumbersome.
1 parent 52994e9 commit e5475a8

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

src/backend/storage/lmgr/predicate.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3776,7 +3776,7 @@ CheckForSerializableConflictOut(bool visible, Relation relation,
37763776
ereport(ERROR,
37773777
(errcode(ERRCODE_T_R_SERIALIZATION_FAILURE),
37783778
errmsg("could not serialize access due to read/write dependencies among transactions"),
3779-
errdetail_internal("Canceled on identification as a pivot, during conflict out checking."),
3779+
errdetail_internal("Reason code: Canceled on identification as a pivot, during conflict out checking."),
37803780
errhint("The transaction might succeed if retried.")));
37813781
}
37823782

@@ -3865,15 +3865,15 @@ CheckForSerializableConflictOut(bool visible, Relation relation,
38653865
ereport(ERROR,
38663866
(errcode(ERRCODE_T_R_SERIALIZATION_FAILURE),
38673867
errmsg("could not serialize access due to read/write dependencies among transactions"),
3868-
errdetail_internal("Canceled on conflict out to old pivot %u.", xid),
3868+
errdetail_internal("Reason code: Canceled on conflict out to old pivot %u.", xid),
38693869
errhint("The transaction might succeed if retried.")));
38703870

38713871
if (SxactHasSummaryConflictIn(MySerializableXact)
38723872
|| !SHMQueueEmpty(&MySerializableXact->inConflicts))
38733873
ereport(ERROR,
38743874
(errcode(ERRCODE_T_R_SERIALIZATION_FAILURE),
38753875
errmsg("could not serialize access due to read/write dependencies among transactions"),
3876-
errdetail_internal("Canceled on identification as a pivot, with conflict out to old committed transaction %u.", xid),
3876+
errdetail_internal("Reason code: Canceled on identification as a pivot, with conflict out to old committed transaction %u.", xid),
38773877
errhint("The transaction might succeed if retried.")));
38783878

38793879
MySerializableXact->flags |= SXACT_FLAG_SUMMARY_CONFLICT_OUT;
@@ -3912,7 +3912,7 @@ CheckForSerializableConflictOut(bool visible, Relation relation,
39123912
ereport(ERROR,
39133913
(errcode(ERRCODE_T_R_SERIALIZATION_FAILURE),
39143914
errmsg("could not serialize access due to read/write dependencies among transactions"),
3915-
errdetail_internal("Canceled on conflict out to old pivot."),
3915+
errdetail_internal("Reason code: Canceled on conflict out to old pivot."),
39163916
errhint("The transaction might succeed if retried.")));
39173917
}
39183918
}
@@ -4151,7 +4151,7 @@ CheckForSerializableConflictIn(Relation relation, HeapTuple tuple,
41514151
ereport(ERROR,
41524152
(errcode(ERRCODE_T_R_SERIALIZATION_FAILURE),
41534153
errmsg("could not serialize access due to read/write dependencies among transactions"),
4154-
errdetail_internal("Canceled on identification as a pivot, during conflict in checking."),
4154+
errdetail_internal("Reason code: Canceled on identification as a pivot, during conflict in checking."),
41554155
errhint("The transaction might succeed if retried.")));
41564156

41574157
/*
@@ -4489,7 +4489,7 @@ OnConflict_CheckForSerializationFailure(const SERIALIZABLEXACT *reader,
44894489
ereport(ERROR,
44904490
(errcode(ERRCODE_T_R_SERIALIZATION_FAILURE),
44914491
errmsg("could not serialize access due to read/write dependencies among transactions"),
4492-
errdetail_internal("Canceled on identification as a pivot, during write."),
4492+
errdetail_internal("Reason code: Canceled on identification as a pivot, during write."),
44934493
errhint("The transaction might succeed if retried.")));
44944494
}
44954495
else if (SxactIsPrepared(writer))
@@ -4501,7 +4501,7 @@ OnConflict_CheckForSerializationFailure(const SERIALIZABLEXACT *reader,
45014501
ereport(ERROR,
45024502
(errcode(ERRCODE_T_R_SERIALIZATION_FAILURE),
45034503
errmsg("could not serialize access due to read/write dependencies among transactions"),
4504-
errdetail_internal("Canceled on conflict out to pivot %u, during read.", writer->topXid),
4504+
errdetail_internal("Reason code: Canceled on conflict out to pivot %u, during read.", writer->topXid),
45054505
errhint("The transaction might succeed if retried.")));
45064506
}
45074507
writer->flags |= SXACT_FLAG_DOOMED;
@@ -4543,7 +4543,7 @@ PreCommit_CheckForSerializationFailure(void)
45434543
ereport(ERROR,
45444544
(errcode(ERRCODE_T_R_SERIALIZATION_FAILURE),
45454545
errmsg("could not serialize access due to read/write dependencies among transactions"),
4546-
errdetail_internal("Canceled on identification as a pivot, during commit attempt."),
4546+
errdetail_internal("Reason code: Canceled on identification as a pivot, during commit attempt."),
45474547
errhint("The transaction might succeed if retried.")));
45484548
}
45494549

@@ -4581,7 +4581,7 @@ PreCommit_CheckForSerializationFailure(void)
45814581
ereport(ERROR,
45824582
(errcode(ERRCODE_T_R_SERIALIZATION_FAILURE),
45834583
errmsg("could not serialize access due to read/write dependencies among transactions"),
4584-
errdetail_internal("Canceled on commit attempt with conflict in from prepared pivot."),
4584+
errdetail_internal("Reason code: Canceled on commit attempt with conflict in from prepared pivot."),
45854585
errhint("The transaction might succeed if retried.")));
45864586
}
45874587
nearConflict->sxactOut->flags |= SXACT_FLAG_DOOMED;

0 commit comments

Comments
 (0)