Commit 76fa8151 authored by Andrei Mihu's avatar Andrei Mihu
Browse files

Improved error handling in Lua runtime custom SQL function calls.

parent 14677e0a
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -4,6 +4,8 @@ All notable changes to this project are documented below.
The format is based on [keep a changelog](http://keepachangelog.com) and this project uses [semantic versioning](http://semver.org).

## [Unreleased]
### Changed
- Improved error handling in Lua runtime custom SQL function calls.

## [2.1.2] - 2018-10-25
### Added
+12 −2
Original line number Diff line number Diff line
@@ -494,7 +494,12 @@ func (n *RuntimeLuaNakamaModule) sqlExec(l *lua.LState) int {
		}
	}

	result, err := n.db.ExecContext(l.Context(), query, params...)
	var result sql.Result
	var err error
	err = ExecuteRetryable(func() error {
		result, err = n.db.ExecContext(l.Context(), query, params...)
		return err
	})
	if err != nil {
		l.RaiseError("sql exec error: %v", err.Error())
		return 0
@@ -526,7 +531,12 @@ func (n *RuntimeLuaNakamaModule) sqlQuery(l *lua.LState) int {
		}
	}

	rows, err := n.db.QueryContext(l.Context(), query, params...)
	var rows *sql.Rows
	var err error
	err = ExecuteRetryable(func() error {
		rows, err = n.db.QueryContext(l.Context(), query, params...)
		return err
	})
	if err != nil {
		l.RaiseError("sql query error: %v", err.Error())
		return 0