Commit 94315ce
authored
fix(spanner): fail fast when inline-begin DML returns no transaction id (#13536)
Sync executeUpdate/executeBatchUpdate and async batchUpdateAsync left
transactionIdFuture unresolved when a begin-requesting DML response
carried no transaction metadata, so commit blocked on the 60s wait and
surfaced DEADLINE_EXCEEDED. Mirror executeUpdateAsync: raise
FAILED_PRECONDITION via onError so the future resolves and the
transaction retries or propagates. Use getId().isEmpty() consistently
and add regression coverage via a mock omit-transaction hook.1 parent 0806ab6 commit 94315ce
3 files changed
Lines changed: 70 additions & 37 deletions
File tree
- java-spanner/google-cloud-spanner/src
- main/java/com/google/cloud/spanner
- test/java/com/google/cloud/spanner
Lines changed: 28 additions & 10 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
| 52 | + | |
52 | 53 | | |
53 | 54 | | |
54 | 55 | | |
| |||
742 | 743 | | |
743 | 744 | | |
744 | 745 | | |
745 | | - | |
| 746 | + | |
746 | 747 | | |
747 | 748 | | |
748 | 749 | | |
| |||
757 | 758 | | |
758 | 759 | | |
759 | 760 | | |
| 761 | + | |
| 762 | + | |
| 763 | + | |
| 764 | + | |
| 765 | + | |
| 766 | + | |
| 767 | + | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
| 771 | + | |
| 772 | + | |
760 | 773 | | |
761 | 774 | | |
762 | 775 | | |
| |||
980 | 993 | | |
981 | 994 | | |
982 | 995 | | |
983 | | - | |
| 996 | + | |
| 997 | + | |
984 | 998 | | |
985 | 999 | | |
986 | 1000 | | |
987 | 1001 | | |
988 | 1002 | | |
989 | 1003 | | |
990 | 1004 | | |
| 1005 | + | |
991 | 1006 | | |
992 | 1007 | | |
993 | 1008 | | |
| |||
1037 | 1052 | | |
1038 | 1053 | | |
1039 | 1054 | | |
1040 | | - | |
1041 | | - | |
1042 | | - | |
1043 | | - | |
1044 | | - | |
1045 | | - | |
| 1055 | + | |
| 1056 | + | |
1046 | 1057 | | |
1047 | 1058 | | |
1048 | 1059 | | |
| |||
1116 | 1127 | | |
1117 | 1128 | | |
1118 | 1129 | | |
| 1130 | + | |
1119 | 1131 | | |
1120 | 1132 | | |
1121 | | - | |
| 1133 | + | |
| 1134 | + | |
1122 | 1135 | | |
1123 | 1136 | | |
1124 | 1137 | | |
| |||
1139 | 1152 | | |
1140 | 1153 | | |
1141 | 1154 | | |
| 1155 | + | |
1142 | 1156 | | |
1143 | 1157 | | |
1144 | 1158 | | |
| |||
1187 | 1201 | | |
1188 | 1202 | | |
1189 | 1203 | | |
| 1204 | + | |
1190 | 1205 | | |
1191 | 1206 | | |
1192 | | - | |
| 1207 | + | |
| 1208 | + | |
1193 | 1209 | | |
1194 | 1210 | | |
1195 | 1211 | | |
| |||
1208 | 1224 | | |
1209 | 1225 | | |
1210 | 1226 | | |
| 1227 | + | |
| 1228 | + | |
1211 | 1229 | | |
1212 | 1230 | | |
1213 | 1231 | | |
| |||
Lines changed: 21 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1677 | 1677 | | |
1678 | 1678 | | |
1679 | 1679 | | |
| 1680 | + | |
| 1681 | + | |
| 1682 | + | |
| 1683 | + | |
1680 | 1684 | | |
1681 | 1685 | | |
1682 | 1686 | | |
| |||
1738 | 1742 | | |
1739 | 1743 | | |
1740 | 1744 | | |
1741 | | - | |
| 1745 | + | |
| 1746 | + | |
| 1747 | + | |
| 1748 | + | |
| 1749 | + | |
1742 | 1750 | | |
1743 | 1751 | | |
1744 | 1752 | | |
| |||
1760 | 1768 | | |
1761 | 1769 | | |
1762 | 1770 | | |
| 1771 | + | |
1763 | 1772 | | |
1764 | 1773 | | |
1765 | 1774 | | |
| |||
1831 | 1840 | | |
1832 | 1841 | | |
1833 | 1842 | | |
1834 | | - | |
1835 | | - | |
1836 | | - | |
| 1843 | + | |
| 1844 | + | |
| 1845 | + | |
| 1846 | + | |
| 1847 | + | |
1837 | 1848 | | |
1838 | 1849 | | |
1839 | 1850 | | |
| |||
1854 | 1865 | | |
1855 | 1866 | | |
1856 | 1867 | | |
1857 | | - | |
1858 | | - | |
1859 | | - | |
1860 | | - | |
| 1868 | + | |
| 1869 | + | |
| 1870 | + | |
| 1871 | + | |
| 1872 | + | |
| 1873 | + | |
1861 | 1874 | | |
1862 | 1875 | | |
1863 | 1876 | | |
| |||
Lines changed: 21 additions & 19 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
813 | 813 | | |
814 | 814 | | |
815 | 815 | | |
| 816 | + | |
| 817 | + | |
| 818 | + | |
| 819 | + | |
816 | 820 | | |
817 | 821 | | |
818 | 822 | | |
| |||
1100 | 1104 | | |
1101 | 1105 | | |
1102 | 1106 | | |
1103 | | - | |
1104 | | - | |
1105 | | - | |
1106 | | - | |
1107 | | - | |
1108 | | - | |
| 1107 | + | |
| 1108 | + | |
| 1109 | + | |
| 1110 | + | |
| 1111 | + | |
| 1112 | + | |
1109 | 1113 | | |
1110 | 1114 | | |
1111 | 1115 | | |
| |||
1131 | 1135 | | |
1132 | 1136 | | |
1133 | 1137 | | |
1134 | | - | |
1135 | | - | |
1136 | | - | |
1137 | | - | |
1138 | | - | |
1139 | | - | |
1140 | | - | |
| 1138 | + | |
| 1139 | + | |
| 1140 | + | |
| 1141 | + | |
| 1142 | + | |
| 1143 | + | |
1141 | 1144 | | |
1142 | 1145 | | |
1143 | 1146 | | |
| |||
1234 | 1237 | | |
1235 | 1238 | | |
1236 | 1239 | | |
1237 | | - | |
1238 | | - | |
1239 | | - | |
1240 | | - | |
1241 | | - | |
1242 | | - | |
| 1240 | + | |
| 1241 | + | |
| 1242 | + | |
| 1243 | + | |
| 1244 | + | |
1243 | 1245 | | |
1244 | 1246 | | |
1245 | 1247 | | |
| |||
0 commit comments