Skip to content

PS-11910 [DOCS] - Update js_lang docs 9.7 - #835

Open
patrickbirch wants to merge 1 commit into
9.7from
ps-11910-9.7
Open

patrickbirch wants to merge 1 commit into
9.7from
ps-11910-9.7

Conversation

@patrickbirch

@patrickbirch patrickbirch commented Oct 17, 2026 •

Copy link
Copy Markdown
Collaborator
modified:   docs/install-js-lang.md
modified:   docs/js-lang-overview.md
modified:   docs/js-lang-privileges.md
modified:   docs/js-lang-procedures.md
modified:   docs/js-lang-type-conversions.md
modified:   docs/js-lang-variables.md

## Summary
  • Update the js_lang documentation for Percona Server for MySQL 9.7.2 so the install, routine, privilege, variable, type-conversion, and console pages match tested server behavior.

Changes

  • Install: Require the percona-server-js package, with Ubuntu and RHEL install commands. On Ubuntu, the library is installed in /usr/lib/mysql/plugin/, which is the value of plugin_dir. After installation, grant CREATE_JS_ROUTINE, including to root. Document ERROR 1227, ERROR 3529, and ERROR 6000 when reinstalling without a restart.
  • Overview: Show status variables as displayed, such as Js_lang_total_heap_size. Document the JS_GET_MEMORY_USAGE_JSON() members and keys. Parameter names that are reserved words or illegal identifiers fail at CREATE with ERROR 6000 (HY000): SyntaxError: Unexpected token ')'. Add the strict-mode ReferenceError and the unavailable host objects.
  • Privileges: State that CREATE_JS_ROUTINE is global and must be granted ON *.*. A schema-level grant returns ERROR 3619: Illegal privilege level specified.
  • Procedures: End each example with $$;. Add DETERMINISTIC and the ERROR 1418 requirement when binary logging is enabled. Show SELECT f1(2); returning 84 and SELECT @r; returning 42. Use routine_body consistently in the syntax.
  • Variables: Add js_lang.max_console_log_size (default 1048576, minimum 10240, maximum 1073741824) and describe it as a byte limit. Document silent adjustment of out-of-range values. Remove the 10 MB heap claim. A soft-limit failure returns ERROR 6000 (HY000): Memory limit exceeded. and the server keeps running.
  • Type conversions: Replace SHORTINT with SMALLINT. Correct the BIGINT Number range, integer rounding, Boolean storage, JSON arrival types, charset failures, and GEOMETRY input. Split TIME, DATE, and TIMESTAMP/DATETIME behavior. Document strict-mode ERROR 1264, loose-mode clamping, and DECIMAL scale rounding with note 1265. These rules were tested on 9.7.2.
  • Console API: Count js_lang.max_console_log_size in bytes, not messages. List the captured JSON log keys and the plain-log examples for assertions, groups, counters, timers, %o, and %O.

	modified:   docs/install-js-lang.md
	modified:   docs/js-lang-overview.md
	modified:   docs/js-lang-privileges.md
	modified:   docs/js-lang-procedures.md
	modified:   docs/js-lang-type-conversions.md
	modified:   docs/js-lang-variables.md

This branch was successfully deployed

1 active deployment
ps-11910-9.7 - psmysql-docs-9.7 PR #835 — 73de035e Deployed Oct 19, 2026 by alina-derkach-oaza
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants