- Lane kind:
driver - Current state:
baseline_complete - Best-in-class benchmark:
libpqxx - Authoritative lane spec:
docs/specifications/drivers/language/cpp/SPECIFICATION.md - Shared release evidence templates:
docs/development/release-evidence/README.md - Later verification packet:
docs/development/server-verification/cpp.md - Remaining gap summary: No lane-local JDBC/.NET-class baseline gaps remain. Remaining work is live proof collection and release evidence staging.
scratchbird/client/scratchbird_client.hscratchbird/client/connection.hscratchbird/client/pool.hscratchbird/client/pipeline.h
Connection and execution:
sb_connect,sb_disconnectsb_execute,sb_querysb_prepare,sb_bind_index,sb_bind_name,sb_execute_preparedsb_cancel,sb_set_option,sb_ping,sb_is_healthy
Result handling:
sb_fetch,sb_result_free,sb_rows_affectedsb_column_count,sb_get_column_metasb_value_get,sb_get_int64,sb_get_stringsb_memory_free
Transactions and savepoints:
sb_tx_begin,sb_tx_begin_exsb_tx_commit,sb_tx_rollbacksb_tx_savepoint,sb_tx_release_savepoint,sb_tx_rollback_to
Metadata and schema payloads:
sb_metadata_querysb_metadata_schema_payload
Notifications:
sb_subscribe,sb_unsubscribesb_listen,sb_unlisten,sb_unlisten_allsb_notify_channelsb_poll_notifications,sb_notification_countsb_get_notification,sb_get_notifications,sb_clear_notificationssb_add_notification_listener,sb_remove_notification_listener
Diagnostics and telemetry:
sb_get_diagnostics_jsonsb_get_telemetry_summary_json,sb_reset_telemetrysb_get_slow_operations_json,sb_export_telemetry_prometheussb_get_circuit_breaker_summary_jsonsb_get_keepalive_summary_jsonsb_get_leak_summary_json
Protocol extensions:
sb_stream_controlsb_attach_create,sb_attach_detach,sb_attach_listsb_execute_sblr
Namespace: scratchbird::client
ConnectionConfigConnectionPreparedStatementResultSetConnectionPoolConnectionLease
Connection provides:
connect(...),disconnect(),isConnected(),getState()executeQuery(...),execute(...)prepare(...)metadataQuery(...),schemas(...),tables(...),columns(...),indexes(...),metadataSchemaPayload(...)beginTransaction(),commit(),rollback()savepoint(),releaseSavepoint(),rollbackTo()setAutoCommit(),getAutoCommit(),inTransaction()
Connection-config helpers:
parseConnectionConfig(...)parses URI/key-value DSNs into the publicConnectionConfigsurface, including listener-bound manager-proxy, schema, role, TLS, and compression options.
PreparedStatement provides:
- typed setters mirroring the network prepared-statement surface
executeQuery(...)execute(...)
In pool.h:
sb_pool_create,sb_pool_destroysb_pool_acquire,sb_pool_release,sb_pool_get_statssb_query_with_retry,sb_execute_with_retrysb_batch_execute,sb_bulk_insertsb_stmt_cache_create,sb_stmt_cache_get,sb_stmt_cache_clear
C++ pooling helpers:
ConnectionPool::open(...),close(),stats(),acquire()ConnectionLease::query(...),execute(...),raw(),reset()
In pipeline.h:
- C API:
sb_pipeline_create,sb_pipeline_start,sb_pipeline_flush,sb_pipeline_pending_count,sb_pipeline_has_capacity,sb_pipeline_stop - C++ API:
scratchbird::client::Pipeline
Core value containers:
sb_error,sb_value,sb_column_meta,sb_txn_optionssb_typeincludes scalar, temporal, JSON/JSONB, geometry, range, array, composite, vector, and network types.ResultSetcolumn metadata now carries mappedsb_type,type_oid, binary/text format, and nullability.
Errors map to SQLSTATE codes per DRIVER_ERROR_MAPPING.md.