Ah! -- Thank you so much for the prompt and helpful reply Robert.
I have not had this problem on previous projects, so obviously this was something to do with my table structure causing recursion. I looked again at the design. The salient difference from other cases is: I had a table (A) with two child tables (B, and C); table A had an integer PK; both tables B, and C had a 2-part composite PK one element of which was a FK to table A.
I decided to change the table structure so that tables B and C have a simple integer identity PK column, and the columns in tables B and C that originally formed the PK become a unique index.
Bingo! It works. No more deep recursion.
Any idea why my original structure would cause this problem?