Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to enable lambda_sync/lambda_async functions in Aurora

When I attempt to grant the INVOKE LAMBDA privileges on my user it fails with a syntax error:

mysql> GRANT INVOKE LAMBDA ON mydb.* TO 'myuser'@'myaddress';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INVOKE LAMBDA ON mydb.* TO 'myuser'@'myaddress'' at line 1

The lambda_sync and lambda_async functions are also not defined:

mysql> select lambda_sync("arn:aws:lambda:ap-southeast-1:xxxxxxxxxxx:function:MyLambda", '{"operation":"ping"}');
ERROR 1305 (42000): FUNCTION mydb.lambda_sync does not exist

I've also tried using mysql.lambda_sync/mysql.lambda_async here.

According to the docs, these functions should be native to my version of aurora.

You can call the native functions lambda_sync and lambda_async when you use Aurora MySQL version 1.16 and later.

mysql> select AURORA_VERSION();
+------------------+
| AURORA_VERSION() |
+------------------+
| 2.01.1           |
+------------------+
1 row in set (0.10 sec)

The lambda_sync and lambda_async functions are built-in, native functions that invoke a Lambda function synchronously or asynchronously.

I've gone through the documentation, created an aurora instance using mysql 5.7 compatibility, creating a role on my db cluster with the lambda invoke permissions, and done half a dozen other things suggested in the docs. What am I missing?

like image 542
functionvoid Avatar asked Sep 17 '25 11:09

functionvoid


1 Answers

Currently, Aurora MySQL 2.01 does not support features added in Aurora MySQL version 1.16 and later.

https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/AuroraMySQL.Updates.20180206.html

Aurora/MySQL 2.x is not a "later" version than Aurora/MySQL 1.x... they're two different release families. The native Lambda invocation functions are not available in 2.x (yet).

like image 99
Michael - sqlbot Avatar answered Sep 20 '25 05:09

Michael - sqlbot