Skip to content

Commit

Permalink
Adds maxRetries:0 to relevant transform API calls. (#144603)
Browse files Browse the repository at this point in the history
Adds { maxRetries: 0 } to some transform related API calls (esp. preview) to avoid performance problem in case of retries.
  • Loading branch information
walterra committed Nov 7, 2022
1 parent f16c7d7 commit acf3895
Showing 1 changed file with 28 additions and 16 deletions.
44 changes: 28 additions & 16 deletions x-pack/plugins/transform/server/routes/api/transforms.ts
Expand Up @@ -155,10 +155,13 @@ export function registerTransformsRoutes(routeDependencies: RouteDependencies) {
async (ctx, req, res) => {
try {
const esClient = (await ctx.core).elasticsearch.client;
const body = await esClient.asCurrentUser.transform.getTransformStats({
size: 1000,
transform_id: '_all',
});
const body = await esClient.asCurrentUser.transform.getTransformStats(
{
size: 1000,
transform_id: '_all',
},
{ maxRetries: 0 }
);
return res.ok({ body });
} catch (e) {
return res.customError(wrapError(wrapEsError(e)));
Expand All @@ -185,9 +188,12 @@ export function registerTransformsRoutes(routeDependencies: RouteDependencies) {
const { transformId } = req.params;
try {
const esClient = (await ctx.core).elasticsearch.client;
const body = await esClient.asCurrentUser.transform.getTransformStats({
transform_id: transformId,
});
const body = await esClient.asCurrentUser.transform.getTransformStats(
{
transform_id: transformId,
},
{ maxRetries: 0 }
);
return res.ok({ body });
} catch (e) {
return res.customError(wrapError(wrapEsError(e)));
Expand Down Expand Up @@ -452,7 +458,7 @@ export function registerTransformsRoutes(routeDependencies: RouteDependencies) {
license.guardApiRoute(async (ctx, req, res) => {
try {
const esClient = (await ctx.core).elasticsearch.client;
const body = await esClient.asCurrentUser.search(req.body);
const body = await esClient.asCurrentUser.search(req.body, { maxRetries: 0 });
return res.ok({ body });
} catch (e) {
return res.customError(wrapError(wrapEsError(e)));
Expand Down Expand Up @@ -643,16 +649,22 @@ const previewTransformHandler: RequestHandler<
try {
const reqBody = req.body;
const esClient = (await ctx.core).elasticsearch.client;
const body = await esClient.asCurrentUser.transform.previewTransform({
body: reqBody,
});
const body = await esClient.asCurrentUser.transform.previewTransform(
{
body: reqBody,
},
{ maxRetries: 0 }
);
if (isLatestTransform(reqBody)) {
// for the latest transform mappings properties have to be retrieved from the source
const fieldCapsResponse = await esClient.asCurrentUser.fieldCaps({
index: reqBody.source.index,
fields: '*',
include_unmapped: false,
});
const fieldCapsResponse = await esClient.asCurrentUser.fieldCaps(
{
index: reqBody.source.index,
fields: '*',
include_unmapped: false,
},
{ maxRetries: 0 }
);

const fieldNamesSet = new Set(Object.keys(fieldCapsResponse.fields));

Expand Down

0 comments on commit acf3895

Please sign in to comment.