Understand browser request identity and state
Coordinator DB HTTP SQL requests each have a separate logical session. A later browser request does not inherit an earlier request's transaction or temporary tables. Roles and SET ROLE are unavailable, so there is no role selection to persist between browser tabs or requests.
Determine the identity from authentication, not from a previous SQL command. An HTTP request uses its configured Basic credentials or Bearer key. If Authorization is absent, the server attempts an explicitly configured empty-password default account. Invalid explicit credentials never fall back to it.
To check recorded identities for recent requests:
SELECT query_id, user, interface, query_kind
FROM system.query_log
WHERE type = 'QueryFinish'
ORDER BY event_time DESC
LIMIT 10;Use the response query ID to identify the exact browser request; a recent row could belong to another caller. For transaction work, place BEGIN, every related statement and COMMIT in the same HTTP request. An unclosed transaction rolls back before its response is sent.
Choose a stateful native connection when a task requires a transaction spanning several interactive submissions.
See HTTP request state, native sessions and transactions.