Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn More

View all

Sign in to view all badges

Actions in Project Firefly returning a 503 status code with some weird AWS Lambda error sporadically

Avatar

Avatar
Ignite 1
Level 1
rkishoreindraganti
Level 1

Likes

0 likes

Total Posts

1 post

Correct Reply

0 solutions
Top badges earned
Ignite 1
View profile

Avatar
Ignite 1
Level 1
rkishoreindraganti
Level 1

Likes

0 likes

Total Posts

1 post

Correct Reply

0 solutions
Top badges earned
Ignite 1
View profile
rkishoreindraganti
Level 1

15-04-2021

Hi,

 

I hope you are doing good!

 

We are facing a weird issue in our project firefly app development, in our API layer (using actions here; in node.js) we are trying to establish AEP datasets and issuing some query against the dataset using ODBC strategy (Not HTTP Query Service);

 

On invoking the REST endpoint that I stated above we are getting some weird error with a status code as 503 sporadically (Find the screenshot below).

 

rkishoreindraganti_0-1618496133853.png

 

 

This is being a show stopper to continue our development, we are feeling reluctant to proceed further considering this may be a limitation in the Adobe IO, your suggestions are much appreciated.

 

Please let us know the root cause and solution ASAP.

 

Thanks!

Replies

Avatar

Avatar
Boost 25
Employee
duypnguyen
Employee

Likes

29 likes

Total Posts

163 posts

Correct Reply

31 solutions
Top badges earned
Boost 25
Applaud 5
Give Back 5
Give Back 3
Give Back 10
View profile

Avatar
Boost 25
Employee
duypnguyen
Employee

Likes

29 likes

Total Posts

163 posts

Correct Reply

31 solutions
Top badges earned
Boost 25
Applaud 5
Give Back 5
Give Back 3
Give Back 10
View profile
duypnguyen
Employee

15-04-2021

You can create any action within the project Firefly app, both web action (1 minute timeout) and async (max 30 minutes timeout). Simply run `aio app add action` to add a new one. The important thing is to remove "web: yes" for that action and increase the timeout as you wish. Your manifest.yml should look like:

packages:
  __APP_PACKAGE__:
    license: Apache-2.0
    actions:
      query-dataset:
        function: actions/client/index.js
        web: 'no'
        runtime: 'nodejs:12'
        inputs:
          LOG_LEVEL: debug
        limits:
          timeout: 600000 # 10 minutes
        annotations:
          final: true
      web-action:
        function: actions/caller/index.js
        web: 'yes'
        runtime: 'nodejs:12'
        inputs:
          LOG_LEVEL: debug
        annotations:
          require-adobe-auth: true
          final: true

Then in the "web-action", you call "query-dataset". You can use the openwhisk npm lib to do so: https://www.npmjs.com/package/openwhisk. Example:

const activationId = await ow.actions.invoke({
        name: `your-app-0.0.1/query-dataset`,
        blocking: false,
        result: false,
        params: { name: 'hello' } 
})

Avatar

Avatar
Give Back 5
Level 1
kishoreindraganti
Level 1

Like

1 like

Total Posts

10 posts

Correct Reply

0 solutions
Top badges earned
Give Back 5
Give Back 3
Give Back
Boost 1
View profile

Avatar
Give Back 5
Level 1
kishoreindraganti
Level 1

Like

1 like

Total Posts

10 posts

Correct Reply

0 solutions
Top badges earned
Give Back 5
Give Back 3
Give Back
Boost 1
View profile
kishoreindraganti
Level 1

15-04-2021

@duypnguyen : thanks for all your help, it is much appreciated by our team! We will try to update the framework to accommodate the async flow and will reach you if any blockers that we hit.

Avatar

Avatar
Give Back 5
Level 1
kishoreindraganti
Level 1

Like

1 like

Total Posts

10 posts

Correct Reply

0 solutions
Top badges earned
Give Back 5
Give Back 3
Give Back
Boost 1
View profile

Avatar
Give Back 5
Level 1
kishoreindraganti
Level 1

Like

1 like

Total Posts

10 posts

Correct Reply

0 solutions
Top badges earned
Give Back 5
Give Back 3
Give Back
Boost 1
View profile
kishoreindraganti
Level 1

08-06-2021

@duypnguyen seeing this weird issue "The action produced a response that exceeded the allowed length: 1117055 > 1048576 bytes" , so the openwhisk won't support the response size of greater than 1 mb?

Avatar

Avatar
Boost 25
Employee
duypnguyen
Employee

Likes

29 likes

Total Posts

163 posts

Correct Reply

31 solutions
Top badges earned
Boost 25
Applaud 5
Give Back 5
Give Back 3
Give Back 10
View profile

Avatar
Boost 25
Employee
duypnguyen
Employee

Likes

29 likes

Total Posts

163 posts

Correct Reply

31 solutions
Top badges earned
Boost 25
Applaud 5
Give Back 5
Give Back 3
Give Back 10
View profile
duypnguyen
Employee

09-06-2021

@kishoreindraganti - the payload limit in Runtime is 1MB, more details at: https://www.adobe.io/apis/experienceplatform/runtime/docs.html#!adobedocs/adobeio-runtime/master/gui....

To deliver larger payload you can leverage a cloud storage, for example upload your files to S3 and return a redirect response from your action to the file URL.