Skip to content

Commit f6c21fe

Browse files
committed
fix: handle rollback error
1 parent a37ef67 commit f6c21fe

File tree

3 files changed

+17
-9
lines changed

3 files changed

+17
-9
lines changed

src/app.ts

+17-3
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,23 @@ GenerateDoc(app)
4040
// Initial Route
4141
app.use(indexRouter)
4242

43-
app.use(ExpressErrorYup)
44-
app.use(ExpressErrorSequelize)
45-
app.use(ExpressErrorResponse)
43+
async function handleRollbackTransaction(
44+
err: any,
45+
req: Request,
46+
res: Response,
47+
next: NextFunction
48+
) {
49+
try {
50+
await req.rollbackTransactions()
51+
// eslint-disable-next-line no-empty
52+
} catch (e) {}
53+
next(err)
54+
}
55+
56+
app.use('/v1', handleRollbackTransaction)
57+
app.use('/v1', ExpressErrorYup)
58+
app.use('/v1', ExpressErrorSequelize)
59+
app.use('/v1', ExpressErrorResponse)
4660

4761
// catch 404 and forward to error handler
4862
app.use(function (req: Request, res: Response, next: NextFunction) {

src/middlewares/ExpressErrorResponse.ts

-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ async function ExpressErrorResponse(
1717
.status(err.statusCode)
1818
.json(generateErrorResponseError(err, err.statusCode))
1919
}
20-
2120
next(err)
2221
}
2322

src/middlewares/ExpressErrorSequelize.ts

-5
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,6 @@ async function ExpressErrorSequelize(
1212
res: Response,
1313
next: NextFunction
1414
) {
15-
try {
16-
await req.rollbackTransactions()
17-
// eslint-disable-next-line no-empty
18-
} catch (e) {}
19-
2015
if (err instanceof BaseError) {
2116
if (err instanceof EmptyResultError) {
2217
return res.status(404).json({

0 commit comments

Comments
 (0)