Overcast is alpha — behaviour and APIs may change between releases. Pin your version and read the changelog before upgrading.

overcast

Athena — Amazon Athena

Athena's control plane — workgroups, query executions and tags. Queries are recorded and reported SUCCEEDED without running, so every result set comes back empty.

Athena’s control plane is emulated; no SQL is executed, so every query succeeds immediately with an empty result set.

Status: ⚠️ Partial

Quick start

export AWS_ENDPOINT_URL=http://localhost:4566

aws athena create-work-group --name analytics
aws athena start-query-execution \
  --work-group analytics \
  --query-string 'SELECT 1' \
  --result-configuration OutputLocation=s3://results/

aws athena get-query-execution --query-execution-id <id>
# Status.State is already SUCCEEDED

Any credentials work; with none configured, run eval "$(overcast env)" first — see Using AWS SDKs and CLI.

What works

AreaBehaviour
WorkgroupsCreate, get, list, delete; Configuration is stored and handed back verbatim
Query executionsStartQueryExecution records the SQL, workgroup and OutputLocation and returns an id
PollingGetQueryExecution reports SUCCEEDED, with submission and completion timestamps
ResultsGetQueryResults returns a well-formed but empty ResultSet
StoppingStopQueryExecution accepts a known query id and rejects an unknown one
TagsTagResource, UntagResource and ListTagsForResource on workgroup ARNs

Differences from AWS

AreaOn AWSOvercast
Query executionThe SQL is parsed and runThe string is stored, never parsed or run — a query over a Glue table returns nothing, not that table’s rows
ResultsWritten to OutputLocationNothing is written; the bucket stays empty
Execution statesQUEUED, RUNNING, FAILED and CANCELLEDNone of them is ever observed
Stopping a queryStopQueryExecution interrupts a running queryEvery query has already finished, so a stop is accepted and changes nothing
StatisticsStatistics, EngineVersion and data-scanned figuresAbsent
Workgroup configurationResult-location overrides and bytes-scanned cutoffs are enforcedEchoed, not enforced

Gotchas

Note

A stack that provisions workgroups deploys, and code calling StartQueryExecution gets an id-shaped answer it can poll. Any assertion about the rows that come back needs real Athena.

Operations

All 12 listed operations are implemented. Per-operation status, notes and AWS API links: Athena operations.